URL with query parameters
What it is
The page’s URL contains a query string, the part after ?, such as ?color=blue&size=m or ?utm_source=newsletter. Parameters are normal for filters, sorting, pagination and tracking. The finding means your sitemap lists a URL with parameters as a page in its own right.
Why it matters
To a crawler, each parameter combination is a separate URL. Google warns that overly complex URLs, especially those with multiple parameters, can create unnecessarily high numbers of URLs, which wastes crawling and spreads signals across near-copies of one page. A tracking or session parameter on a sitemap URL is a mistake. A parameter that produces distinct, useful content, such as a category filtered to one brand, can be fine.
How Asky checks it
Asky checks the page’s URL as your sitemap lists it. The page is reported when it has a query string with at least one character after the ?, whatever the parameter is; a bare ? is ignored. Parameters on the links inside your pages are not checked, only the listed URL. The check runs in every audit, including audits of selected pages, on every page whose HTML Asky fetched; a page answering 4xx or 5xx is reported for its status alone. A URL that redirects to another audited page reports only the redirect.
Reported as an opportunity with low severity.
How to fix it
- Identify the parameter. Tracking parameters such as
utm_sourceorgclid, session IDs and sort orders do not belong in a sitemap: list the clean URL instead, and make the parameter version’s canonical tag name it. - Fix the sitemap generator or plugin that adds them, so the clean URL is listed for every page.
- If a filtered view deserves its own page, consider a static path such as
/shoes/bluein place of?color=blue, with a 301 from the old URL and the new path listed in your sitemap. Internal links left on the old URL are reported as links to internal redirects, so update them. - For filter combinations you do not want indexed, keep them out of the sitemap and, as Google’s faceted navigation guidance describes, disallow them in robots.txt or point their canonical tag at the unfiltered page.
- To leave it as it is: if the parameter page is meant to be indexed, such as a paginated archive or a filter page people search for, mark the issue resolved.
Example
The sitemap lists a tracking URL for https://example.com/blog/pricing-guide. The clean URL replaces it:
<!-- Before -->
<url><loc>https://example.com/blog/pricing-guide?utm_source=newsletter</loc></url>
<!-- After -->
<url><loc>https://example.com/blog/pricing-guide</loc></url>