Technical Ecommerce SEO

The technical SEO problems unique to online stores — faceted navigation and URL parameters, pagination, product and variant pages, out-of-stock handling, product schema, and crawl budget on large catalogs. A technical-SEO view of the Ecommerce SEO pillar.

First published: Jun 27, 2026 · Last updated: Jul 14, 2026 · Advanced
demand #1 in Ecommerce SEO#271 in Technical SEO#378 on the site

Ecommerce sites hit technical SEO problems that brochure sites never do: faceted navigation that spawns millions of parameter URLs, paginated category pages, near-duplicate product variants, products that go out of stock, and catalogs large enough that crawl budget and index bloat become real. This hub gathers those technical mechanics — they're native to the Ecommerce SEO pillar (and to other technical clusters like structured data and website structure) and cross-listed here so the implementation pieces sit in one place. Merchandising, category strategy, and platform choice live in the Ecommerce SEO section.

TL;DR — On a large catalog the through-line is crawl economics: faceted navigation, pagination, and variant handling all reduce to controlling which URLs Google spends budget on and which it consolidates or drops. Get it wrong and you get index bloat (millions of thin parameter pages) or the opposite (important pages never crawled). Below are the three levers for faceted navigation, plus how pagination, variants, and out-of-stock pages should be handled.

Evidence for this claim Google recommends crawlable navigation from menus to categories, subcategories, and products, with direct links covering the catalog. Scope: Google ecommerce site-structure guidance. Confidence: high · Verified: Google Search Central: Ecommerce site structure Evidence for this claim Product structured data and Merchant Center feeds provide Google with product information and can enable richer shopping appearances. Scope: Google product data surfaces. Confidence: high · Verified: Google Search Central: Share product data

Crawl economics is the through-line

The reason ecommerce breaks technically where a blog doesn’t is scale: a catalog can generate more crawlable URLs than Google will ever spend budget fetching. Every technical decision on a store — faceted navigation, pagination, variant consolidation — is really a decision about where that finite crawl budget goes. Index bloat and under-crawling are the two failure modes, and they pull in opposite directions, so the work is deciding, per URL pattern, which one you’re guarding against.

Faceted navigation: three levers

Filters like size, color, and sort can multiply a single category into millions of parameter URLs. There are three levers, and they do different jobs:

# robots.txt — stop Google crawling filter combinations you never want indexed
Disallow: /*?*sort=
Disallow: /*?*color=
<!-- On a filtered URL you'd rather consolidate than block: canonical to the clean category -->
<link rel="canonical" href="https://example.com/shoes/" />

A robots.txt Disallow saves crawl budget, but a disallowed URL can’t pass its canonical or be de-indexed by an on-page tag, and can still be indexed URL-only if linked. A canonical consolidates signals to the clean category, but Google still spends budget crawling the filtered URL to read it. A noindex, follow removes the page from the index while keeping its links crawlable, but likewise costs crawl. Pick per pattern: block the infinite, low-value combinations; canonicalize the useful ones that near-duplicate a real category; reserve noindex for pages that must leave the index but stay crawlable.

The correct control follows the URL pattern's demand and usefulness; there is no single rule for every filter.

A faceted URL branches into four outcomes. Sort, tracking, or redundant combinations are blocked in robots.txt. Low-demand but navigable combinations canonicalize to the base category. Combinations with real search demand receive an indexable optimized page. Empty or nonsensical combinations return 404.

Pagination after rel=prev/next

Google stopped using rel="prev" / rel="next" as an indexing signal in 2019, so paginated category pages are each treated as standalone. Page 2 and beyond should be indexable, self-canonical pages — not canonicalized to page 1, which hides their products from Google — and every product should be reachable within a few clicks of a crawlable link. A “view all” page can be a cleaner canonical target when the full list loads at a reasonable size.

Variant consolidation with canonicals

Near-duplicate pages for the same product in different colors or sizes compete with each other unless you consolidate. Pick one canonical product URL and point the variants at it, or model the set with ProductGroup structured data so Google understands them as one product with variants. The threshold call is whether a variant has its own search demand — a distinct color people actually search for may deserve its own indexable page rather than being folded away.

Out-of-stock: the signal you send

An out-of-stock page is a signal decision, not a delete decision. If the product is coming back, keep the URL live (HTTP 200) with availability set to OutOfStock in product schema — a 404 throws away the page’s accumulated signals and any links. If it’s gone for good with no replacement, 404 or 410 it; if there’s a clear successor, 301 to it. The mistake is reflexively 404-ing seasonal items you’ll restock.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin an expert quote first.