# Ecommerce SEO Audit: What to Check on an Online Store

> An ecommerce SEO audit, step by step: faceted navigation, product variants, pagination, out-of-stock pages, product structured data and what to fix first.

URL: https://seorecheck.com/blog/ecommerce-seo-audit-guide · Published: 2026-10-15 · [Українська](https://seorecheck.com/ua/blog/ecommerce-seo-audit-guide.md), [Español](https://seorecheck.com/es/blog/ecommerce-seo-audit-guide.md)

An **ecommerce [SEO audit](https://seorecheck.com/blog/what-is-an-seo-audit)** is a review of an online store that checks whether search engines can crawl, index and understand your category and product pages, and whether those pages deserve to rank. It differs from a general audit because stores create thousands of near-duplicate URLs through filters, sorting, variants and pagination, and those URLs make up most of the problems.

A five-page brochure site and a 20,000-SKU shop both need clean titles and fast pages. Only the shop has a filter sidebar that can turn 300 categories into millions of crawlable URLs. This guide covers the checks that are specific to stores, in the order that usually matters most. For the general checks every site needs, see our [SEO audit checklist](https://seorecheck.com/blog/seo-audit-checklist).

## What is an ecommerce SEO audit and how is it different?

An ecommerce SEO audit covers the same base as any [technical SEO audit](https://seorecheck.com/blog/technical-seo-audit): crawling, indexing, rendering, speed and on-page signals. On top of that it checks the URL patterns stores generate automatically: filter combinations, sort orders, variant URLs, paginated categories, internal search results and discontinued products.

The difference is scale. One template mistake, such as a missing canonical on product pages or a filter that creates a new URL on every click, repeats across every product. So the audit looks for patterns, not single pages. "Product pages have duplicate titles" is a template fix. "These 40 pages have duplicate titles" is cleanup.

A useful ecommerce audit answers three questions:

- **Can Google reach every product and category you want to sell?**
- **Is Google wasting its time on URLs you don't want indexed?**
- **Do product and category pages give searchers and Google enough to choose you?**

## Which ecommerce issues should you check first?

Check indexing and crawl waste first, because they decide whether your other work counts at all. A store with 2,000 products and 400,000 crawlable filter URLs has a crawling problem before it has a content problem. After that, check duplicate and variant handling, then product page content and structured data, then speed.

| Priority | Check | Typical symptom | Where to look |
|---|---|---|---|
| 1 | Indexing of key categories and products | Revenue pages missing from Google | Search Console Pages report, `site:` spot checks |
| 2 | Faceted navigation and parameters | Huge numbers of "[Discovered – currently not indexed](https://seorecheck.com/blog/discovered-currently-not-indexed-fix)" URLs | Crawl, Search Console Crawl stats, server logs |
| 3 | Variants and duplicate product paths | Same product under several URLs | Crawl: canonical and duplicate title reports |
| 4 | Pagination | Products deep in a category never get crawled | Crawl depth, links between pages |
| 5 | Out-of-stock and discontinued products | Soft 404s, redirect chains to the homepage | Crawl status codes, Search Console |
| 6 | Product structured data | Missing price or availability in results | Rich Results Test, Search Console enhancements |
| 7 | Thin or copied product content | "Crawled – currently not indexed" on products | Compare your text with the manufacturer's |
| 8 | Speed on category and product templates | Poor LCP on image-heavy pages | Core Web Vitals report, Lighthouse |

## How do you audit faceted navigation?

Faceted navigation is the filter sidebar: color, size, brand, price. Each combination can produce a new URL, and Google warns that crawling them means "increased resource usage on your server and, potentially, slower discovery of new URLs on your site" ([Google Search Central: faceted navigation](https://developers.google.com/search/docs/crawling-indexing/crawling-managing-faceted-navigation)).

To audit it, crawl the site with filters followed and count URLs per category. If one category produces thousands of parameter URLs, you have a crawl trap. Then decide which filters deserve their own indexable page. "Women's running shoes" may match real searches. "Blue, size 38, under $80, sorted by newest" does not.

Google's documented options for the rest, in that same guide:

- **Disallow filter URLs in robots.txt.** Google says there is often "no good reason to allow crawling of filtered items". See our [robots.txt guide](https://seorecheck.com/blog/robots-txt-seo-guide) for syntax.
- **Use URL fragments (`#`) for filters** that should never be crawled, since Google generally doesn't support fragments in crawling and indexing.
- **Canonicalize filtered pages to the unfiltered category.** Google calls this "generally less effective in the long term" than the options above.

If you do let some filters be crawled, use the standard `&` separator, keep a consistent parameter order and return a real 404 status when a filter combination has no results.

```
User-agent: *
Disallow: /*?*sort=
Disallow: /*?*price=
```

Test rules like these against real URLs before deploying: one wildcard too broad can block your categories.

## How should product variants and duplicate URLs be handled?

Each meaningful variant can have its own URL, and the main product URL should be the canonical. Google's [ecommerce URL structure guide](https://developers.google.com/search/docs/specialty/ecommerce/designing-a-url-structure-for-ecommerce-sites) shows both path and query patterns (`/t-shirt/green` or `/t-shirt?color=green`) and says not to rely on fragments, because `/product/t-shirt#black` and `/product/t-shirt#white` look like one page to Google.

The same guide gives three rules worth checking across the whole store:

1. **One product, one path.** If a product is reachable at `/shoes/trail-x` and `/sale/trail-x`, choose one URL and link to it everywhere.
2. **No tracking or session parameters in internal links.** Links such as `?ref=homepage-banner` or `?sessionid=` create short-lived duplicate URLs.
3. **The same URL everywhere.** Use the same URL in internal links, the sitemap and `rel="canonical"`.

In a crawl, look for products whose canonical points somewhere other than the URL your menus link to, or canonicals pointing at redirected or noindexed pages. Our [canonical tag guide](https://seorecheck.com/blog/canonical-tag-guide) covers how to fix these conflicts.

## How should paginated category pages be set up?

Each page in a paginated category should have its own URL and its own canonical, and pages should link to each other with normal `<a href>` links. Google's [pagination guidance](https://developers.google.com/search/docs/specialty/ecommerce/pagination-and-incremental-page-loading) says not to make page 1 the canonical for the whole series, and to use something like `?page=n` rather than `#page=n`.

Google also says it no longer uses `rel="next"` and `rel="prev"`, so those tags alone don't fix anything. Check these points:

- Does page 2 have `rel="canonical"` pointing to page 2, not page 1?
- Can a crawler reach the last page through plain links, or only through a "Load more" button that runs JavaScript?
- With infinite scroll, is every product also listed in the XML sitemap or a Merchant Center feed, as Google suggests?

A common audit finding: products on page 9 of a large category are five or six clicks from the homepage and rarely crawled. Better [internal linking](https://seorecheck.com/blog/internal-linking-seo-guide) from subcategories, related products and editorial content shortens that path.

## What do you do with out-of-stock and discontinued products?

Temporarily out-of-stock products should usually stay live with a 200 status, an accurate availability value and alternatives on the page. Discontinued products need a decision: redirect to a close replacement, or return 404 or 410 if nothing replaces them.

Problems an audit typically finds:

- **Soft 404s.** Removed products show "This product is unavailable" with a 200 status and almost no content.
- **Redirects to the homepage.** Hundreds of discontinued products pointing to `/` give users nothing useful and are often treated like soft 404s.
- **Redirect chains** after several catalog migrations.
- **Stale sitemaps** still listing removed products.

Keep pages that have links, steady traffic or a successor product. Let the rest go with a clean 404 or 410.

## Is product structured data required?

No. Google says structured data isn't required to appear in Search but "can help Google understand your page better and display it as a rich result" ([share your product data with Google](https://developers.google.com/search/docs/specialty/ecommerce/share-your-product-data-with-google)). The same page notes that Merchant Center participation is mandatory for some surfaces, such as listings in the Shopping tab.

Google's [Product structured data documentation](https://developers.google.com/search/docs/appearance/structured-data/product) separates two features. **Product snippets** are for pages about a product, such as reviews. **Merchant listings** are for pages where people can buy, and they support details like shipping and returns. Google says that providing both structured data and a Merchant Center feed "maximizes your eligibility to experiences".

In the audit, check product templates for:

- `Product` markup with `name` and an `offers` block containing `price`, `priceCurrency` and `availability`
- Values that match the visible page, especially price and stock status after sales or currency switches
- Markup that is in the HTML or reliably rendered, not added by a script that sometimes fails
- Errors and warnings in the Rich Results Test and Search Console enhancement reports

Price mismatches are the classic ecommerce error: the page shows the sale price while the markup still has last month's price.

## Why are product pages "crawled but not indexed"?

The usual reason is that Google sees little new value in the page. Thousands of product pages with the manufacturer's description, a photo and a price look the same as on every other store selling that item. Google crawls them and often doesn't index them. Our guide on [crawled – currently not indexed](https://seorecheck.com/blog/crawled-currently-not-indexed-fix) covers the full diagnosis.

For stores, the fixes are mostly about content:

- Write your own descriptions for top sellers first, then for the long tail.
- Add things only you have: real photos, sizing notes, compatibility tables, customer questions and reviews.
- Give category pages a short, useful intro and buying guidance, not a block of keyword text at the bottom.
- Merge very thin variant pages into one strong product page.

Prioritize by revenue. Rewriting 50 bestseller descriptions usually matters more than touching 5,000 slow sellers.

## How do speed and Core Web Vitals affect online stores?

Stores are image-heavy, run many third-party scripts (reviews, chat, analytics, personalization) and often use JavaScript-heavy themes, so they tend to struggle with [Core Web Vitals](https://seorecheck.com/blog/core-web-vitals-guide). The targets are LCP ≤ 2.5 s, INP ≤ 200 ms and CLS ≤ 0.1 at the 75th percentile of real-user data.

Audit by template, not by single URL: home, category, product, cart. Typical findings are a hero or main product image that loads lazily, filter widgets that block interaction and slow INP, and review or promo banners that push content down and cause layout shift. One template fix improves every page that uses it.

## How do you run an ecommerce SEO audit step by step?

A practical order for a store of any size:

1. **List your money pages.** Top categories and products by revenue. These set your priorities.
2. **Check indexing.** In Search Console, see which of those pages are indexed and why others are excluded.
3. **Crawl the site** with a crawler that renders JavaScript, and compare the URL count with your real product and category count.
4. **Find crawl waste.** Group URLs by parameter: filters, sorting, tracking, internal search.
5. **Check duplicates and canonicals** for variants, multiple category paths and pagination.
6. **Check status codes** for removed products, redirects and soft 404s.
7. **Validate structured data** on product templates against the visible page.
8. **Measure speed** per template in field data and Lighthouse.
9. **Review content** on top categories and products.
10. **Prioritize by impact** and recheck after the fixes are live.

If you'd rather not run this by hand, the free [SEORecheck audit](https://seorecheck.com/request) crawls your store with a real browser and Lighthouse and shows real examples from your pages of duplicate and parameter URLs, canonical conflicts, status code problems, missing structured data and slow templates. You can see the format in the [sample report](https://seorecheck.com/sample).

Stores also increasingly get questions through AI assistants. That depends on the same basics: crawlable, indexable pages with clear product facts. See [GEO vs SEO](https://seorecheck.com/blog/geo-vs-seo-differences) for what changes there.

## Key takeaways

- An ecommerce SEO audit focuses on the URLs stores generate automatically: filters, sorting, variants, pagination and removed products.
- Check indexing of revenue pages and crawl waste first. Faceted navigation is the most common crawl trap.
- Give each product one URL, keep tracking parameters out of internal links and use the same URL in links, sitemaps and canonicals.
- Paginated pages need their own canonicals and crawlable links. Google no longer uses `rel="next"`/`rel="prev"`.
- Product structured data is optional but useful. Price and availability must match the visible page.
- Fix templates, not single pages, and rank fixes by revenue impact.

---

## Want to know what to fix on your site?

Get a free SEO audit preview: your score and real issues, with evidence from your pages.

- [Get a free SEO audit preview](https://seorecheck.com/request)
- [See a sample report](https://seorecheck.com/sample)
