Most sites serve the same content at more than one address without anyone deciding to. A product appears under two categories. A filter adds a parameter to the URL. A tracking code from a campaign creates a new address for the same page. A printer-friendly version exists somewhere.
To a search engine each of those is a separate page with the same content, which creates two problems. It has to guess which one to show, and it may guess differently from you. And any links pointing at the various versions are split between them instead of accumulating on one.
A canonical tag resolves both. It is a line in the page head saying: this is one of several addresses for the same thing, and here is the one you should treat as real.
When you actually need one
Not every page needs a canonical, and adding them everywhere without thought is how the four mistakes below happen. You need one when the same or nearly the same content is reachable at more than one URL.
The most common cases are unglamorous and worth checking on your own site today.
- Filters and sorting that add parameters to the URL
- Campaign tracking codes creating a new address for an existing page
- A product reachable through more than one category path
- Pagination where every page shows the same intro text
- Your site answering on both www and the bare domain, or both http and https
- Content you syndicate to another site, where their copy should point at yours
How the tag is read
The important thing to understand is that a canonical is a hint, not an instruction. Google usually honours it and sometimes overrides it, and when it overrides it that is nearly always because the tag contradicts other signals on the site.
That is why the tag alone is not the fix. It has to agree with your internal links, your sitemap and your redirects. If your canonical points at one URL while every internal link points at another, you have told the search engine two different things and it will believe the links.
- Several URLsFilters, tracking codes, category paths
- Canonical tagEach version names the same real URL
- Signals agreeLinks and sitemap point there too
- One page indexedAuthority consolidates instead of splitting
The four mistakes
Each of these is common and each makes the tag useless or harmful.
The first is pointing every page at the homepage. It sounds like a way to concentrate authority and it is actually an instruction to drop every other page from the index. Sites have deindexed themselves this way.
The second is a relative URL. Canonicals should be absolute, including the protocol and domain. A relative one resolves differently depending on the page it is on, which produces exactly the confusion you were trying to remove.
The third is a canonical chain: page A points to B, and B points to C. Google may follow it and may not. Point every version directly at the final destination.
The fourth is the contradiction described above, where the canonical says one thing and the internal links say another. Check the links whenever you set a canonical, because they are the signal that wins.
Canonical or redirect
These two get confused and the distinction is simple. Use a redirect when the duplicate should not exist for people either. A moved page, an old URL structure, a retired product: send the visitor somewhere real.
Use a canonical when both versions genuinely need to work for visitors. A filtered product list is useful to the person browsing it, so you cannot redirect it away. You just do not want it indexed separately.
Every page should also carry a canonical pointing at itself, which sounds redundant and is not. It defends against someone else scraping your content, and against tracking parameters creating addresses you never anticipated.
Common questions
- What does a canonical tag do?
- It tells search engines which URL is the real version of a page when the same content is reachable at several addresses. That does two things: it stops the search engine guessing which version to show, and it consolidates the link value spread across the duplicates onto one page instead of splitting it.
- Should every page have a canonical tag?
- Yes, and it should usually point at itself. A self-referencing canonical costs nothing and protects against addresses you never planned for, such as tracking parameters appended by a campaign, or another site scraping your content. What you must not do is point every page at your homepage, which reads as an instruction to drop the rest from the index.
- Canonical tag or 301 redirect: which should I use?
- Redirect when the duplicate should not exist for visitors either, such as a moved page or a retired URL structure. Use a canonical when both versions need to keep working for people but only one should be indexed, such as a filtered product list that is genuinely useful to browse but should not compete with the main category page.
- Does Google always follow canonical tags?
- No. A canonical is a strong hint rather than a directive, and Google will override it when other signals disagree. The usual cause is a contradiction on your own site: the canonical names one URL while every internal link and the sitemap name another. Fix the disagreement and the tag is honoured far more reliably.
Keep reading