Back to Top

Website Forms 101: The Various Types, Where to Put them, and How to Make Them Effective

Website forms are essential for your inbound marketing strategy. Used strategically, they can turn a regular site visitor into a lead you can nurture and eventually convert to a customer. And if you’re one of the 63 percent of businesses that report generating traffic and leads as their biggest marketing challenge, you’d be hard-pressed to…

The post Website Forms 101: The Various Types, Where to Put them, and How to Make Them Effective appeared first on Benchmarkemail.

Reblogged 1 year ago from

Four Best-Practices for Responsive Search Ads [Infographic]

Google’s responsive search ads (RSAs) enable advertisers to create multiple copy options and then let machine-learning and AI determine the best-performing combinations. How can marketers make the most of this powerful format? Read the full article at MarketingProfs

Reblogged 1 year ago from

How COVID-19 Transformed Sales and B2B Content Marketing–and Five Ways to Adapt

The pandemic has significantly changed the way B2B buyers and sellers do business. To adapt to the new B2B sales and marketing world, adopt these five strategies. Read the full article at MarketingProfs

Reblogged 1 year ago from

The Google product reviews update was big, just not big for everyone; Wednesday’s daily brief

And, no, tCPA and tROAS aren’t going away.

Please visit Search Engine Land for the full article.

Reblogged 1 year ago from

Diagnosing a traffic drop? Just breathe!

30-second summary:

  • A traffic drop doesn’t necessarily mean something is wrong – in most cases, it is natural
  • All sites have experienced a decline in traffic throughout their lifetime which can be explained by seasonality, loss of PPC budget, and many other factors
  • When it comes to organic search traffic decline, it is often caused by stagnant content, the emergence of new competitors, or loss of backlinks
  • To diagnose a traffic drop, identify which traffic source is declining, then find which pages have lost traffic
  • It is important to avoid hasty decisions, take your time exploring whether you lost any positions and which pages replaced yours
  • Try to evaluate why this shift has happened and how you may fix it

Have you ever checked your analytics and saw a sudden or gradual organic traffic drop? Who hasn’t? If there’s one common thing in just about any marketing strategy: All of us have dealt with organic traffic decrease on many occasions. Any website out there has seen traffic dips, often even regularly.

How to deal with an organic traffic drop when you see something like this inside your Google Analytics?

Source: Screenshot made by the author (April, 2021)

Here are four well-defined steps to take when diagnosing a traffic drop:

Step 1: Check which traffic source was effected

This is an obvious one but too many people automatically assume it’s Google organic traffic that has dropped.

So make sure it hasn’t been PPC traffic that has exhausted your budget. This happens more than you think!

So assuming, it is an organic traffic drop, let’s go on checking:

Step 2: Which page has dropped?

To quickly find out which pages dropped, navigate to your Google Analytics account Acquisition -> All Traffic -> Channels. Click “Organic” there and in the date range, check “Compare to” and in the drop-down select “Previous period”:

comparing website traffic over timeSource: Screenshot made by the author (April, 2021)

Now scroll down and click the “Landing pages” tab to see all your pages and how their traffic of this week compares to the previous week.

landing pages and website traffic drop analysis

Source: Screenshot made by the author (April, 2021)

No need to scroll a lot here. If you see a traffic dip, chances are, your higher-ranking page or pages were affected. So look at the top of the list.

Now, most importantly, if all your pages took a hit, that’s a good reason to worry. This may be an indicator of a site being affected by a recent Google Update or even a penalty (the latter is much less common these days). This article lists a few good ways to research whether there was an update and how to evaluate whether you may have been affected.

A more common scenario is that you will see some pages dropping. Others will remain intact or even start gaining in traffic. This is a good indicator you shouldn’t be worried about any possible action from Google. Most pages go up and down search engine result pages all the time. 

Now, you grab the list of declining URLs and research them further.

Step 3: Was there any impact on rankings?

It is not such a rare thing: We see a gradual decline in traffic without any obvious impact on rankings. This can be explained by two possible reasons:

  • People just don’t search for that query that much anymore. This was very common in 2020 when searching patterns shifted dramatically. And this can still be the case for seasonal queries (think “costumes,” “ski gear”, “swimsuits,” etc.)
  • Search engine result pages have added a new search element that steals attention and clicks.

So how do you diagnose if your rankings drop?

This question is harder to answer these days. If you are monitoring your rankings, an obvious step here would be to go check there. 

Google’s Search Console is another platform to check but it is not easy to quickly diagnose the ranking drop there. The tool is a little behind in showing data. Still, if you give it some time, you can analyze your rankings thereby using “Compare” tab within the “Performance” section of the reports:

Search console comparison

Source: Screenshot made by the author (April, 2021)

Once you choose your date range, scroll down to your data and filter it by the “Position difference” column.

Mind that all you need to note here is lost or declined first-page ranking because your second-page rankings wouldn’t have driven traffic to lose anyway. So again, breathe.

Source: Screenshot made by the author (April, 2021)

Instead, you can filter Search Console data by “Previous positions” to see, for example, lost #1 rankings:

Source: Screenshot made by the author (April, 2021)

Another – probably smarter – way to diagnose hit queries is to judge by traffic. Search console shows the number of clicks each query is sending and how it compares to what it used to send. If Google is not the only search engine you are concerned about, using Finteza you can spot search queries that are sending less traffic than they used to:

Finteza search

Source: Screenshot made by the author (April, 2021)

Finteza’s default search keyword report consolidates data from all search engines you appear in. You do need it running for some time to accumulate this data. It is easy to integrate.

Finteza is paid (costs  $25 per 100,000 unique users a month) but it is the only web analytics solution that still offers reliable keyword data.

For a better understanding of what is going with your organic traffic, I suggest using all of the above (and more) methods. Again, with search personalization and localization, it is very hard to understand where you are gaining (or losing) from, so combining data from multiple sources is the key.

Step 4: Identify why these ranking dropped

Here comes another tedious part in our analysis. More often than not, your rankings may fluctuate or drop due to Google finding a better page to rank. This may happen because:

  • Your query deserves freshness and there is a fresher page that was boosted on top of yours. If this is the case, you’d have got used to fluctuations by now.
  • Your competitor created a better page that has better backlinks.
  • You have lost some important backlinks which has led to losing some equity

Your position monitoring solution may give you some clues as to which page has overcome you in SERPs. Most rank monitoring platforms come with “SERP tracking” feature that grabs a snapshot of your important SERPs on a regular basis.

You can monitor your target SERP movements for you, for example:

Rating website visibilitySource: SE Ranking

For high-search-volume queries, SpyFu is keeping a record of key SERP movements:

Image source: Spyfu

To make it easy to spot your lost backlinks that may have accounted for declined positions, use link monitoring tools. They keep a record of when exactly each link was lost, and so make it easy for you to evaluate if this is what may have had an impact on your rankings and organic traffic:


When you know which page is replacing you in search results, try to find why. There can be an array of reasons, including the most common ones (as well as the combination of such): 


Keeping your traffic in control is beyond your powers. What you can do is to keep an eye (building a dashboard would make it easier and more consistent) as well as create a well-set routine for analyzing a possible dip.

When you see organic traffic decline or dip, it doesn’t usually mean that your site is under any kind of filter or penalty (which is most often assumed). In most cases, this is a perfectly natural ongoing SERP fluctuation. Stay calm and carefully analyze what has changed (and why). Don’t rush to take any action or fix anything until you check various data sources and take time to come up with a strategic plan. And most importantly: Just breathe!

Ann Smarty is the Brand and Community manager at She can be found on Twitter @seosmarty.

The post Diagnosing a traffic drop? Just breathe! appeared first on Search Engine Watch.

Reblogged 1 year ago from

A Complete Guide To Incremental Static Regeneration (ISR) With Next.js

A year ago, Next.js 9.3 released support for Static Site Generation (SSG) making it the first hybrid framework. I’d been a happy Next.js user for about a few years at this point, but this release made Next.js my new default solution. After working with Next.js extensively, I joined Vercel to help companies like Tripadvisor and Washington Post as they adopt and scale Next.js.

In this article, I’d like to explore a new evolution of the Jamstack: Incremental Static Regeneration (ISR). Below you’ll find a guide to ISR — including use cases, demos and tradeoffs.

The Problem with Static-Site Generation

The idea behind the Jamstack is appealing: pre-rendered static pages which can be pushed to a CDN and globally available in seconds. Static content is fast, resilient to downtime, and immediately indexed by crawlers. But there are some issues.

If you’ve adopted the Jamstack architecture while building a large-scale static site, you might be stuck waiting hours for your site to build. If you double the number of pages, the build time also doubles. Let’s consider Is it possible to statically generate millions of products with every deployment?

Even if every page was statically generated in an unrealistic 1ms, it would still take hours to rebuild the entire site. For large web applications, choosing complete static-site generation is a non-starter. Large-scale teams need a more flexible, personalized, hybrid solution.

Content Management Systems (CMS)

For many teams, their site’s content is decoupled from the code. Using a Headless CMS allows content editors to publish changes without involving a developer. However, with traditional static sites, this process can be slow.

Consider an e-commerce store with 100,000 products. Product prices change frequently. When a content editor changes the price of headphones from $100 to $75 as part of a promotion, their CMS uses a webhook to rebuild the entire site. It’s not feasible to wait hours for the new price to be reflected.

Long builds with unnecessary computation might also incur additional expenses. Ideally, your application is intelligent enough to understand which products changed and incrementally update those pages without needing a full rebuild.

Incremental Static Regeneration (ISR)

Next.js allows you to create or update static pages after you’ve built your site. Incremental Static Regeneration (ISR) enables developers and content editors to use static-generation on a per-page basis, without needing to rebuild the entire site. With ISR, you can retain the benefits of static while scaling to millions of pages.

Static pages can be generated at runtime (on-demand) instead of at build-time with ISR. Using analytics, A/B testing, or other metrics, you are equipped with the flexibility to make your own tradeoff on build times.

Consider the e-commerce store from before with 100,000 products. At a realistic 50ms to statically generate each product page, this would take almost 2 hours without ISR. With ISR, we can choose from:

  • Faster Builds
    Generate the most popular 1,000 products at build-time. Requests made to other products will be a cache miss and statically generate on-demand: 1-minute builds.
  • Higher Cache Hit Rate
    Generate 10,000 products at build-time, ensuring more products are cached ahead of a user’s request: 8-minute builds.

Let’s walk through an example of ISR for an e-commerce product page.

Getting Started

Fetching Data

If you’ve never used Next.js before, I’d recommend reading Getting Started With Next.js to understand the basics. ISR uses the same Next.js API to generate static pages: getStaticProps. By specifying revalidate: 60, we inform Next.js to use ISR for this page.

  1. Next.js can define a revalidation time per page. Let’s set it at 60 seconds.
  2. The initial request to the product page will show the cached page with the original price.
  3. The data for the product is updated in the CMS.
  4. Any requests to the page after the initial request and before 60 seconds are cached and instantaneous.
  5. After the 60-second window, the next request will still show the cached (stale) page. Next.js triggers a regeneration of the page in the background.
  6. Once the page has been successfully generated, Next.js will invalidate the cache and show the updated product page. If the background regeneration fails, the old page remains unaltered.
// pages/products/[id].js

export async function getStaticProps({ params }) {
  return {
    props: {
      product: await getProductFromDatabase(
    revalidate: 60

Generating Paths

Next.js defines which products to generate at build-time and which on-demand. Let’s only generate the most popular 1,000 products at build-time by providing getStaticPaths with a list of the top 1,000 product IDs.

We need to configure how Next.js will “fallback” when requesting any of the other products after the initial build. There are two options to choose from: blocking and true.

  • fallback: blocking (preferred)
    When a request is made to a page that hasn’t been generated, Next.js will server-render the page on the first request. Future requests will serve the static file from the cache.
  • fallback: true
    When a request is made to a page that hasn’t been generated, Next.js will immediately serve a static page with a loading state on the first request. When the data is finished loading, the page will re-render with the new data and be cached. Future requests will serve the static file from the cache.
// pages/products/[id].js

export async function getStaticPaths() {
  const products = await getTop1000Products()
  const paths = => ({
    params: { id: }

  return { paths, fallback: ‘blocking’ }


Next.js focuses first and foremost on the end-user. The “best solution” is relative and varies by industry, audience, and the nature of the application. By allowing developers to shift between solutions without leaving the bounds of the framework, Next.js lets you pick the right tool for the project.

Server-Side Rendering

ISR isn’t always the right solution. For example, the Facebook news feed cannot show stale content. In this instance, you’d want to use SSR and potentially your own cache-control headers with surrogate keys to invalidate content. Since Next.js is a hybrid framework, you’re able to make that tradeoff yourself and stay within the framework.

// You can cache SSR pages at the edge using Next.js
// inside both getServerSideProps and API Routes
res.setHeader('Cache-Control', 's-maxage=60, stale-while-revalidate');

SSR and edge caching are similar to ISR (especially if using stale-while-revalidate caching headers) with the main difference being the first request. With ISR, the first request can be guaranteed static if pre-rendered. Even if your database does down, or there’s an issue communicating with an API, your users will still see the properly served static page. However, SSR will allow you to customize your page based on the incoming request.

Note: Using SSR without caching can lead to poor performance. Every millisecond matters when blocking the user from seeing your site, and this can have a dramatic effect on your TTFB (Time to First Byte).

Static-Site Generation

ISR doesn’t always make sense for small websites. If your revalidation period is larger than the time it takes to rebuild your entire site, you might as well use traditional static-site generation.

Client-Side Rendering

If you use React without Next.js, you’re using client-side rendering. Your application serves a loading state, followed by requesting data inside JavaScript on the client-side (e.g. useEffect). While this does increase your options for hosting (as there’s no server necessary), there are tradeoffs.

The lack of pre-rendered content from the initial HTML leads to slower and less dynamic Search Engine Optimization (SEO). It’s also not possible to use CSR with JavaScript disabled.

ISR Fallback Options

If your data can be fetched quickly, consider using fallback: blocking. Then, you don’t need to consider the loading state and your page will always show the same result (regardless of whether it’s cached or not). If your data fetching is slow, fallback: true allows you to immediately show a loading state to the user.

ISR: Not Just Caching!

While I’ve explained ISR through the context of a cache, it’s designed to persist your generated pages between deployments. This means that you’re able to roll back instantly and not lose your previously generated pages.

Each deployment can be keyed by an ID, which Next.js uses to persist statically generated pages. When you roll back, you can update the key to point to the previous deployment, allowing for atomic deployments. This means that you can visit your previous immutable deployments and they’ll work as intended.

  • Here’s an example of reverting code with ISR:
  • You push code and get a deployment ID 123.
  • Your page contains a typo “Smshng Magazine”.
  • You update the page in the CMS. No re-deploy needed.
  • Once your page shows “Smashing Magazine”, it’s persisted in storage.
  • You push some bad code and deploy ID 345.
  • You roll back to deployment ID 123.
  • You still see “Smashing Magazine”.

Reverts and persisting static pages are out of scope of Next.js and dependent on your hosting provider. Note that ISR differs from server-rendering with Cache-Control headers because, by design, caches expire. They are not shared across regions and will be purged when reverting.

Examples of Incremental Static Regeneration

Incremental Static Regeneration works well for e-commerce, marketing pages, blog posts, ad-backed media, and more.

  • E-commerce Demo
    Next.js Commerce is an all-in-one starter kit for high-performance e-commerce sites.
  • GitHub Reactions Demo
    React to the original GitHub issue and watch ISR update the statically generated landing page.
  • Static Tweets Demo
    This project deploys in 30 seconds, but can statically generate 500M tweets on-demand using ISR.

Learn Next.js Today

Developers and large teams are choosing Next.js for its hybrid approach and ability to incrementally generate pages on-demand. With ISR, you get the benefits of static with the flexibility of server-rendering. ISR works out of the box using next start.

Next.js has been designed for gradual adoption. With Next.js, you can continue using your existing code and add as much (or as little) React as you need. By starting small and incrementally adding more pages, you can prevent derailing feature work by avoiding a complete rewrite. Learn more about Next.js — and happy coding, everyone!

Further Reading

Reblogged 1 year ago from

Microsoft Advertising Partner Summit announces video ads, in-browser price comparisons and Facebook import

Plus, Microsoft announces private search for Bing API

Please visit Search Engine Land for the full article.

Reblogged 1 year ago from

SEO platforms, Agile getting it “done”: Tuesday’s daily brief

Plus, the latest on social from The Harris Poll and Sprout Social

Please visit Marketing Land for the full article.

Reblogged 1 year ago from

The importance of defining “done” in agile marketing

It might be time to consider adopting a formal Definition of Done

Please visit Marketing Land for the full article.

Reblogged 1 year ago from

Arise RevOps, the New Orchestrators of Customer Experience

I care about customers. Whether they’re your customers, my customers, or my customers’ customers, I want every one of them to have a good experience every time they pick up the phone to call a business, open a marketing email, or visit a website.

It’s what gets me going every morning. That’s why I was thrilled in 2019 when I had the opportunity to launch HubSpot’s first-ever ‘voice of the customer’ team.

I assembled a group of passionate people, each more dedicated than the last to improving customer experience. We met weekly, talked about our customers, forensically analyzed feedback, and dug deep into the weeds to see where we could root out friction.

And then one day it hit us. The answers to most of our questions didn’t lie in more cross-functional meetings, increased headcount, or longer hours for support staff. The answers to our questions lay in operations.

Operations teams carry the responsibility for making sure that, well, everything works. If a marketer is having trouble segmenting a contact list, they reach out to operations. If a salesperson’s automated emails are misfiring, operations gets tagged in. If a service professional can’t access a customer’s communication history, it’s operations to the rescue again.

They’re the people who set every customer-facing team up for success. As such, they are the orchestrators of the customer experience. And yet, most companies view operations as a reactive function whose sole purpose is to frantically find fixes to issues as they arise.

It’s time for us as an industry to re-imagine operations and transform these teams from reactive fire-fighters into proactive friction-fighters. How can we do this? With revenue operations (RevOps).

It’s my firm belief that operations teams can only fulfill their potential when they work together under a unified RevOps strategy and are equipped with the right tools to execute that strategy.

Today, HubSpot is spearheading the onrushing RevOps revolution with the launch of Operations Hub — a new product specifically designed to empower operations teams to play an influential role in helping their companies delight customers at scale.

Because when a company scales, friction inevitably emerges, and customer experience is often the first thing to suffer.

Three Reasons Why Customer Experience Often Suffers When a Company Scales

There are few companies out there that impress me so much, I feel compelled to tweet about my experience, tell my friends, or write a positive review. These days, customers like me expect their interactions with every company to be quick, convenient, and contextual.

When a company scales and begins to achieve exponential growth, the challenge of keeping pace with customer expectations grows exponentially, too. There are three key reasons why:

1. More customers to support.

When a company is in startup mode, it will usually keep up with the growth of its customer base by increasing investments in staff. When customer growth starts to outpace the company’s ability to maintain a high standard of customer experience, it will likely raise capital and hire new employees to support the expanding demand. This works … for a while.

When that company is ready to scale – that is, to grow its business faster than its investments – it needs to support a growing customer base without simply hiring more employees and without letting the quality of the customer experience drop. To do this, it has to reinvent its approach to delighting customers or risk losing the trust of its user base – and its market share.

2. More tools to manage.

As a company grows, it will inevitably encounter new challenges. And in a world of over 8,000 martech solutions, there is no shortage of tools out there that could be brought in to help solve a problem quickly. So, it’s common for different teams to adopt different tools to help them solve different problems.

Over time, this approach results in a brutally bloated tech stack that takes so much time and energy to manage, there’s little left to dedicate to customers. What’s more, when tech stacks are unnecessarily complex, it becomes increasingly difficult for customer-facing teams to access reliable data, making it nearly impossible to deliver the type of contextual experience customers expect.

3. More touchpoints to maintain.

When a company is getting off the ground, it will tend to focus on a small number of high-impact channels. For example, its early social media marketing strategy may focus exclusively on, say, Facebook and Twitter, and it might only take customer queries over the phone.

As that company seeks to scale, however, it will add new channels to its marketing mix and offer its customers more ways to get in touch. Pretty soon, it’ll find itself interacting with its audience not only on Facebook, Twitter, and over the phone, but on Instagram, LinkedIn, YouTube, and via 24/7 web chat, too.

To manage this multitude of touchpoints, that company will need a new strategy to ensure it maintains the quality of experience it offered to customers when there were only a few channels in play.

These three issues are a by-product of scale. They are challenges a company wants to have … and solve. Yet, most businesses fall short. They naturally fall back on the methods that have helped them reach this critical moment in their journey — many continue to frantically hire staff long after it’s sustainable to do so, some rush to tack more tools onto their tech stacks without the infrastructure to make them all work together, and others simply leave certain touchpoints unattended, leaving customers unimpressed.

Operations professionals are uniquely positioned to help a company solve challenges like these. But historically, companies across our industry have failed to recognize the potential of their operations teams, leaving them stuck in silos and asking them to solve issues without the right tools or team structure to do so effectively.

Moving From Function-Out To Customer-In

Operations professionals are rarely among the first hires a company makes. They tend to be brought in only when systems start to creak and the friction between teams becomes unbearable. A company’s marketing leader might hire an operations professional onto their team to help improve its lead scoring system, while its head of sales brings in their own operations hire to work on reporting.

Before long, there are multiple operations teams working in different departmental silos, often out of different operating systems. In this setup, even if each operations team does an exceptionally good job at fighting friction within their department, friction can still be rife between their departments.

For example, the sales team might be having difficulty accessing and understanding the marketing team’s data, hurting their ability to personalize their outreach based on a prospect’s recent engagement.

With no team accountable for overseeing this critical cross-departmental touchpoint, prospects will continue to receive impersonal emails, the marketing team will continue to receive exasperated messages from their sales colleagues, and the sales team will continue to struggle to win over prospects.

I call this a “function-out” perspective, where each customer-facing team is only focused on the portion of the customer experience they’re directly responsible for, and each operations professional is tasked with supporting their designated function.

What companies need instead is a “customer-in” perspective, where all teams work in unison, informed by a holistic view of the customer, to deliver a unified experience. Operations professionals have a critical role to play in driving this shift in perspective. But to be successful, they too need to be unified.

How RevOps Helps Companies Scale Customer Experience

One of the most powerful things a company can do to scale its customer experience is to unify its functional operations professionals under one centralized revenue operations (RevOps) strategy.

When operations teams are unified, they are not serving their separate teams’ goals, they are serving the customer. They work with the same data, which gives them a single source of truth on what’s really going on with customers at a holistic level.

They collaborate on cross-functional processes that allow them to bridge the gaps between teams where friction frequently festers. And perhaps most importantly, they work together to proactively identify issues before they have a chance to hurt the customer experience.

Companies that don’t yet have a large number of operations professionals among their ranks don’t have to wait until they do to start adopting a “customer-in” perspective. If they haven’t hired an operations professional yet, they should consider bringing one in as a priority and giving them a meaningful say in how all customer-facing teams work together, not just one.

They should also examine the ways their internal teams are set up within their current operating model, assess whether the systems they’re using are contributing to silos, and begin to instill a culture of alignment around the customer.

After all, RevOps is not just the name of a team, it’s a philosophy by which to run a company — one that thrives when operations teams are equipped with the right tools.

Introducing Operations Hub

Today with the launch of Operations Hub, we are giving operations teams a suite of tools that allow them to assume their rightful place at the forefront of the customer experience and empower them to guide their companies through the customer experience challenges that come with scale.

With Operations Hub, teams can sync data across their business apps bi-directionally and in real-time, allowing them to manage a tech stack with ease, no matter how complex it is.

They can roll out workflows that automatically keep their database clean and up to date, helping them to maintain a reliable view of the customer, no matter how many touchpoints they manage. And they can design sophisticated custom automation actions to deliver a deeply personalized and contextual experience to customers, no matter how large their customer base grows.

Together, these tools free up operations teams to conduct bold ambitious experiments, test big innovative ideas, and launch ground-breaking new strategies, all in the name of delivering an exceptional customer experience. For too long our industry has put a limit on the potential of operations professionals. That changes today.

Back in 2019, I had the opportunity to launch HubSpot’s ‘voice of the customer’ team. That experience opened my eyes to the vital role operations teams have to play in scaling customer experience.

At the beginning of 2021, I had the opportunity to launch another team at HubSpot: the revenue operations team. With Operations Hub at our fingertips and our operations professionals unified as one, we are on a mission to elevate the role of operations teams not only at our company, but across the entire industry.

If you work in operations like me, you have a right to feel excited. Where you were once reactive, you can now be proactive. Where you were once siloed, you can now be in sync with your operations teammates. And where you were once an afterthought of the customer-facing teams you support, you can now be the orchestrator of your company’s customer experience strategy.

operations hub

Reblogged 1 year ago from