SEO Library Technical SEO 1 min read

Faceted Navigation

In short

Faceted navigation lets users filter listings by attributes like size, colour, brand or price. It's great for shoppers but can create huge numbers of crawlable, duplicate URLs if not controlled.

On this page

The problem#

An online store with 10 colours, 8 sizes, 15 brands and 5 price bands can generate thousands of URLs for a single category — /shoes/?color=red&size=9&brand=nike&sort=price and every combination. Most are near-duplicates with no search demand. Crawlers waste time on them, important products get crawled less, and the index fills with thin pages.

Decide which facets deserve to be indexed#

Facet type Example Approach
High search demand “red running shoes”, “nike running shoes” Indexable, static URL, unique title and intro text
Useful but no demand Size 9, in stock only Not indexed — canonical to the category, or noindex
Sorting and view options ?sort=price, ?view=grid Canonical to the unsorted URL; consider blocking in robots.txt
Multi-select combinations Colour + size + brand + price Block crawling (robots.txt) or render filters without crawlable links

Implementation tips#

  • Keep parameter order consistent so the same filter set always produces the same URL.
  • Use canonicals for duplicates, but don’t rely on them alone for crawl control.
  • Use robots.txt to stop crawl traps — but not on pages whose noindex you need Google to see.
  • Link to valuable facet pages from category pages and menus so they’re discovered.
  • Monitor Search Console’s Crawl stats and Pages report after changes.

Related: crawl budget, index bloat, e-commerce SEO guide.

Share this term