Ecommerce SEO Audit: A Step-by-Step Checklist

Ecommerce SEO Audit: A Step-by-Step Checklist

A step-by-step ecommerce SEO audit checklist for Shopify and WooCommerce stores, covering crawling, indexing, Core Web Vitals, faceted navigation, duplicate variants, and product schema, grounded in Google's own documentation.

Search Engine OptimizationJakub Rusniok
Updated September 24, 2026
17 min read

quietly sends a large share of ecommerce traffic, yet online stores lose rankings in ways a blog or brochure site never would. Filtered navigation spawns thousands of near-duplicate URLs, color and size variants compete with each other, and discontinued products turn into dead ends. An ecommerce SEO audit is how you find those leaks before they cost you sales.

This guide is a step-by-step ecommerce SEO audit checklist you can run on a Shopify store, a WooCommerce store, or any online shop, grounded in Google's own documentation rather than folklore. It leans on our own ecommerce SEO statistics for how often each item actually fails. It moves through crawling and , , the ecommerce-specific traps that generic SEO advice skips, on-page and , , and how to prioritize what you find. By the end you will know what to check, what "good" looks like, and which fixes to run first.

The ecommerce SEO audit in six steps, grouped into three phases (technical foundation, content and catalog, structure and priorities) and ending with a re-run-after-fixing loop
The ecommerce SEO audit in six steps, grouped into three phases (technical foundation, content and catalog, structure and priorities) and ending with a re-run-after-fixing loop

What an ecommerce SEO audit is, and when to run one

An ecommerce SEO audit is a structured review of a store's technical health, on-page content, , and off-page signals to find what blocks rankings, crawling, or clicks from organic search. The reason ecommerce needs its own audit is scale and volatility: a store can hold tens of thousands of product and category URLs, generate more through filters, and change inventory every day. That combination creates SEO problems a small content site simply never meets.

You do not need to audit constantly, but a few moments make it worth the time. Run a full audit after any replatforming or site migration, since URL changes, redirects, and template rewrites are where rankings quietly disappear. Audit when organic traffic or rankings drop without an obvious cause, before and after a new store launch, and after a Google core update reshuffles your category. When traffic falls, rule out the simple explanations first, seasonality or softening demand, and check the Manual Actions and Security Issues reports in Search Console before assuming a technical fault (Google's traffic-drop guide). As a baseline cadence, a light quarterly check plus one deeper audit a year tends to catch most issues early, though that rhythm is practitioner convention rather than a rule.

However you work through the steps below, treat the audit as a loop rather than a one-off. Start by pulling a Search Console performance baseline (impressions, clicks, and average position), then read it alongside the Page Indexing report so you can separate an indexing problem from a ranking or click-through one. For a quick first pass on your key templates, run your homepage and a best-selling product page through our free ecommerce SEO audit tool, which checks indexability, titles and meta, Product schema, and Core on each page in about 30 seconds. Then crawl the whole store with a tool like Screaming Frog and reconcile that crawl against your and Search Console. A crawl surfaces the concrete problems to log: orphan pages with no internal links, URLs that do not return a 200, redirect chains, broken internal links, and pages whose canonical points somewhere unexpected. Note which URLs each issue touches, fix by template, and recrawl to confirm the fix held.

See what an audit flags on your own store

1350+ stores audited
Run a Free Ecommerce SEO AuditNo credit card needed

Step 1: Check crawling and indexing

Start where Google starts. Open the Page Indexing report in Google Search Console, which shows how many of your pages are indexed against how many are not, with the reason for each. Watch for the report reasons that hit stores hardest:

  • Crawled - currently not indexed — a thin or duplicate product page Google crawled but decided to skip.
  • Duplicate without user-selected canonical — Google found duplicates and picked its own canonical, common with variant and filter URLs.
  • Blocked by robots.txt — a rule is stopping Google from crawling the URL.
  • Discovered - currently not indexed — Google knows about the URL but has not crawled it yet.

To check one specific URL, use the URL Inspection tool rather than the report.

Then review the mechanics that decide what gets crawled at all:

  • Confirm your important category and product pages are actually indexable, not accidentally carrying a noindex tag or blocked in robots.txt.
  • Use robots.txt to keep crawlers away from low-value URLs (internal search results, cart and account pages, ). Google notes that a noindex tag does not save crawling, because Googlebot still requests the page before dropping it, so robots.txt is the tool for reducing wasted crawl. The two controls do different jobs: robots.txt stops crawling, but a blocked page can still be indexed if other pages link to it, while a noindex tag stops indexing and only works when the page stays crawlable.
  • Make sure your XML sitemap lists canonical, indexable URLs only, stays current, and is submitted in Search Console.
  • Confirm the whole store is on HTTPS with no mixed-content warnings.

One myth worth retiring: . Google's guidance is that most sites never need to think about it, and that as rough guides it only becomes a real concern for very large sites, over a million pages that change about weekly, or over ten thousand pages that change every day (Google Search Central). Most stores do not have a crawl-budget problem; they have a wasted-crawl problem: filters, parameters, and dead URLs eating attention that should go to real products.

Step 2: Audit Core Web Vitals and mobile

Speed and stability are both ranking inputs and conversion inputs, so they earn a dedicated pass. Google measures the experience with three Core Web Vitals, each judged at the 75th percentile of real visitors (web.dev):

Metric"Good" thresholdWhat it measures
LCP (Largest Contentful Paint)2.5 seconds or lessLoading: when the main content paints
INP (Interaction to Next Paint)200 milliseconds or lessResponsiveness to taps and clicks
CLS (Cumulative Layout Shift)0.1 or lessVisual stability while the page loads

Note that INP replaced as a Core Web Vital in 2024, so an older audit template that still lists FID is out of date. Pull field data from the Core Web Vitals report in Search Console or from PageSpeed Insights, which shows real-user data alongside a lab test, and audit your slowest templates rather than one lucky homepage. Product and category templates are where store speed usually breaks, and fixing a template lifts every page built on it. Our ecommerce site speed guide covers the common culprits in depth.

Mobile is not a separate checkbox. It is the default. Google has moved every site to mobile-first indexing, which means the mobile version of your store is the version Google indexes and ranks. Audit the mobile rendering for the same content, links, and structured data as desktop. If something only appears on desktop, to Google it may as well not exist.

Step 3: Fix the ecommerce-specific traps

This is the section generic SEO checklists skip, and it is where stores win or lose. Three problems are almost unique to ecommerce, and the ones we see trip up stores most often.

Faceted navigation

Filters for size, color, price, and brand can multiply a few hundred products into a near-infinite space of URLs, which overloads crawling and buries your useful pages. The first job is to decide which filters deserve a place in Search. Some combinations match real search demand, like "black shoes under $100," and are worth keeping as indexable, well-optimized landing pages instead of treating every filter as noise. For the combinations no one searches for, Google's faceted navigation guidance says the preferred fix is to disallow those facet URLs in robots.txt. For the filters you do keep, use standard & separators, keep the filter order consistent, and return an HTTP 404 when a combination has no results. Google explicitly calls rel="canonical" and nofollow "generally less effective in the long term" for controlling facets, so do not lean on them as your main tool.

Faceted navigation multiplying one category page into 960 near-duplicate filter URLs from size, color, price and brand combinations
Faceted navigation multiplying one category page into 960 near-duplicate filter URLs from size, color, price and brand combinations

A blanket robots.txt rule keeps crawlers off the filter URLs you do not need in Search:

# robots.txt
Disallow: /*?*

Adapt the pattern to your own store, since a rule this broad also blocks other query-string URLs you may want crawled, such as .

Duplicate and variant URLs

Color and size variants, and near-identical products, often each get their own indexable URL that competes with the others. Where the pages are effectively the same, consolidate them by pointing a canonical to the main version. Keep variants that draw their own search demand, like distinct colors or models people look for by name, as separate indexable pages rather than canonicalizing everything to one URL. Google ranks the canonicalization methods by strength: a redirect is the strongest signal, a rel="canonical" annotation is also strong, and sitemap inclusion is weak. Use absolute URLs in your canonical tags, and never send conflicting signals by canonicalizing to one URL while redirecting or linking to another.

Thin category pages and dead products

Empty or near-empty category pages and abandoned product URLs drain crawl attention and rank for nothing. Give priority categories genuine intro copy, keep empty filter results out of the index, and decide deliberately what happens to a product when it leaves the catalog. is a decision, not a default:

SituationWhat to doStatus code
Temporarily out of stock, returningKeep the page live and indexable, mark availability as out of stock, link to alternatives200
Permanently gone, little valueLet it return 404 or 410404 / 410
Discontinued but has a clear replacementRedirect to the equivalent or closest matching product, never the homepage301

For a product that is coming back, keep the URL live and indexable and mark it out of stock, so shoppers and Google still get accurate information while it is unavailable. For one that is truly gone, a 404 or 410 is normal and healthy. A 301 is worth it when there is a genuine replacement product to send people to, not just a loosely related page, and never the homepage, because Google can treat an irrelevant redirect as a soft 404.

Find the technical issues hiding in your catalog

1350+ stores audited
Scan Your Store's SEONo credit card needed

Step 4: Audit on-page and content SEO

With the technical base sound, work through what each page actually says to search engines and shoppers.

  • Confirm each priority page targets one clear query, with the title, H1, and body all agreeing on it. Watch for two pages competing for the same term, since that keyword cannibalization splits your ranking signals between them.
  • Give every page a distinct, descriptive . Google's guidance is to have unique title text that describes each page, so a catalog where only one word changes between titles is a missed opportunity. The same goes for meta descriptions, which should be unique to each page. On a large catalog, Google is fine with generating them from a good programmatic pattern, as long as each one stays accurate and readable.
  • Rewrite the manufacturer descriptions everyone else is also using. When hundreds of stores paste the same supplier copy onto the same product, none of it stands out, and it reads as duplicate, thin content. Prioritize unique copy on your best-selling and best-margin products first.
  • Audit image SEO. Use descriptive alt text and filenames, and heed Google's warning to avoid stuffing alt attributes with keywords, which can look like spam. Serve images you want indexed as real <img> elements, not CSS backgrounds.
  • Check that product structured data is present and valid. Google supports two experiences with different requirements, and secondary guides often get this wrong by listing recommended fields as mandatory:
FieldMerchant listingProduct snippet
nameRequiredRequired
imageRequiredNot required
offers (with price and priceCurrency)RequiredOne of offers, review, or aggregateRating
review / aggregateRatingRecommendedOne of these or offers
availability, brand, skuRecommendedRecommended
shipping and return policyRecommended (merchant listing)Not used

The merchant listing experience needs name, image, and offers (with a price and priceCurrency), while a product snippet needs only name plus one of offers, review, or aggregateRating. For a product you actually sell, aim for the merchant listing fields, since Google treats that as the standard for shoppable pages, and the lighter product snippet is really for pages where the item is not directly purchasable. Fields like availability, brand, and sku are recommended, so add them for richer results, but do not treat them as blockers. Validate your markup with Google's Test before you trust it. Our product page optimization guide covers the content side of product pages in more depth.

Product rich result in Google with structured data fields for price, availability, and rating labelled, next to the title tag and meta description
Product rich result in Google with structured data fields for price, availability, and rating labelled, next to the title tag and meta description

A product Google cannot reach through links is a product Google struggles to rank. Two checks matter most here.

First, make sure your navigation and links are real, crawlable anchors. Google generally only follows a link that is an <a> element with an href attribute, so menus, filters, and pagination built purely on JavaScript click events can hide entire sections of a catalog. Use descriptive rather than "click here," which Google also recommends for helping it understand the destination. Pagination on collection pages is a main route Google takes to reach deep products, so give each page a unique, crawlable URL with real next links, and let paginated pages self-canonicalize rather than all pointing at page one.

Second, audit how your internal links flow. Priority products and categories should be reachable in a few clicks from the homepage and linked from relevant content, so equity and crawl attention reach the pages that earn revenue. The common "within three clicks" target is a useful rule of thumb from SEO practice rather than a Google threshold, so treat it as a guide, not gospel. On the off-page side, review your backlink profile with a dedicated backlink audit tool for lost links worth reclaiming, but keep toxic-link worry in proportion: Google has said most sites do not need to disavow links at all.

Step 6: Prioritize the fixes

An audit that ends in a list of two hundred issues helps no one. Rank what you find by impact against effort, and start where a single change moves many pages at once. Sitewide blockers and template-level Core Web Vitals failures usually belong at the top, because they can touch thousands of URLs rather than a single page. Broken canonicals and missing or invalid product schema matter too, though weigh them by how many pages and how much traffic they affect, and keep in mind that product schema mainly drives rich-result eligibility rather than core rankings. Cosmetic or one-off issues can wait.

Pro tip: Group fixes by template, not by page. Correcting a title-tag pattern or a schema block on your product template applies to every product at once, which is where the biggest wins in ecommerce SEO come from.

Platform notes: Shopify and WooCommerce

The checklist above is platform-agnostic, but the traps differ by platform. Shopify handles some basics for you, such as canonical tags and an auto-generated sitemap, yet it also forces URL structures and can create duplicate collection and variant URLs worth auditing closely. The Shopify SEO checklist and our walkthrough of how to audit your Shopify store go deeper on those quirks.

WooCommerce gives you more control and more responsibility. WooCommerce core outputs basic product structured data itself, while titles, meta descriptions, and richer schema usually come from an SEO plugin such as Yoast or Rank Math, and auto-generated product tag and attribute archives can bloat the index if left unchecked. The WooCommerce SEO checklist and our guide to auditing a WooCommerce store cover the specifics. Whichever platform you run, the same six steps apply. For the wider UX and conversion issues that store audits surface at scale, our analysis of 1,000 store audits covers that side.

FAQ

How long does an ecommerce SEO audit take?

It depends on catalog size and how deep you go. A small store with a few hundred products can be reviewed in a few hours to a day, while a large catalog with can take several days to a couple of weeks. There is no official figure, so treat these as working ranges rather than benchmarks.

How often should you run an ecommerce SEO audit?

A practical rhythm is a light check each quarter plus one deeper audit a year, with an extra audit triggered by a site migration, a noticeable traffic drop, or a Google core update. Stores that change inventory or templates often lean toward the more frequent end.

Can you do an ecommerce SEO audit for free?

Much of it, yes. Google Search Console, PageSpeed Insights, the Rich Results Test, and the free tier of a crawler like Screaming Frog cover indexation, Core Web Vitals, structured data, and small-site crawls. Paid tools mainly add large-scale crawling, backlink data, and prioritized issue scoring, which matter more as your catalog grows.

What is the difference between an SEO audit and a CRO audit?

An SEO audit checks whether search engines can find, crawl, and rank your store, so it is about earning organic traffic. A audit checks whether that traffic turns into sales. They overlap on speed and page quality, but they answer different questions, and a healthy store needs both.

JR
Jakub Rusniok
Founder of Ecomhint

Jakub is the founder of Ecomhint, an AI-powered ecommerce audit tool focused on UX and conversion optimization. He helps online stores identify friction points across product pages, cart, and checkout using CRO best practices and original research data.

Recent articles

Get CRO tips weekly

Get actionable conversion tips delivered to your inbox every week.

Ready to apply what you've learned?

Find conversion issues on your store with a detailed UX and performance review.

Audit My Store

No credit card needed

1350+ stores audited

Ready to apply these tips?

A free audit checks your store against the same things this article covers and tells you which ones need attention first.

Free preview  •  No credit card  •  Nothing to install