Most sites serve the same page at more than one address without realizing it: with and without www, with and without a trailing slash, with tracking parameters from campaigns. To you it's one page. To a search engine it can look like several near-identical pages competing for the same spot. The canonical tag is how you tell engines, "these are the same; this is the one that counts."
Get it right and your duplicates consolidate into one strong page. Get it wrong and you quietly hand your authority to the wrong URL, or to another site entirely.
What the canonical tag is
A single line in your page's <head>:
<link rel="canonical" href="https://yourdomain.com/pricing" />
It names the preferred ("canonical") URL for this content. Engines use it to merge the signals from all the duplicate versions onto that one address. Our check looks for two things: that a canonical exists, and that it's an absolute URL (full https://…, not a relative /pricing).
Why absolute URLs matter
A relative canonical like <link rel="canonical" href="/pricing"> is ambiguous. It resolves differently depending on the protocol and host the page is served under, which defeats the purpose. Always use the full absolute URL, including https:// and the exact host you want to be canonical. It removes all guesswork.
The setup that works
- Pick one host. Decide between
wwwand non-www, and always usehttps. Redirect every other variant to it. - Self-reference on every important page. Each page's canonical should point to its own preferred URL, not the homepage, not a category page.
- Use absolute URLs.
https://yourdomain.com/page, every time. - Strip tracking parameters.
/page?utm_source=newslettershould canonical to/page, so campaign links don't fragment into dozens of "pages." - Make canonicals and redirects agree. If you redirect to
https://www, don't canonical to non-www. Conflicting signals confuse engines.
The bugs that bite
- The homepage canonical bug. A template hardcodes
href="https://yourdomain.com/"on every page, telling engines your whole site is one page. Every internal page vanishes. It's more common than you'd think, so check a deep page, not just the homepage. - The wrong-host canonical. After a migration or rebuild, canonicals freeze on a staging or old domain. Now you're pointing engines somewhere that isn't you. This is the same failure that, for AI engines, gives your attribution away to another site.
- Relative canonicals that resolve inconsistently.
- No canonical at all, leaving engines to pick one themselves. They don't always pick the version you'd want.
Canonical vs redirect
These get confused. A redirect sends browsers and bots from one URL to another; use it when a page has genuinely moved. A canonical keeps all versions reachable but tells engines which is authoritative; use it for duplicates you want to keep accessible (like parameterized or filtered URLs). They work together: redirect the variants you don't need, canonical the ones you do.
This check is the SEO twin of canonical attribution for AI, using the same tag and the same fixes. In classic search the stakes are ranking; for AI answers they're who gets credited. Both reward one clean, self-referencing, same-host canonical. It also pairs closely with indexability: a page that's canonicalized away or set to noindex won't rank no matter how good it is.
Common mistakes
- Every page canonical-ing to the homepage.
- Canonical pointing to a different domain unless you genuinely mean it.
- Relative instead of absolute URLs.
- Canonical and 301 redirect disagreeing on
www/protocol. - Forgetting the parameter problem, letting
?utm_…URLs become separate pages.
FAQ
Does every page need a canonical tag?
Important pages should have a self-referencing one. It removes ambiguity and is cheap insurance against duplicate-content issues.
Is a canonical the same as a 301 redirect?
No. A redirect moves users and bots to another URL; a canonical hints at the authoritative version while keeping all versions reachable. Use redirects for moved content, canonicals for duplicates.
Can I canonical to another domain?
Yes, and it's correct when you're republishing content that originated elsewhere. But canonicalizing your original content to someone else's domain hands them the credit.
What happens if I have no canonical?
Engines try to choose one for you, and the choice may not be the URL you'd prefer. Setting it explicitly keeps control.
Key Takeaways
- A canonical tag names the one preferred URL for a piece of content so search engines merge the signals from all duplicate versions onto that single address instead of letting them compete.
- Canonicals must be absolute URLs (
https://yourdomain.com/page), because a relative canonical like/pricingresolves differently depending on the protocol and host and defeats the tag's purpose. - The most damaging canonical bug is a template that hardcodes the homepage URL on every page, which tells engines the whole site is one page and makes every internal page vanish.
- A canonical differs from a 301 redirect: a redirect moves users and bots to another URL for content that has moved, while a canonical keeps all versions reachable and only signals which one is authoritative.
Want to check whether your canonicals are present, absolute, and self-referencing? Run a free audit. We flag missing, relative, and off-site canonicals. More in the SEO explainers.



