SEO

Faceted navigation and SEO: how to set up store filters without cluttering the index.

How to set up store filters for SEO: which combinations to index, which to block, and when to use robots.txt or canonicals. Based on Google's docs.

Filters are one of a store’s most important features for customers and one of the biggest sources of SEO problems. A few filters with a few values each easily add up to thousands of URL combinations. Running SEO for large stores, I have seen indexes bloated to many times the number of products. It can be fixed without making the store worse for shoppers. I lean on Google’s faceted navigation documentation and on what has worked in practice.

Why filters are an SEO problem

Every combination of filters and sorting is a separate URL. To Googlebot they look like more pages to visit, even though they show almost the same products. The effects:

  • wasted crawling: Google spends time on thousands of variants instead of new products and categories,
  • duplicates in the index: many similar pages compete for the same queries,
  • extra server load: Google notes that crawling filter URLs often strains servers with no real benefit.

Which filters to index and which to block

IndexFilters with real demand"Women's running shoes", "grey corner sofa", popular brands. These pages answer specific searches.
BlockCombinations without valueSorting, price ranges, several filters at once, combinations with no results.
Base the decision on keyword demand data, not on which filters are technically available.

The simplest rule: a filter page deserves indexing if people search for that phrase and it makes sense as a separate landing page. Then treat it like a subcategory, with its own title, heading, short description and a place in internal linking.

How to block unnecessary filters

Google describes several methods and makes it clear which work better:

  1. robots.txt: disallowing filter parameters is the most reliable way to stop crawlers spending time on them. You can leave one unfiltered product listing accessible.
  2. URL fragments after #: filters written after # are not crawled or indexed, because Google generally does not support fragments. A good option for filters that work only in the browser.
  3. rel=“canonical” and rel=“nofollow”: weaker signals. A canonical pointing to the unfiltered version may reduce crawling over time, and nofollow only works if every link to that URL uses it.

If filters are indexed: technical rules

  • Use the standard & separator between parameters. Commas, semicolons or brackets are hard for crawlers to interpret.
  • Keep a consistent filter order in path-based URLs and do not allow duplicate filters.
  • Return a 404 for combinations with no results, duplicate or nonsensical filters and non-existent pagination pages, instead of redirecting them to a generic error page.

How to check whether filters are cluttering your index

  • In Google Search Console, compare the number of indexed pages with the number of products and categories. A much larger index is a warning sign.
  • In the page indexing report, look for URLs with filter and sorting parameters.
  • In server logs, check what share of Googlebot visits go to filter URLs.
  • A crawl of your store with an SEO tool shows how many combinations the navigation links generate.

Fixing filters is one of the most common tasks in my store audits. To check your store, see e-commerce SEO or the SEO audit. And if you are planning a platform change, read the store migration checklist too.

Sources

  1. Managing crawling of faceted navigation URLs - Google

Was this article helpful?

About the author. Maciek - SEO & GEO consultant with 10+ years of experience, formerly Head of SEO at companies including Gemini Polska and Staples Solutions. More about me

Filters and SEO questions.

Will blocking filters in robots.txt hurt my store?

Not if you block only combinations with no search value. Google's faceted navigation documentation points to robots.txt as a way to limit crawling of unnecessary filter URLs. Valuable filter pages you want in search results must stay accessible.

Is a canonical tag on filter pages enough?

It is a weaker signal. Over time Google may crawl such URLs less often, but it can still crawl them. With many filters, a robots.txt block for combinations without value works better.

Which filters are worth indexing?

Those that match specific searches and make sense as a separate page, such as a category with gender, product type or a popular brand. Check this in keyword demand data and in Google Search Console.

What about sorting and pagination?

Sorting does not create new content, so its URLs are usually not worth indexing. Pagination should stay crawlable because it leads to products, but non-existent pagination pages should return a 404.