URL parameter handling is the way a site controls addresses that carry query strings, the part after a question mark such as ?colour=blue&sort=price. Handled well, parameters let visitors filter, sort and track without search engines wasting effort on thousands of near-identical pages.
How URL parameters work
A parameter is a key and a value added to a URL. Some change what the page shows, such as filters, sort orders and pagination. Others change nothing visible, such as UTM tracking parameters, session IDs and affiliate codes. Each different combination is, technically, a different URL.
On a clothing shop with ten colours, eight sizes and four sort orders, one category page can produce hundreds of URLs, most showing almost the same products. Add tracking codes from emails and adverts and the number grows further. This is a common source of crawl traps and duplicate content, especially with faceted navigation.
Google used to offer a URL Parameters tool in Search Console where site owners could say what each parameter did. It retired the tool in 2022, saying its systems had become good at working out parameters on their own. Control now sits entirely with the site.
Why it matters
Search engines give each site a finite amount of crawling attention. If Googlebot spends most of it on filter combinations, new products and updated pages may be discovered slowly, which is the concern behind crawl budget. Parameter URLs can also end up indexed in place of the clean version, split link signals, and clutter Search Console and analytics with duplicates.
For a small brochure site this rarely matters. For UK ecommerce sites on Shopify, WooCommerce or Magento with layered navigation, it is often one of the biggest technical issues on the site. In Search Console, the tell-tale signs are thousands of URLs listed as “Duplicate, Google chose different canonical than user” or “Crawled – currently not indexed”, most of them carrying question marks.
Parameters are not bad in themselves. Sorting, filtering and tracking are useful to visitors and marketers alike. The aim is simply that search engines see one clear version of each page that deserves to rank, and spend as little time as possible on the rest.
Common mistakes
- Blocking parameters in robots.txt and adding a canonical. If Google cannot crawl the URL, it never sees the canonical tag.
- Using parameters in internal links for tracking. Tagging your own menu or banner links with UTMs creates duplicates and overwrites the true traffic source in analytics.
- Letting every filter combination be indexable. A few filters, like a popular brand or colour, may deserve a page; thousands of combinations do not.
- Session IDs in URLs. Older platforms that add one per visitor create a unique URL for every session.
- Inconsistent parameter order. ?size=10&colour=red and ?colour=red&size=10 are different URLs to a crawler.
How to act on it
Crawl the site and list every parameter in use, then sort them into three groups: those that create pages worth indexing, those that change content but should not be indexed, and those that change nothing. For the first group, create clean, static URLs with unique titles and content. For the second, a canonical tag to the main version consolidates signals, but on large shops Google’s own faceted navigation guidance favours stopping crawlers reaching unneeded filter combinations at all, with robots.txt rules or filters that do not generate new crawlable URLs. For pure tracking parameters, keep them off internal links and make sure canonicals point at the clean URL.
Before blocking any pattern in robots.txt, check that nothing you want indexed lives behind it and that you do not need Google to see a canonical on those URLs. Working out the right mix for a specific platform is part of a technical SEO engagement.
