Skip to content
SEO Madmanby Adam Hafez
Free tool

Faceted navigation URL parameter checker

Faceted navigation URL checker: test a filtered URL's parameters against Google's crawling guidance and get a robots.txt block. Free, runs in your browser.

Runs entirely in your browser. Nothing you enter is uploaded, logged or stored.

Suggested robots.txt block

One way to handle these, taken directly from Google's own example: disallow crawling of the facet parameters and allow the unfiltered listing page.

This tool only sees the one URL you type, parsed with URLSearchParams. It cannot crawl your site to count how many real combinations exist, so the parameter-count check is a labelled heuristic, not a measurement of your actual URL space.

Key takeaways

  • Google says parameter-based faceted navigation can generate infinite URL spaces, which cause overcrawling and slower discovery of new pages.
  • Google recommends the standard & separator, because commas, semicolons and brackets are hard for crawlers to detect as separators.
  • Google publishes no parameter-count threshold, so this tool's warning at four or more parameters is a labelled heuristic, not an official rule.
  • Google names robots.txt and URL fragments as the stronger ways to stop facet crawling, and rel=canonical and nofollow as generally less effective.
  • This tool only reads the one URL you paste and cannot crawl your site to count the combinations your filters really generate.

What it takes

  • A faceted or filtered listing URL, including its full query string

More tools

All of them free, all of them browser-only.

Browse the tools

How to use it

  1. 1Paste a real filtered listing URLUse a URL exactly as your filter UI generates it, including every parameter your color, size, sort and other facets add.
  2. 2Check the parameter separatorGoogle's documentation recommends the standard & character between parameters; a comma, semicolon or bracket used as a separator is harder for crawlers to detect correctly.
  3. 3Read the parameter countA high count is this tool's own heuristic flag for combinatorial growth, not a published Google number, since filters combine multiplicatively rather than by addition.
  4. 4Check for session or tracking identifiersA session id or click-tracking parameter is one more parameter in the URL, so it multiplies every facet combination by another dimension.
  5. 5Check path-encoded filters for repeated segmentsIf your filters live in the URL path rather than the query string, Google's documentation asks for a consistent order and no duplicate filter segments.
  6. 6Copy the suggested robots.txt blockThe generated lines follow Google's own example pattern, disallowing the recognized facet parameters. Edit the allow line to match your real unfiltered listing URL.

What the analyzer does

Google’s crawling documentation explains the problem this tool looks for. The most common way to build faceted navigation, with URL parameters, “can generate infinite URL spaces”, which leads to overcrawling and slower discovery of new pages. Paste one filtered URL and the tool runs five checks on it:

  • Parameter separator. Google recommends the “industry standard URL parameter separator ’&’”, because commas, semicolons and brackets are hard for crawlers to detect as separators. Any of those characters in the raw query string is a Warning. Percent-encoded forms are ignored.
  • Parameter count. Four or more parameters is a Warning. That number is the tool’s heuristic, not Google’s. No parameters at all is Info.
  • Parameters that look like facets. Names such as sort, color, colour, size, price, brand, view and page are matched against a fixed list. Always Info, since a name match does not prove the parameter changes the page.
  • Session or tracking identifiers. sessionid, sid, phpsessid, jsessionid, utm_source, utm_medium, gclid and fbclid raise a Warning.
  • Repeated path segments. Google asks that path-encoded filters keep a consistent order and that “no duplicate filters can exist”. A repeated segment is a Warning.

How to read the results

Warnings point at the URL shapes that multiply fastest. A long parameter list and a session identifier both add dimensions to every combination. Info rows describe the URL without judging it. The robots.txt box below the checks turns the recognized facet names into disallow lines.

Decide first whether these URLs should be indexed. If not, Google lists robots.txt and URL fragments as ways to prevent crawling, and calls rel=canonical and nofollow “generally less effective in the long term”. If they should be, keep them crawlable, use the & separator, keep a fixed filter order in paths, and return a 404 for combinations with no results.

Worked example

The tool loads with Google’s own example URL plus two extra parameters: https://example.com/items.shtm?products=fish&color=radioactive_green&size=tiny&sort=price_asc&sessionid=8f3ac1

  • Parameter separator: Pass.
  • Parameter count: Warning, “5 parameters”.
  • Parameters that look like facets: Info, “color, size, sort”. products is not on the list.
  • Session or tracking identifiers: Warning, “sessionid”.
  • Repeated path segments: Info, none found.

The suggested block reads user-agent: *, then disallow: /*?*color=, disallow: /*?*size= and disallow: /*?*sort=, then allow: /*?color=all$. Google’s example uses Googlebot as the user agent and allows ?products=all, a dedicated listing that shows every product unfiltered. The tool reuses the first recognized parameter for that line, so change it to your real all-items URL or delete it. It also leaves products and sessionid out of the block, since neither is on its facet list.

Common mistakes it catches

  • Non-standard separators, such as filters joined with commas or semicolons.
  • Session and tracking parameters carried through filtered links.
  • Duplicate filters in the path, such as a segment that appears twice.
  • Deep filter stacks, where every added facet multiplies the URL count.

It cannot see a filter combination that returns an empty page with a 200 status, which Google says should return a 404. Check those with a crawl.

Sources

  1. 1.Managing crawling of faceted navigation URLs - Google Search CentralPrimary
  2. 2.How to specify a canonical URL with rel="canonical" and other methods - Google Search Central

Frequently asked questions

Should I block faceted navigation URLs in robots.txt?

If you do not need them indexed, Google lists robots.txt as one way to prevent crawling, and says there is often no good reason to allow crawling of filtered items. If you do need them indexed, keep them crawlable and follow Google's best practices instead.

Is rel=canonical enough for faceted URLs?

Google says pointing rel=canonical at the unfiltered version may, over time, decrease crawling of the filtered versions, but calls canonical and nofollow generally less effective in the long term than robots.txt or URL fragments.

Why does four parameters trigger a warning?

Four is this tool's own heuristic. Google says combining filters often means a very large number of possible URLs, but it publishes no number at which that starts.

What should a filter combination with no results return?

Google says to return a 404 status code under that URL, not a redirect to a common not found page. The same applies to duplicate filters, nonsensical combinations and nonexistent pagination URLs.

Does this tool crawl my site?

No. It parses the single URL you paste with the browser's URLSearchParams. It cannot see how many filter combinations your site actually links to.