A canonical tag tells search engines which URL is the main version of a page when the same content appears at more than one address.

A canonical tag is a line of HTML that tells search engines which version of a page is the main one when the same or very similar content is available at more than one URL. It helps Google pick the right URL to index and rank, and it gathers the signals from the duplicates onto that one page.
Duplicate URLs are more common than most site owners think. Tracking parameters, filters, sort orders, print versions, HTTP and HTTPS, www and non-www: each can create a new URL for the same content. Left alone, Google has to guess which one to show.
Usually it guesses well. But when it doesn’t, the wrong URL ranks, links get split across copies, and crawl time goes on pages that add nothing. Canonical tags are how you take the guesswork out.
What a canonical tag looks like
A canonical tag sits in the head of a page and points to the preferred URL. It looks like this:
<link rel="canonical" href="https://www.example.com/mens-running-shoes/" />
If that tag appears on https://www.example.com/mens-running-shoes/?sort=price, it tells Google the sorted version is a copy and the clean category URL is the one to index. The main page should also carry a canonical pointing to itself, known as a self-referencing canonical.
Why canonical tags matter for SEO
Canonical tags matter because they decide which URL Google shows in search and where ranking signals collect. Without them, links and engagement can be split across several versions of the same page, and none of them performs as well as one strong page would.
They also help with crawling. On large sites, especially ecommerce sites with faceted navigation, duplicate URLs can run into the thousands. Clear canonicals help Google spend its time on pages that matter, which ties into indexability more broadly.
One thing to understand early: Google treats a canonical tag as a strong hint, not an instruction. It weighs the tag alongside other signals, such as redirects, internal links and sitemaps. If those signals disagree, Google may choose a different canonical from the one you set. You can see which URL Google picked using the URL Inspection tool in Search Console.
When to use a canonical tag
Use a canonical tag when you need duplicate or near-duplicate URLs to stay accessible to users but only want one of them in search. Common cases include:
- URLs with tracking or session parameters
- Filtered and sorted versions of category pages
- Products that appear in more than one category with different URLs
- Printer-friendly or AMP versions of pages
- Content syndicated to another site, where the partner points a canonical back to your original
If a duplicate page has no reason to exist for users, a 301 redirect is usually the better fix. A redirect sends people and bots to the right URL. A canonical only tells search engines which one you prefer.
Canonical tag best practice
Most canonical problems come from conflicting signals. These rules keep them consistent:
- Use absolute URLs. Include the full protocol and domain, not a relative path.
- Add one canonical per page. Two different canonicals on one page cancel each other out, and Google will likely ignore both.
- Put it in the head. A canonical in the body is ignored.
- Point to an indexable page. The target should return a 200, not redirect, 404 or carry a noindex tag.
- Keep signals in line. Internal links, sitemaps and hreflang should all use the canonical URL.
- Don’t use robots.txt to handle duplicates. If Google can’t crawl a page, it can’t see the canonical tag on it.
- Don’t canonicalise paginated pages to page one. Page two of a category has different products, so each page should usually reference itself.
For files such as PDFs, where there’s no HTML head, you can send the canonical in the HTTP header instead. For international sites, canonicals and hreflang need to agree, which our guide to hreflang tags explains.
Common canonical tag mistakes
The mistakes we see most often in audits are canonicals pointing at redirected or broken URLs, canonicals left on staging settings that point at a development domain, and every page on a site canonicalised to the homepage after a template change. That last one can drop most of a site out of the index in a few weeks.
Canonicals also get confused with keyword cannibalisation. If two genuinely different pages target the same term, a canonical isn’t the fix. Merge them, or change what one of them targets.
A crawler will flag missing, multiple and non-indexable canonicals in minutes. If you’d like help untangling yours, our technical SEO team does this every week. Book a free strategy session and we’ll look at your site with you.
Related reading: our guides to robots.txt and technical SEO.
Common questions
Does Google always follow canonical tags?
No. Google treats a canonical tag as a strong hint. If other signals, such as internal links or redirects, point somewhere else, it may choose a different URL. URL Inspection in Search Console shows the canonical Google selected.
Should every page have a canonical tag?
It’s good practice. A self-referencing canonical on every indexable page makes your preferred URL clear and protects against duplicates created by parameters you didn’t plan for.
Is a canonical tag the same as a 301 redirect?
No. A 301 redirect sends users and search engines to a new URL. A canonical tag leaves both URLs accessible and only tells search engines which one to index.
Can I use a canonical tag across different domains?
Yes. Cross-domain canonicals are supported, which is useful when your content is republished on another site and you want your original to rank.


