Audit a canonical URL inventory
Preserve distinctions until you have evidence to consolidate them.
Start from the URLs you actually serve
Combine a public sitemap with known navigation routes and relevant Search Console findings. Keep the source of each URL. A list assembled only from guessed keyword combinations is not an inventory of the live site.
Do not normalize away meaning
Hostnames are case-insensitive, but paths may be case-sensitive. A trailing slash or query parameter can alter application behavior. The checker intentionally keeps these distinctions. Inspect redirects and content before deciding that two addresses should become one.
Choose one preferred address
For genuinely equivalent public pages, choose a preferred URL based on the site’s existing structure and user needs. Keep internal links and sitemap entries consistent with it. Use a suitable redirect for retired equivalents and a canonical annotation where appropriate; verify the live result.
Treat canonical signals as a preference
Google describes redirects and rel=canonical annotations as strong signals and sitemap inclusion as a weaker signal. They express a preference; they do not force Google to select that URL. Keep the signals consistent, and check the selected canonical in Search Console once the page has been processed.
Do not substitute an indexing block
A robots.txt disallow is not a canonicalization method: Google may still index the URL without its content. A noindex directive removes a page from Search; it is not the recommended way to choose between equivalent public pages on one site. Keep genuine private or excluded pages out of Search for their own reasons, and use the canonical mechanisms for duplicates.
Record the change and watch for mistakes
Keep a mapping from old to preferred URLs, the reason for each change and the verification result. Avoid redirecting every missing URL to the homepage: visitors need a meaningful destination or a real not-found response. Recheck important inbound paths after deployment.
When the signals disagree
Disagreement usually looks like this: the sitemap lists one address, internal links point to a second, and a legacy redirect lands on a third. Work through it in a fixed order. First, establish what each address serves today — status code and content — because a signal pointing at a redirect or an error is noise, not a vote. Second, pick the preferred URL on structural grounds: the address your navigation and templates already treat as primary. Third, align the cheap signals — sitemap entries and internal links — in the same change as the canonical annotation, so no crawl ever sees a mixed state. Fourth, verify after processing: compare the user-declared and Google-selected canonicals in Search Console, and keep the old-to-preferred mapping with the reason for the choice. Most canonical problems are really record-keeping problems.
Quick answers
What is a canonical URL inventory?
It is the recorded list of the URLs you actually serve, grouped where several addresses deliver equivalent pages, with one preferred address chosen per group. It is built from your sitemap, navigation and search data — not from guessed keyword combinations — and each URL keeps a note of where it was found.
Should I merge two URLs that differ only by a trailing slash?
Not automatically. A trailing slash can change how an application behaves, and the two forms may serve different content or different status codes. Inspect what each address actually returns and how it is linked before treating them as duplicates; the inventory studio deliberately preserves the distinction until you decide.
Is a rel=canonical annotation a command?
No. Google treats redirects and rel=canonical annotations as strong signals that express a preference, and sitemap inclusion as a weaker one. The preference is normally honored when the signals agree; when they conflict, Google chooses. Keep links, sitemap entries and annotations pointing at the same preferred URL.
Can I use robots.txt to consolidate duplicate URLs?
No. A robots.txt disallow blocks crawling, not indexing: the URL can still appear in search results without its content ever being read. It is also not a way to choose between equivalent pages. Use a redirect for retired equivalents and a canonical annotation where a page must stay reachable.
Keep working through the question
pSEO Tech · Published . Updated . Prepared with AI assistance; editorial approach and corrections are described on our method page. Examples are illustrative, not case-study results.
References and further reading
- Google: specifying a canonical URL — Signal strengths, consistent preferred URLs, and why robots.txt or noindex do not replace canonicalization.