SEO

Canonical URL

The address declared as the definitive one for a page with duplicates.

When similar content is reachable at several addresses (tracking parameters, print versions, filtered listings, http and https, with and without www), a canonical tag names which should be indexed, consolidating signals rather than splitting them across near-identical URLs.

Key takeaways

  • A hint, not a command. Google may pick a different URL, and Search Console will tell you which one it chose.
  • When Google disagrees with your tag, something else on the site is contradicting it. The tag is not the problem, the contradiction is.
  • Campaign parameters are the biggest accidental duplicate generator: every UTM link is a distinct URL.
  • On a large catalogue, faceted and paginated listings are where canonicals either save the crawl or waste it.
  • Check them before pointing paid traffic at an existing page, not after.

Where the duplicates come from

Almost no site sets out to publish the same page twice. Duplicates accumulate because URLs are generated by systems that each have their own reason to add something to the end of one.

The usual sources are dull and cumulative: analytics parameters on campaign links, session identifiers, sort and filter parameters on listings, print and AMP variants, trailing slashes, uppercase paths, and the four way split between http, https, www and bare domain if redirects were never tidied.

None of those is a mistake in isolation. The problem is that each one produces an address a crawler can reach, and a search engine looking at ten addresses serving one page has to pick one. Without a canonical it picks on its own evidence, and the signals that should have accumulated on one URL are spread across ten.

This is why the symptom is rarely dramatic. Nothing breaks. A page just underperforms for reasons that do not appear in any report, because each of its ten copies has a tenth of the standing.

It is a hint, and what to do when it is ignored

The canonical tag tells Google which URL you consider definitive. It does not oblige Google to agree, and Search Console reports both: your declared canonical and the Google-selected canonical, side by side.

When those differ, the instinct is to treat the tag as broken and re-issue it. That almost never works, because a tag is one signal among several and the others are outvoting it. Internal links pointing at the non-canonical version, the sitemap listing it, redirects pointing the wrong way, and hreflang referencing a different URL will each pull against the declaration.

So the diagnosis is to look for the contradiction rather than the tag. In practice it is usually the internal links: a site that canonicalises to the clean URL while every menu and button links to the parameterised one is telling Google two things at once, and behaviour beats markup.

A canonical also cannot fix content that is genuinely different. Two pages with meaningfully different content and a canonical between them is not consolidation, it is a request to drop one, and Google will often decline.

Campaign parameters, and the split nobody notices

Every UTM-tagged link creates a distinct URL. A newsletter, three social posts and a paid campaign pointing at one landing page produce five addresses for it, and a year of campaigns produces hundreds.

On a site with self-referencing canonicals this costs nothing, which is why it is rarely noticed: the tag on every variant names the clean URL and the signals consolidate. On a site without them, the variants compete with each other and with the original.

The agency-specific version of this problem is worth stating plainly, because it is one an agency causes. Pointing a campaign at an existing organic page, without checking its canonical first, can split a page that was ranking. The check takes five minutes: load the page with a parameter on it and read what the canonical says.

The related trap is a canonical generated dynamically from the current address. It looks self-referencing and is not: the parameterised URL emits a canonical pointing at itself with the parameters still attached, so every variant declares itself definitive and nothing consolidates.

Listings, pagination and the expensive mistake

On a catalogue, canonicals are the difference between a crawler working through the products and a crawler working through filter combinations. Colour, size, price band and sort order multiply into an address space that is effectively infinite, and nothing in it is worth indexing.

The correct handling depends on the facet. Combinations with genuine search demand, such as a brand within a category, may deserve their own indexable page. The rest should canonicalise to the unfiltered listing, and the ones that generate nothing anybody searches for are usually better excluded from crawling altogether.

Pagination is where the costly error lives. Canonicalising every page of a paginated series to page one seems tidy and tells Google that pages two onward are duplicates of page one. They are not, and the products on them can fall out of the index. Google retired rel=prev and rel=next support in 2019, and the current guidance is that each paginated page should canonicalise to itself.

This is one of the few SEO mistakes that costs revenue within weeks rather than quarters, which is a good reason to check it on any e-commerce site before touching anything else.

What it means for an agency

Check canonicals before launching paid traffic onto an existing page, not after. It is a five-minute check that prevents a month of split signals nobody notices.

Where it goes wrong

  • Canonicalising every paginated page to page one, hiding the products on pages two onward.
  • Self-referencing canonicals generated with the parameters still in them, which defeats the purpose.
  • Canonicalising between pages whose content is genuinely different, which Google will usually decline.
  • Re-issuing the tag when Google disagrees, instead of finding the internal links that contradict it.

In short

Canonicals fail quietly. Nothing errors, nothing drops out of a report, and a page simply performs worse than it should because its standing is spread across addresses nobody knew existed. That makes them worth checking on arrival at a new client rather than when something looks wrong.

Frequently asked questions

Why is Google ignoring my canonical tag?

Because it is a hint and something else on the site is contradicting it. Look at the internal links first: a site that canonicalises to a clean URL while every menu links to the parameterised one is sending two signals, and behaviour usually beats markup. Sitemaps, redirects and hreflang can contradict it the same way. Search Console shows the Google-selected canonical next to yours, which is where the disagreement becomes visible.

Do UTM parameters create duplicate content?

They create duplicate URLs, which becomes a duplicate content problem only if canonicals are missing. With a self-referencing canonical naming the clean address, every tagged variant consolidates back to it. Without one, a year of campaigns leaves hundreds of competing copies of one page. Check the canonical before pointing a campaign at a page that already ranks.

Should paginated pages canonicalise to page one?

No. Pages two onward are not duplicates of page one, and telling Google they are can drop the items on them from the index. Each paginated page should canonicalise to itself. Google withdrew support for rel=prev and rel=next in 2019, so there is no markup that describes the sequence; self-referencing canonicals and ordinary internal links are the handling.

What is the difference between a canonical and a redirect?

A redirect removes the duplicate: the address stops serving content and sends visitors elsewhere. A canonical leaves it reachable and says which version should be indexed. Use a redirect when nobody needs the old address, and a canonical when the variant has to keep working, which is the case for tracking parameters, filters and print views.

Related terms

Sources

Last reviewed

Keplent keeps track of these for you.

It holds what each client agreed to, watches what their campaigns actually did, and tells you in plain sentences what needs you this week.

Join the waitlist