Canonical URLs help a website tell search engines which address should represent a page when the same or very similar content can be reached through multiple URLs. The most common duplicates come from HTTP and HTTPS variants, www and non-www hosts, tracking parameters, filtered category views, print pages, and older paths that still resolve after a redesign.
For a webmaster, canonical work is about aligning every signal around the preferred URL rather than treating the tag as a standalone fix. Redirects, internal links, sitemap entries, and page-level canonical tags should all reinforce the same public address, because search engines can ignore a weak canonical hint when the rest of the site points somewhere else.
The practical workflow needs access to the site's templates or CMS settings, a public page that can be inspected in a browser, and a verified Google Search Console property. Current Google guidance recommends a single absolute canonical URL in the HTML head, and the indexed result in URL Inspection is the place that shows both the User-declared canonical and the Google-selected canonical when duplicates are evaluated.
Common duplicate cases include HTTP and HTTPS versions of the same page, www and non-www hosts, tracking-parameter URLs, filtered listings, and legacy paths left live after structural changes.
Use canonical tags for near-duplicate URLs that still need to exist, such as campaign-parameter URLs or filtered views, and use redirects when the old URL should stop being served as a separate public page.
<link rel="canonical" href="https://www.example.com/guides/canonical-url" />
Google recommends absolute URLs and only accepts the canonical link element in the HTML head, so do not place it in the body, duplicate it, or point it at a fragment URL.
A sitemap should list the canonical public URL for each page, not redirected, blocked, or parameter versions of the same content.
Canonicalizing a product page to the homepage, a filtered page to an unrelated category, or an older URL to a redirect target that changes again can cause search engines to ignore the signal and keep a different URL.
Robots.txt controls crawling, not canonical selection, and noindex removes a page from Search instead of merging it into another URL.
Check the raw HTML source rather than only the rendered DOM when a plugin or JavaScript layer might inject or rewrite metadata late in the page load.
Use Test live URL to confirm the current page is reachable, but rely on the indexed result when checking canonical selection because the live test does not evaluate duplicate or alternate-page status.
A canonical tag is a hint rather than a hard rule, so mixed signals can still make Google pick a different URL as canonical.