E-commerce
Faceted Navigation Without the Duplicate-Content Mess
Faceted navigation — the size, color, price, and brand filters on a category page — is one of the best conversion tools an e-commerce site has, and one of the most reliable ways to accidentally generate tens of thousands of near-duplicate URLs that choke a crawl budget. Every combination of filters a shopper can select is, by default, its own unique URL with its own query parameters. A catalog with even a modest number of filters can produce combinatorial URL counts in the hundreds of thousands.
The core problem is that most of those combinations return nearly identical content to the base category page, just re-sorted or lightly filtered, which is the textbook definition of duplicate content at scale. Search engines that spend their limited crawl budget on 50,000 filter-combination URLs are spending less of it on the pages you actually want indexed — new products, restocked items, the pages that convert.
The fix starts with deciding, deliberately, which filter combinations deserve to be indexable pages and which don't. A combination with real, sustained search demand — 'women's running shoes size 8,' say — can justify being a real, canonical, indexable page with its own title and intro copy. A combination like 'blue AND size 8 AND under $50 AND in stock' almost never has search demand of its own and should be handled as a non-indexable, parameter-driven view instead.
Mechanically, that split is enforced with a combination of canonical tags pointing non-indexable combinations back to their parent category, a robots meta noindex on the thinnest combinations, and — where the platform supports it — keeping those parameters out of Google Search Console's indexed count entirely via URL parameter handling or a well-structured robots.txt disallow pattern. None of these tools work well in isolation; they need to agree with each other, because a page that's both canonicalized elsewhere and separately noindexed sends a mixed signal.
The last piece is internal linking discipline: only link to the filter combinations you've decided should be indexable, from places like curated collection pages or navigation, so crawlers discover the right subset organically instead of finding every combination through the filter UI itself. Get this right once, as part of the information architecture, and it doesn't need revisiting every time a new product attribute gets added.