Canonical Tags Explained: Fixing Duplicate URLs for Google and AI
A canonical tag tells search engines which address is the primary one when identical content lives at several URLs. Google handles it as a hint rather than a rule, and duplicates are rarely deliberate: protocol and www variants, trailing slashes, tracking and filter parameters, print views and now Markdown versions of pages for AI agents. This guide explains how canonicals really work.
I start with why it matters: choosing which URL appears in results, consolidating link signals, keeping reporting clean and saving crawl time. Duplicate content isn’t a penalty; the cost is dilution and loss of control. Then the four ways to declare a canonical, from strongest to weakest: a permanent redirect, rel=canonical in the head or an HTTP Link header (useful for PDFs and Markdown twins), and sitemap inclusion.
Google weighs several signals and may override you, so I explain how to check the result in URL Inspection by comparing the user-declared and Google-selected canonicals. There’s a list of where duplicates come from with the right fix for each, noting that many are better solved with a redirect, and that paginated pages should keep their own canonicals.
Get Camp’s stories in your inbox
Join Medium for free to get updates from this writer.
The mistakes section covers canonicals pointing at noindexed, redirected or missing pages, everything canonicalised to the homepage, tags pushed into the body, conflicting canonicals and accidental cross-domain ones. I also cover multilingual sites and a closing checklist.
Key takeaways
- A canonical is a strong hint, not a command
- Redirect duplicates that don’t need to exist
- Use a Link header for PDFs and Markdown versions
- Compare declared and Google-selected canonicals in URL Inspection
- Never point a canonical at a noindexed, redirected or missing page
Related on BuiltToWinWeb: noindex vs robots.txt
Read the full guide on BuiltToWinWeb: Canonical tags explained
A summary by Jacob Campbell of an article first published on built2winweb.com on October 7, 2026.





