Skip to main content
eCommerce SEO Guide: How To Drive Organic Traffic In 2024?

eCommerce SEO Guide: How To Drive Organic Traffic In 2024?

With Google having a clear bias towards big media publishers (trustworthy, authority sites) and thousands of mediocre AI content published daily, how do you fight for those top places in search engine results in 2024?

eCommerce SEO Guide: How To Drive Organic Traffic In 2024

With the AI hype, search and SEO are moving at a staggering pace. Two years ago (when we originally published this guide), search results were…decent. While getting and keeping that #1 spot in search results for your focus keywords was complicated, especially for online stores and eCommerce businesses, it was reachable.

Today, however, for many businesses, that feels like a whole different story, and it looks like it will only get harder. Why is that?

For 25 years, Google has influenced how we find things, and in more ways than one, the internet has reshaped itself around Google. However, the cracks are there. Some come from their own marketing, some from rising alternatives, and some with ChatGPT and the like.

As I mentioned at the beginning, with every Google algorithm update, trustworthy, authority sites get even more visibility in search results. One of the most recent studies shows that 16 companies behind at least 562 individual brands get around 3.7 billion clicks from the search engine each month, an average of 6.5 million monthly clicks per site (source).

This brings us to crazy situations where the same websites rank well for political news, air fryers, business topics, and the best BBQ grills. No wonder many are raising their voices, saying Google is killing independent sites for big publishers.

The above situation is also why people are considering a second opinion when doing a search. According to a new study by Adobe, TikTok is increasingly being used as a search engine by consumers looking for information, recipes, music, and more. In fact, influencers are becoming the source of recommendations more and more.

For some time, Reddit became an alternative. People started using the keyword Reddit at the end of their search queries to get ‘better’ answers. Funny enough, today, Reddit is the fastest-growing website in search results (source). Plus, both Google and OpenAI have deals with Reddit to use information from it to train their data.

This brings us to machine learning, AI, and ChatGPT. The web is already overcrowded with shitty content. With AI, this will undoubtedly be much easier for all but with better results for a selected few. Don’t get me wrong, there are good uses of AI. But when it comes to content production for the sake of ranking it is only making things worse.

Finally, we have AI Overviews just fresh out of Google’s kitchen. AI Overviews can take the work out of searching by providing an AI-generated snapshot with key information and links to dig deeper (source). It is a big move forward for AI in search and a big signal that Google is moving to provide you with an answer and keep you on G. And they (the big G) are not doing a good job with it but are already thinking about adding paid ads in AI Ovrview answers.

The days of TITLE and META DESCRIPTION optimization, keyword stuffing, page rank manipulation, fake reviews, and fake backlinks are long gone. Google’s ranking algorithms work with on-page factors, user interaction, and off-page signals; searchers are getting better at searching; there is a crazy number of rich search result features in which you can appear (OneBox results, featured snippets, knowledge panels, rich results, etc.); the full presence of search generative experience (AI in search) is just around the corner, and, of course, competitors are doing the same things you do.

With all of the above, it’s obvious there are no shortcuts to better ranking. Still, there are things that you can and should do.

One of the perks of being a headless commerce platform is that you can talk with your clients about pretty much anything, including their SEO wins and losses. For someone with 25 years in SEO and marketing, this is a treasure vault for testing assumptions, tracking changes, and keeping our eCommerce SEO checklist and this guide on top of the best SEO practices to help you boost traffic and increase sales of your online store.

What Is eCommerce SEO Anyway?

The definition depends on whom you ask. For me, the whole purpose of SEO (and eCommerce SEO) practices is to help your pages/products be found and rank better in search engines (like Google) for desired/targeted keywords. This way, your pages/products gain more visibility and reach your potential audience in search engines without paying for search ads. Alternatively, check Web Almanac's SEO definition and add eCommerce to it.

There is no WordPress SEO, headless SEO, Shopify SEO, or Crystallize SEO (believe me, I wrote a Jamstack SEO post that ranks #1 for that keyword). These ‘keywords’ refer to how to handle SEO tasks (canonicals, meta tags, images, etc.) with a platform at hand.

Is SEO Important for eCommerce?

Are we still discussing SEO's value? Let me update the stats from two years ago with new ones.

Organic search drives 1,000% more traffic than organic social. The average CTR (click-through rate) for position #1 is 37.15%, compared with 14.91% for position #2 (source).

As of January 2024, Google has 91.47% (91.66% two years ago) of the search market share. And according to Google, 53% of shoppers say they constantly research before buying to ensure they make the best possible choice.

That’s probably one of the reasons why for every $1 eCommerce businesses spend on SEO success for their website, they make $3.65 back (source).

All of the stats quoted here show that if your product is not appearing in search engine results, you are losing $ big time.

Convincing intro and stats are done let’s now dive deep.

Table of Contents

eCommerce Technical SEO

  • Ensure Your Website Can Be Crawled & Indexed
  • Resolve Pages with 4XX Errors
  • 301 Redirects
  • Crawl Budget
  • Mobile-Friendly Product Pages
  • Use HTTPS
  • Page Experience Signals
  • 3rd Party Scripts
  • eCommerce API Performance
  • Site Architecture
  • Friendly URLs, Navigation, and Breadcrumbs

eCommerce Keyword Research

  • Defining Keywords
  • Keyword Difficulty, Domain/Page Authority, High Traffic or Long-tail Keywords
  • Focus On Search Intent
  • Avoid the Same KW On Multiple Pages

eCommerce On-Page and Content SEO

  • Page Title and Headings SEO Optimization
  • Meta Description for eCommerce SEO
  • Structured Data
  • Image Optimization
  • Optimize Videos
  • Product Page SEO
  • Link Optimization for SEO (Internal and External Links)
  • Backlinks
  • Avoid Duplicate Content
  • Content Marketing for eCommerce SEO
  • E-A-T and Topical Authority

eCommerce Technical SEO

Technical SEO ensures your website offers a great web experience for your users and search engines, i.e., it is easily crawlable, indexed, and performs exceptionally well.

With Crystallize being a headless commerce solution, we decided to give a unique overview of handling specific SEO problems from a headless architecture perspective. For the most part, that would mean presenting solutions for those that use modern frontend frameworks like Next.js, Remix, Astro or Svelte + Crystallize on the backend as part of their tech stack. You’ll find those under ➡️Going headless? notes.

It is a good time to mention that our free eCommerce boilerplates are SEO-ready and give you an excellent head start when starting a new project.

But the following tips/tricks/suggestions, etc., work for any website, no matter how you built it. Check the Resources section of this article for the top articles on SEO. You might need to dive deep into pretty much all the subtitles here.

Ensure Your Website Can Be Crawled & Indexed

Before you can appear in search results, Google and other search engines need to crawl your pages. Once a crawler finds your pages, the search engine renders them like a browser would and, while doing so, analyzes content on those pages. All the gathered information is stored in a search engine index from which ranking algorithms determine the relevancy of the crawled pages regarding keywords they found on the page.

Sure enough, you can wait for search engines to discover your pages naturally. But it’s far better for you to help them and ensure their web crawler bots can find and crawl all the important pages while staying away from those you don’t want them to see. So, how do you do that?

Robots.txt Make/use the robots.txt file to control which files and/or folders you want or don’t want bots to crawl. You may want to prevent them from crawling your images, internal search queries, or admin directories (like WordPress installs, for example). Another thing the Robots file helps with is making sure you don’t blow your crawl budget (I’ll talk later about it).

Sitemap.xml Have a sitemap on your website to provide crawlers with valuable information about the website structure and website pages. The basic XML code example is:

<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="">

Almost every search engine offers an easy and free service that helps you monitor, maintain, and troubleshoot your site's presence in their search results. Use Google Search Console for Google search and Bing Webmaster Tools to submit your website to Bing, Yahoo (because Bing's index powers Yahoo), and DuckDuckGo (because Bing is one of their search source partners).

➡️Going headless?

To add Sitemaps to a Next.js Project you can manually create a sitemap.xml in the public directory of your project or leverage getServerSideProps to generate an XML sitemap on-demand. As for the robots.txt file, it is as simple as creating a new file in a public folder in the root directory.

Remix routing allows you to create static files easily, while adding dynamic pages may require more work. Both files are explained here.

The Astro Sitemap integration will crawl your statically generated routes and create the sitemap file. There is also astro-robots-txt integration.SvelteKit provides an efficient and modern way to create a sitemap.xml and robots.txt using its server-side rendering capabilities. In both cases, you define routes with a +server.js file.

Resolve Pages with 4XX Errors

One of the most common HTTP response status codes both crawlers and your audience encounter are 4XX client errors, most notably the 404 Not Found error. The 404 error occurs when the requested URL contains the wrong syntax or the URL is deleted. A real-life case would be you having a wrongly linked page (like linking instead of ) or deleting a page completely but not deleting links to it.

The best way to deal with this problem is to have a dedicated 404 page that you can/should customize by adding links to essential pages or a site search bar, for example. You can also play on humor, just like we did.

Resolve Pages with 4XX Errors

➡️Going headless?

Next.js provides a static 404 page by default. Create pages/404.js file and it will be statically generated at build time.

Instead of having a separate page for errors, Remix has what you call an error boundary. When an error is thrown, Remix catches it and handles it via the error boundary.

You can create a 404.astro or file in /src/pages to create a custom 404 error page in Astro.

+error.svelte is a Svelte component that allows you to define your error page's appearance and behavior. You could do this on your hosting side as well. For example, check custom error handling available in Netlify edge functions.

301 Redirects

To avoid frequent 404-page shows, deal with duplicate pages, ensure new pages inherit authority from the old pages' link practice and set permanent redirects of old URLs. Proper HTTP 301 header information should be set. This will inform Google that the page has permanently moved so it can update its index. Browsers are automatically redirected when they hit 301 redirects.

Try to avoid so-called redirect chains. What are those? Over time, your redirects pile up so much that you may end up having 301 on top of 302 to end with 404, etc. These influence your crawling, link equity, and even website performance.

How do you find and take care of redirect chains? Unless you have a single source of truth for your redirects, i.e., use a single WordPress/Shopify plugin or handle redirects in headless builds, as explained below, do an audit of your website with the Screaming Frog example. SF is an SEO website crawler with which you can get the complete list of pages and status codes on your website.

➡️Going headless?

You can handle 301 redirects either with your frontend framework or your hosting (here, I refer to static website hosting platforms).

Redirects in Next.js are managed with redirects key in next.config.js. Remix provides a utility function to do 30x redirects. You can provide the path you want to redirect to as an argument to that function.

You can specify a mapping of permanent redirects in your Astro config file astro.config.mjs with the redirects value. With SvelteKit, to redirect users, use the redirect helper from @sveltejs/kit to specify the location to which they should be redirected alongside a 3xx status code. 

If you have a project on Vercel, you can configure redirects in the vercel.json file, as explained here. Are you using Netlify? Either save a plain text file called _redirects without a file extension to the publish directory of your site or add redirects tables to your Netlify configuration file (netlify.toml). To use redirects on Cloudflare Pages, declare your redirects in a _redirects plain text file in the output folder of your project.

Crawl Budget

We have an answer page on What Is Crawl Budget?, so this is a follow-up. While crawl budgets are not something most websites have to worry about, handling them becomes essential when running a website with 10k or more pages. Why? Simply put, the crawl budget helps you communicate with Googlebot about prioritizing what to crawl, when to crawl it, and how many resources to allocate to crawl. The search console is where you handle and track the crawl budgets.

Crawl Budget

As mentioned, keeping your website well-maintained and having a crawl budget on autopilot should be enough for most websites. In general, this means:

  • Your sitemap is updated regularly.
  • You’ve reduced errors and redirect chains.
  • You’ve done all you can for better website performance.
  • You’ve utilized robots.txt to ensure Google crawls just important pages and excludes internal search result pages, for example.

However, if you run medium or larger websites (10,000+ unique pages) with rapidly changing content (daily), you might want to check this post from Onely.

Page Experience Signals

Page experience signals are a set of signals that measure how users perceive the experience of interacting with a web page beyond its pure information value. The linked page is a good starting point for understanding them better, so here, I’ll quickly cover the basics.

Page Experience Signals

Mobile-Friendly Product Pages. Google is checking mobile friendliness. It impacts ranking and also conversion. Make sure your pages are mobile-friendly. You can quickly test if your pages are mobile-friendly.

Use HTTPS. This is a housekeeping point, but do not forget to secure your site with HTTPS. HTTPS is Faster than HTTP, so it is good for user experience, security, and SEO since Google penalizes sites that do not use HTTPS.

Frontend Performance / Core Web Vitals. Making sure you have optimized your webshop for frontend performance means you’ve dealt with your Core Web Vitals issues. There are a couple of reasons why performance matters and why checking and continuously monitoring and optimizing your webshop performance is essential.

For the most part, your CWV and website performance depend on how well you handle the front end, depending on the tech stack behind your website. Any stack can be performant. Still, some stacks are better than others, as Technology Report shows.

Google only considers the Core Web Vitals field data when ranking your site. Other page experience aspects make your website more satisfying to use, which is generally aligned with what our ranking systems seek to reward (source).

Page experience goes beyond signals. Clear and concise headlines, optimized images and videos, good content structure and layout, and content quality and value also matter to page experience.

3rd Party Scripts (Manage Them)

Seriously, do you really need all of those tracking pixels, chatbots, ads, heat map scripts, analytics, etc.? While third-party scripts provide a wide range of useful functionalities, they heavily influence website performance and security. How's that?

Performance-wise, every external script you add must be downloaded and then executed, adding up to page size and page load time. Security-wise, well, you can never be sure what the script is doing in the background when your page loads.

What can you do about it? First, consider removing the script if it doesn't add value to your website or business. Second, load the script using the async or defer attribute to avoid blocking document parsing. Finally, opt out to self-host some third-party scripts. It might be the case that the server from which they are served is slow.

We talk more about understanding and managing the impact of 3rd Party Scripts on website performance blog post.

➡️Going headless?

You can add interactivity to your Astro components by using standard HTML <script> tags. In Next JS, next/script is an extension of the HTML <script> element and optimizes when additional scripts are fetched and executed.

If working with Svelte, import js template files and put them on +layout.svelte. With Remix, render <Scripts/> component inside the <body> of your HTML, usually in app/root.tsx.

eCommerce API Performance

TLDR: your eCommerce API must be fast and scalable for your webshop to rank higher in search engines. Wait, what?

Site speed represented with the Core Web Vitals affects your search engine ranking. That is a fact. Webshop frontends are typically built using a headless approach these days, meaning that you rely on an API service in your backend. 

In the Jamstack approach, you typically pre-generate the pages as static to ramp up the speed and performance benefits. Why is API performance important if you generate static product pages on Edge? Well;

  • Product pages have updates, such as price and stock changes, so you must re-generate them frequently. Regeneration depends on API speed (faster speed means faster regeneration).
  • On larger stores, the caching strategy typically involves a subset of the total pages, meaning many pages must be generated on the fly as regular SSR (Server-Side Generated pages).
  • Search is heavily used in eCommerce, and in modern builds, it is handled by 3rd party APIs.
  • Finally, eCommerce means you must handle dynamic pages like a basket, checkout, and order placement.

The live eCommerce API you use to fetch product information and the custom Service API designed for your composable stack affect your overall API performance. This Service API is the glue in your headless architecture and often impacts integrated features like dynamically calculating the basket values. Together, they all affect performance and the customer/user experience, which, in turn, affects Page Experience signals.

Site Architecture

Site architecture (or website structure) is how your pages are organized and interlinked. It should not be an afterthought because it influences users' and search engines' website perspectives. How is that?

From a user experience (UX) standpoint, it's not the same whether you click two or ten times to get to the product you are looking for. A good site structure groups content/product pages intuitively and makes them easy to reach with as few clicks as possible. It also allows easy navigation and potentially better, more logical internal/related linking.

Search engine-wise, a good structure makes your website more accessible and potentially faster to crawl and appear in the search index. The right site structure also helps you spread link authority effectively (more on that later).

What is a good site structure? A good site structure is often defined as a flat rather than a deep structure. The difference is, of course, in the number of levels (clicks) you need to cover to get to the wanted page. As a general rule, make it simple and easily scalable, and keep in mind that no page should take more than three clicks to get to from any other page.

Site Architecture: Flat vs. Deep

Truth be told, will you have categories, subcategories, reviews, and/or variant product pages depending on a couple of things, including conducted product, competition and keyword research, industry, and the sheer number of your products. Rely on your keyword/competitor research to define your topic clusters, determine your pillar and/or category pages for each cluster, and plan the supporting content.

It is easy to plan the structure when you start a new website, but what can you do if you already have a website and your structure sucks?

First, audit the website and map all the pages and current structure. Be sure to identify the most popular pages as well. Then, do competition and keyword research and find similarities between your products and competitors' websites to identify categories, subcategories, etc. Lay out the new structure against old URLs (especially those with high traffic) and start with URL/content pruning and deliberate redirects.

Finally, submit a new sitemap to Google and other search engines. In most cases, traffic loss will occur at the beginning, but if things are planned and executed correctly, traffic will rise soon enough.

Friendly URLs, Navigation, and Breadcrumbs

In an ideal scenario, while contemplating site architecture and conducting keyword/competitor research, you'd be thinking about URLs, navigation, and breadcrumbs as well. URL slug best practice boils down to two things: use shorter, keyword-oriented URLs with hyphens to break up words and ensure keywords are aligned (if not with the product) with the intent you are pushing on the page in question.

Many businesses take navigation and navigation menus for granted. I mean, what is there to think about? You place the links, and that's it, right? Wrong! Navigation not only helps UX but also helps search engines understand your website structure even more. Navigation should be simple, straightforward, and hold the most important pages.

Also, ensure the links in the navigation (or any menu) are already present in the HTML source so Google can read and crawl them.

Faceted navigation is also a case for eCommerce businesses. It allows your audience to narrow search results based on specific product features and attributes. From a UX standpoint, it has vast potential, especially with businesses with thousands of products, where users can easily find what they’re looking for.

Thanks to it, you can manage your crawl budget as well.

In addition, you can also easily cover long-tail keyword opportunities that would otherwise not be available. For example, say you have a store that sells kitchen appliances, much like our FRNTR demo here. You can easily have categories per appliance. But having a dedicated page for 'green kitchen appliances', though useful for some people, might not be the way businesses think. This is where faceted navigation shines.

Breadcrumb navigation indicates the page's position in the site hierarchy and aims to help users navigate your website more effectively.

Friendly URLs, Navigation, and Breadcrumbs

eCommerce Keyword Research

Keyword research is the foundation of every SEO campaign, be it for niche blogs, news, eCommerce, or any other website. It will be hard to write about it in just a few key takeaways, so bear with me and check the links in the Resources part of this article.

Defining Keywords

The first step for new businesses/websites/stores would be defining the keywords you want to target. For running businesses/websites/stores, it would be to evaluate the ones you already target. Running keyword research will help you with both.

Why do you need keyword research in the first place? Keyword research is there to help you understand which keywords people use to find similar services/products like yours, how popular those keywords are, i.e., traffic volume, the intent shown in search results for those keywords, what type of content is showing in search results for those keywords, and what will it take to rank for those keywords.

How do you conduct keyword research? Most businesses already have a list of keywords that best describe their service or product. Also, most have a list of real-life competitors. Use them as the starting point of your keyword research.

A couple of tools will help you at this stage:

Google. Study the results for companies that appear in the results and understand the type and intent of the content/pages showing. Use auto‐suggest and similar search options to broaden your keywords and challenge the assumption of how your audience conducts a search.

Defining Keywords with Google Suggestions in search option.

Amazon Suggest. Use the Amazon website search option, i.e., enter the keyword, and Amazon will provide a list of suggestions surrounding this keyword.

Answer the Public. It is a nifty free tool that helps you discover what people ask about when searching your keywords.

SEMRush/ahrefs/Moz. Paid SEO tools are a great way to find out which keywords are popular, i.e., their search volume, and analyze your competitors' keyword, content, and backlink profile strategies.


Start by listing the relevant product or service-focused keywords and topics. Broaden the list with your competitors' keyword analysis, but remember that your real-life competitors and keyword search results competitors might not be the same. Use local versions of Google (and Amazon) when you aim to rank high for local search results (SEO Search Simulator by Nightwatch is a great extension for Chrome).

Keyword Difficulty, Domain/Page Authority, High Traffic or Long-tail Keywords

Let’s make keyword research a bit more complicated. What is keyword difficulty (KD)? Most paid tools have a KD metric that ought to give you a rough sense of how difficult it is to rank for a given keyword.

What is domain/page authority (DA)? It is a metric that ought to give you a rough sense of the strength/authority of a website/page.

Both of these metrics are there to help you better evaluate your chances of appearing in search results for desired keywords. Useful as they are, there are certain…eh…limitations.

These metrics are tool-defined, i.e., each tool has its way of measuring them, and they are in no relation to what Google may or may not have in place, does, or does not do when ranking websites for keywords. Use them to indicate what might be rather than what really is.

High traffic vs. long-tail keywords. Most businesses immediately consider ranking for high-volume keywords, while the real value might be long-tail ones. Let me explain with an example.

For our FRNTR demo store, trying to rank for the ‘coffee machines’ keyword (261.8K monthly searches globally) is the holy grail, right? However, because I focus on a specific brand, i.e., Ascaso, a keyword with 6K monthly searches, ‘Ascaso espresso machine’  may be a better one to focus on for several reasons.

More specific, long-tail keywords provide you with better click-through rates and conversion.

It takes time and careful planning (of content and backlinks) to build the topical authority of a page and/or domain. If you are a gamer, think of it as leveling up your character. The stronger it gets, the easier it is for your character to deal with giant monsters. The more you rank for long-tail keywords, the easier you’ll rank for bigger ones.

If you look closely enough, i.e., study search results well, you’ll notice very often that KD and DA scores relate to Google's perceived domain value, shown in the ranking position in results.

For better or worse, the answer to all of the above is in the search results.


Do not rely entirely on KD/DA/PA, etc. Check search results manually to judge/evaluate real‐world keyword difficulty and domain strength. Go long-tail, i.e., go after less popular keywords (long-tail keywords) with lower search volumes but usually better conversions.

The best way to build authority hasn't changed: have great, helpful, and shareable content and a lot of backlinks to it. The more authority you get, the more you are a trusted resource on a given topic/keyword, making it easier and faster for your new pages to show and rank in search results.

Focus On Search Intent

Did you really think the complexity of keyword research ends with the above? Welcome to search intent. Understanding the searcher's intent behind a search query is the ultimate goal of any search engine.

It is not the same if I search for 'Ascaso espresso machine' and 'baby t coffee machine'. The first query is informational, i.e., I'm looking for info on my favorite coffee machine brand, while the second one is so-called transactional, i.e., I'm looking to find a specific model to buy.

There are four different intents: Informational, Navigational, Transactional, and Commercial investigation. Once again, if you want to learn more about search intent, the Resources are packed with excellent links. Here, I'll just quickly run through examples.

Informational. Questions like 'what is PIM?' or 'who is Elon Musk'; direction queries like 'nearest coffee shop' or topic/keyword queries like 'spongebob squarepants' or 'Novak Djokovic' fall under this type.

Navigational. Search queries like 'Figma sign in' or 'Crystallize' fall under navigational intent.

Transactional. Queries like 'buy spongebob squarepants socks' and 'DJIMavic 2 Pro price', and 'Amazon coupon' all fall under this category.

Commercial investigation. Queries like 'Cristllize vs. Shopify' and 'DJIMavic review' and 'best spongebob squarepants socks' and 'socks shop near me' and 'cheap cabins in Skien' all belong here.

What do these mean to your keyword research? Simply put, understanding the intent helps you craft better content (or rather build appropriate and expected content for the keyword in question). But the story for eCommerce does not end there.

Product pages are essential for any eCommerce business, no doubt about that. However, you are limited by the number of keywords you can rank for on them. So, if I manage to rank for the keyword 'baby t coffee machine', I may rank for 'red baby t coffee machine', etc,. as well. To reach a much wider audience, I'd like to explore other keywords closely related to the main one. In this example, that might be the keyword 'best coffee machines as a gift'.

Analyzing search results, we can quickly determine it is a commercial investigation search query with search results full of listicle blog posts. Great. All I have to do is write a blog post with a list of great coffee machines (including my Baby T page), and that's it.

Search intent helps you make sure you have the right type of content for your targeted keywords. But you won't pull off a good ranking with crap content.

Avoid the Same Keyword On Multiple Pages

Having multiple pages with the same keyword (however different with content) is a bad practice that can lead to keyword cannibalization problems. You don't need more than one 'baby t coffee machine' page, do you? Yes, machines can be red and green, but modern eCommerce solutions take care of this with product variants features.

Still, your best bet is to check search results. If your competitors are doing it, and Google notices it, and there is traffic there, opt for variant URLs.


When creating a page, focus on the user, not the keyword itself. The query's intent is connected with the type of content you should use. Check search results and limit the number of pages targeting the same or similar keywords.

eCommerce On-Page and Content SEO

The eCommerce content checklist refers to on-page SEO for eCommerce sites. Site structure, URL slug structure, and navigation also fall here, but I’ve already covered it in the technical SEO part.

Page Title and Headings SEO Optimization

Make sure that your TITLE tags and H tags are optimized. The search results show the title tag, so make it specific and keyword-oriented. While at it, have your keywords at the beginning of the title.

Also, make sure to repeat the title tag text as the main header on your product page. In addition, you should repeat the main keywords throughout the product description text, i.e., within the first 100 words on your page. For example, look at how the 700c white tires page shows in search results.

HTML (HyperText Markup Language, the most fundamental building block of the Web) is a hierarchical language, meaning every tag has its place and purpose. Headings (H2, H3, H4, etc. tags) help you structure your page content better, making it more logical and clear to users and search engine bots.

TITLE length does not matter. What matters is that you use the keyword in it. Focus on one keyword or a couple of semantically similar words across your page, not only TITLE and headings. Use H2, H3, etc., tags for secondary keywords.

Meta Description for eCommerce SEO

Keep your meta descriptions up to date. This is the text shown under the page title in the search results. Keep it accurate and sell it. This is a factor for eCommerce SEO and ensuring your customers click on your link when it appears in the search.

The usual suggestion is that you keep the meta description between 120 and 160 characters with excellent descriptive click-to-action (CTA). Think of it this way: Explain the product the best you can so people reading it would be compelled to click/buy. It is a selling pitch, and it does not matter for SEO.

Structured Data

Structured data is a standardized format for providing information about a page and classifying the page content. The best way to implement structured data on your website and webpages is to use structured markup, a collaborative vocabulary supported by most search engines.

Why use structured data? Though having structured data on your page will not directly influence page ranking, there are a couple of reasons for having it:

Structured data helps search engines understand the content on your page better (mainly if you aim to appear for search queries related to eCommerce, recipes, and jobs, i.e., queries for which search results show more than just linked titles and descriptions).

  • Structured data helps search engines display your content as rich results.
  • Structured data will directly show reviews, prices, and stock information in product search results. This also boosts click rates, as customers are already better informed from the search result page.
  • The web is becoming more semantic as we target voice and visual search channels. Structured data plays an important role in these.

The biggest challenges of implementing structured data are choosing a format and nailing the type that best fits your page. While there are three supported formats, JSON-LD is the most recommended one. As for determining the right type, the best practice is to keep focused and use a single top-level Type on a given webpage. Let's take Baby T Coffee Machine page as an example.

<script type="application/ld+json">
    "@context": "",
    "@type": "Product",
    "name": "SpongeBob SquarePants socks",
    "image": "SpongeBob-SquarePants-socks.png",
    "description": "Beautiful SpongeBob SquarePants socks in size M.",
    "sku": "123456789",
    "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "5",
        "reviewCount": "2000"
    "offers": {
        "@type": "Offer",
        "priceCurrency": "USD",
        "price": "9.99",
        "availability": ""

This is the basic info with review and price data on my product page. Still, the primary type I’m using is The Tools/Resources/Additional Reading part of this guide has some excellent links to tools and articles if you want to (and should) dig deeper into structured data.

➡️Going headless?

Structured data is defined on the CMS or eCommerce platform level. With Crystallize, for example, the content modeling approach allows you to describe all the product information you may need for your product page. Then, have the front end of your choice request information via the API and display the information on the front end as you prefer, including in format.

Image Optimization

Did you know that image size is one of the most significant contributors to web page size? This means that proper optimization of images may come with substantial savings in page size and, thus, page load speed. A faster-loading page influences your search engine ranking (because speed matters), user experience, and CTR.

What can you do about it? Lazy-load your images, i.e., load them when needed instead of loading them upfront. Optimize your images, i.e., use modern, web-centric image formats like WebP and AVIF. Using both of these comes with a 25–35% reduction in file size while keeping the quality of an image the same. Optimize image delivery, i.e., use CDNs.

These will help you avoid problems with Largest Contentful Paint (LCP) and Cumulative Layout Shift (CLS). Have a similar number of images as the best-ranking competitor on your desired keyword. Avoid using stock photos. Defer offscreen images.

High-quality, relevant product images can improve user experience as well. Come to think about it, images are the driving force behind purchase. I mean, you can dominate the search engine rankings, but do you think you’ll convert that traffic with shitty images?

Finally, a big chunk of the searches done by shoppers is via the image search section of search engines. Again, you should, of course, use great photos. But for SEO purposes, you also need to make sure that you use a keyword-focused filename (like Baby-T-Coffee-Machine.png) and ALT text, as this is being used by Google when indexing photos.

For example, search for envelope leather backpack on Google. You’ll notice the image from the linked page ranked as #1 in the image search. Now, connect the dots between page and image best practices I’ve mentioned here.

Image Optimization

➡️Going headless?

There are a couple of ways to handle image optimization. Let your frontend framework do the job for you. Next.js has <Image/> component. Not only does it render, but it also optimizes the image for every viewport by implementing functionalities like lazy loading, responsiveness, resizing, and optimized file size and format out of the box.

Remix doesn’t have a built-in image component. Still, you can use Unpic and Netlify Image CDN to create a high-performance image component for Remix that automatically serves responsive images.

Vite's built-in handling might be the best route when using Svelte. As for Astro, use the built-in <Image /> Astro component to display optimized versions of your local images and configured remote images.

Another way to handle images is to use a 3rd party service like Cloudflare Image Optimization, for example.

Finally, some CMS and eCommerce solutions offer image optimization as a part of their service. In Crystallize, for example, when you upload images, we will compress/convert images to AVIF and Webp, which are better image types, and resize in a bunch of different resolutions (100px, 300px, etc. up till the max-width of the original image). Then we have an npm package @crystallize/react-image that helps with image rendering, i.e., you get responsive and fast images. For example, if you're on mobile, the max-width is 480px, then the browser only fetches the 480px size image instead of a bigger one. How's that for an out-of-the-box feature?

Optimize Videos

Product videos have become hugely important in eCommerce. You can showcase a product, tell a story about it, share testimonials, or produce how-to videos for your product and use them for promotion or to incentivize sales. Remarkable as they are, they do have a significant influence on page size (and thus speed and performance).

While lazy-loading videos is always an option, video optimization largely depends on your platform. We’ve discussed the different solutions for video use in headless/jamstack builds. The solutions mentioned there can be used with any platform (or at least popular ones).

As far as best practices are concerned, ensure the file names contain the desired keyword, the same as with images. Be sure to have a proper TITLE and description set as well. But more importantly, use structured data and sitemaps to help Google and other search engines properly index videos.

If a search query, i.e., the keyword you are aiming at with your product, has videos in the results, that is a sure indicator you need to have a video as well. Videos can appear as a part of a video snippet in search results, show in the video part of search engines, and, if you have the same video on YouTube, in YouTube search results.

You can have your videos on YouTube, served natively, or both. By having the same videos on both YouTube and your site, you might have them compete in search results for the same keywords, and, in most cases, YouTube videos will rank higher. This might not be a bad thing, but it depends on your strategy, which one would work better for you.

Optimize Videos

➡️Going headless?

Or rather, going with Crystallize? Our video component is built with the ease of using videos in product storytelling and optimization in mind. Same as our image component, it is all offered out of the box. We’ve got your video needs covered.

Link Optimization for SEO (Internal and External Links)

There are two types of links, internal and external, and both influence your SEO efforts. Navigational links, breadcrumbs, category links, links to your pages within posts/products/articles, etc., are all internal links. Their most considerable influence is making it possible for users and search engines to navigate the website and discover web pages more easily.

External links are links to other websites that aim to help your page appear more credible to both users and search engines. Using other resources in your writing/page shows you did your diligence and researched the topics well by providing a link to an authoritative source on the subject you are covering.


Internal links tips. Use a keyword or its variation related to the page you link to in the anchor text. Avoid linking to pages that have nothing to do with your page topic, i.e., if your page is about SpongeBob SquarePants socks, don't link T-shirts page, but do link to SpongeBob SquarePants T-shirts page (do you see the difference). Avoid using generic anchor texts like click here, read more, etc. If the same keyword appears multiple times on the page, just link the first keyword. Don't overdo internal links by stuffing unnecessary keywords in their anchor text.

External links tips. All of the above + Linking to high-quality, authoritative websites, but also make sure you always link to the primary sources of information. In general, it’s best to open external links in a new window to prevent the user from leaving your website. When linking to other websites, use rel attribute values in the <a> tag to manage and explain to search engines your website/webpage relationship with the page you have linked.

For example, you might wanna use rel= "nofollow" attribute for affiliate links or links to pages with which you don't want to share some of your website's authority (more on that in the next chapter).

Finally, you can manage the above on the page level with robots meta tags. For example, this little tag <meta name="robots" content="noindex" /> that you add between <head></head> tells search engines not to index the page.


Simply put, how many links, which pages link to you, and the anchor text of the links to your page matter big time! Links build page and domain authority. Anchor text gives semantic meaning to the link and is good for accessibility and usability. But it’s also boosting the destination page for the linked keywords. All of these together influence your ranking.

However, don't be fooled into thinking that backlinks are a magic ingredient in search engine ranking. Influential as they are, they won't help much without the quality of your page and content.

There are two aspects of link building: link quality and link reach out. How do you determine the quality of a link? The quality of a link depends on the domain/page keyword, industry affiliation and authority, anchor text, page content quality, and link place. I'm going to share a quick overview, but if you want more, check out the resources.

Now, here is a mouthful as an example: being linked at the beginning of a fantastic piece of content on a domain/page already established as an authoritative one in your industry for your keyword is more valuable than being linked in a mediocre one, at the end of the content, or being linked from a strong domain in a different industry anywhere on its page. In other words, a link on the Disney website won't help an eCommerce SEO guide like this one very much. But a link from will (can anyone help get a link there!?).

How do you find quality links? Remember when I talked about keywords and competitors' research? While doing those, be mindful of the websites appearing in search results for your desired and similar keywords (if they are not a competitor, they might be a link source). Also, be mindful of the places that already link to your competitors, i.e., check competitors' backlink portfolios. Chances are, some of those might consider linking to you as well. Find broken links or unlinked brand mentions of you and your competitors and reach out to those websites. Or consider guest posting on websites in your industry.

And how do you reach out for links? No silver bullet here. For some places, a simple but personalized email will be enough. For others, it might be better to establish a connection first, i.e., connect on Linkedin or Twitter and get to know each other before you do business.

Two things are certain: it depends on your industry, and it takes time (a lot of time). For example, getting a backlink in a B2B marketing space is hard because everyone is doing it and knows its value. You may fare better with just producing quality content.

Finally, you can use one of the link-buying services to buy links for your website. While link buying is a BIG NO-NO for most search engines, it is only a crime if you get caught. But I'd advise you to think about it this way: Why would someone sell links in the first place, and how many have they sold already, making the effect of it questionable? Is the risk worth the penalty? In my experience, it is not.


Arguably, building links is one of the hardest parts of SEO. It’s time-consuming, with questionable results. Still, there are a couple of general things you should be thinking of when doing link building.

Use the number of links and domain authority/domain rating metrics that many SEO tools provide you with as an indicator of domain/page authority (thus link quality).

For the most part, the answer to the quality link question is in the search results, i.e., what is there matters. You can either reach out to those websites or those that link them.

Finding broken links or your unlinked brand mentions is the lowest-hanging fruit of link building (do those first). Avoid templates and personalize your approach. Be honest. Build relationships first, then ask for links later. Or focus on your content quality.

Avoid Duplicate Content

Thin is the line between duplicated and similar content. In eCommerce, even more so than in other industries. For example, how different can the Yellow Baby T Coffee Machine and Red Baby T Coffee Machine pages be? Do you even need two pages here?

Still, the problem of duplicate content lurks over SEOs' heads like a rainy cloud, mostly because there is no one-size-fits-all answer to the question of how similar content needs to be, to be marked as a duplicate. It depends on the industry as much as the search engine (I'm sure Google and Bing have different ideas).

I've found that Google's definition of duplicate content provides a decent frame of thought for the topic.

Avoid Duplicate Content

So, why is duplicated content bad, and what can you do about it? Suppose you don't tell search engines which URL is original/canonical, and you have the same content either on different pages of the same website or other websites. In that case, you might end up boosting the wrong pages in search results because search engines will decide on their own which URL is original.

If duplicate content appears on several internal pages, you can either rewrite the content or set 301 redirects to a single page you'll consider the original. For the Baby T Coffee Machine example, a single page with different variants (yellow and red) would do the work. So, if we previously had two pages, one would have 301 redirects set.

What if the same content appears on Medium or other websites (or you have two online stores)? If rewriting is out of the question, you'll have to rely on the rel=canonical attribute in your link tag (it can also be in the first example). There are two ways you can use rel=canonical attribute:

<link href="URL OF ORIGINAL PAGE" rel="canonical" />


<link href="PAGE URL" rel="canonical" />

With the first one, you’re pointing the search engine crawler to the canonical/original version of the page, i.e., the one the crawler is on is a copy of the page mentioned there. The second one is called a self-referential canonical link, as it tells the crawlers that the page they are on is the original.

➡️Going headless?

I've already discussed the redirects, so how do you handle canonicals? Why, on your front end, of course. For Next.js, you can add it as you'd typically do a component present on every page by utilizing next/head or the Next SEO plugin.

In Remix, it is managed via the meta export. Use Astro.url to construct your own canonical URL. Svelte offers this as a solution.

Content Marketing for eCommerce SEO

eCommerce has come a long way from simple product listing in categories and checking boxes of a product on a product page. Today, you need to produce engaging, rich content for eCommerce consistently. Content and commerce are merging, and customers expect rich, detailed information about your products, among other things (check the future of eCommerce post for more).

This means you need to be able to easily populate product information on the backend with pretty much anything from descriptions, images, and videos to specs, variants, and other essential information and quickly convey a message or a story on any channel and on any screen.

I might be biased, but the best way to do it is to rely on a product information management (PIM) solution that allows powerful content modeling, digital asset management, and ​​super-fast delivery.


For the most part, the answer about the content you need to have on a page is in the search results for the topics you will cover. Include your desired keyword in the title and the description, and add long-tail variations and synonyms. Be strategic in your approach to topics and optimize your content for the most relevant keywords.

Tell a story about the product, i.e., what problems are you solving for your visitors, and why is your product better than the rest? Quality images and quality videos are a must.

Write easy-to-read and easy-to-follow content. Go beyond your product pages by creating niche-relevant content.

You’ve Made It To The End, What Now?

Today, search engine optimization is a balancing act between audience, search engines, and business goals and expectations wrapped in technical, UX, conversion, and content problems. It is not only about dominating search engine results or growing traffic. And certainly not a one-person job anymore.

We’ve built this eCommerce SEO guide with all the above in mind. We’ve spilled our guts here (metaphorically speaking), but it’s on you to decide how to use it to benefit your website, traffic growth, and business.

Tools/Resources/ Additional Reading

If we got you interested in SEO and you’d like to learn more and be actively involved in laying out and tracking your SEO strategy, here are the tools we use and fantastic resources that go deeper into each subject we’ve covered. Resource links are listed in order of topic appearance:

Google Search Console - 
Screaming Frog SEO Spider - 
Mobile-Friendly Test Tool - 
Safe Browsing site status - 
SSL Checker - 
PageSpeed Insights - 
Core SERP Vitals Chrome Extension - 
Compare your page speed at keyword-level with the rest - 
Google Tag Manager - 
Structured Data Markup Helper - 
Structured Data Testing Tool - 
Rich Results Test -
Structured Data Examples - 
Schema Generator - 
SEO Search Simulator by Nightwatch - 
Screenfly / Test Your Website at Different Screen Resolutions - 
AnswerThePublic - 
SEMrush - 
Ahrefs - 
MOZ - 

Resources: The Best SEO Reads
Organic Website Traffic Industry Benchmarks Report for 2023 - 
What Pandu Nayak Taught Me About SEO - 
An Anonymous Source Shared Thousands of Leaked Google Search API - 
Google Search’s Internal Engineering Documentation Has Leaked - 
How does Google search (ranking) may be working today - 
Google Organic Product Grids: How Ranking Works - 
Dear Warhammer, let’s talk about SEO, JavaScript, and website migrations - 
Unlocking The Power Of Semantic SEO - 
Best practices for eCommerce sites in Google Search - 
Bing Webmaster Guidelines - 
What Is Googlebot & How Does It Work? - 
Technical SEO Checklist for Developers -
The Ultimate Guide to Redirects in Technical SEO - 
Guide to managing your crawl budget - 
Redirect chains: why are they bad for SEO? -
What Crawl Budget Means for Googlebot - 
Complete Guide to Crawl Budget Optimization - 
Influence of Tech Stack - 
Website Structure - 
JavaScript and SEO - 
The Most Common JavaScript Issues on News Sites - 
How Core Web Vitals affect SEO - 
How we Increased Search Traffic by 20x in 4 Months with the Next.js App Router - 
Importance of Topical Authority for SEO - 
KW Research: The Definitive Guide - 
Search Intent in SEO: What It Is & How to Optimize for It - 
How one Google featured snippet is killing commercial list-based content - 
What are the most frequent mistakes made by SEO professionals? -

More Guides For You📄

Frontend Performance Measuring, Monitoring & KPIs

Frontend Performance Measuring, KPIs, and Monitoring

Core Web Vitals, LCP, Cumulative Layout Shift, FID,, Google Lighthouse, Pagespeed Insight, CrUX, or the latest one, Interaction to Next Paint (INP) —we're sure you've stumbled upon one of these in your quest to improve front-end performance.

But how do you measure performance? And why do you need to be data-driven and continuously monitor, optimize, and build a performance testing and optimization culture?

Let's explore that. Let's go millisecond hunting.

Content Modeling 101 for eCommerce

Content Modeling 101 for eCommerce

Content modeling is an interesting topic and lays the foundation for a great eCommerce architecture. When done correctly, of course.

Subscription eCommerce: The Ultimate Guide

Subscription eCommerce: The Ultimate Guide

Subscription ecommerce business models have seen fantastic growth in recent years. With Crystallize being at the forefront of it, now is the time to dive into the ins and outs of starting, running, and scaling an eCommerce subscription business.