Docket / Fix it / conflicting canonicals

How to fix conflicting canonical tags

A canonical tag is a page telling search engines which URL is the real one. It is a hint, not an instruction — which means the failure mode is not an error message, it is being quietly ignored, or quietly obeyed when you did not mean it.

Two canonicals on one page

The worst version, because it looks fine. A page carries two rel=canonical tags naming different URLs — usually because a theme injects one and an SEO plugin injects another, and nobody has viewed the rendered head since both were installed.

The page now contradicts itself about where it lives. Google's documented response to conflicting canonicals is to ignore them all and pick a URL itself, which means you have installed two tools to control indexing and ended up with less control than if you had installed neither.

Fix: exactly one rel=canonical per page. Find the second source and turn it off rather than trying to make the two agree — two things writing the same tag will disagree again the next time either is updated.

The canonical points at a noindex page

This one is self-defeating in a specific way. Page A canonicalises to page B; page B says noindex. You have said "the real version of this content is over there" and "that one must not be indexed". Both pages drop out, and the content disappears from search entirely.

It usually happens when a page is retired: someone adds noindex to the old URL and forgets that other pages still name it as canonical.

Fix: decide which URL should be indexed and make it self-canonical without noindex. Do not use canonical to remove pages from the index — that is what noindex is for, and using canonical instead is how sites lose the wrong page.

The canonical points at another site

A cross-domain canonical is legitimate for syndicated content: if you republish an article on a partner site, that copy canonicalising back to your original is exactly right. What is almost never right is your own pages canonicalising to a domain you do not control, which usually arrives with a copied template or a staging environment that was promoted with its config intact.

Fix: if you did not mean to hand the URL to someone else, make it self-canonical. Check the whole template, not the one page you noticed.

No canonical at all

Not fatal — search engines will choose a URL. But you have left the choice to them on any page reachable at more than one address, and most pages are: with and without a trailing slash, with tracking parameters appended, under both http:// and https://, with and without www. Every share with a ?utm_source= on it is another candidate.

Fix: a self-referencing canonical on every indexable page, absolute, with the protocol and host you actually want. Self-canonical is not redundant — it is how a page says "the version without the tracking parameters is the one".

The canonical points somewhere unexpected

The subtlest failure: every page in a section canonicalising to the section's landing page. Each product canonicalises to the category, each article to the blog index. Someone implemented "canonical" as "the parent page" rather than "this page", and every individual page is now telling search engines not to index it.

Sites in this state can lose almost their entire long tail while every page still returns 200 and looks perfectly healthy in a browser.

Fix: self-canonical, unless there is a specific duplicate to consolidate. If you want the concept rather than the fix list, what a canonical tag actually does explains it.

Why a crawler finds these and a page check does not

Four of the five need context beyond the page itself: whether the target is noindex, whether it is on your domain, whether it is the page's own URL, whether another page also claims it. Docket separates them into distinct findings because they have distinct fixes — "canonical problems: 12" tells you nothing about which of five different jobs you are being asked to do.

Download Docket

Common questions

What happens if a page has two canonical tags?

Google's documented behaviour is to ignore conflicting canonical tags and choose a URL itself. Two tools each writing the tag leaves you with less control over indexing than having neither.

Can a canonical tag point to a noindex page?

It can, and it is self-defeating: you have said the real version is elsewhere and that the elsewhere must not be indexed. Both pages drop out. Use noindex to remove a page, never a canonical.

Should every page canonicalise to itself?

Yes, unless there is a specific duplicate to consolidate. Self-canonical is how a page says the version without tracking parameters, without www, on https, is the one that should be indexed.

Is a cross-domain canonical ever correct?

Yes — for syndicated content. A partner's republished copy canonicalising back to your original is exactly right. Your own pages canonicalising to a domain you do not control almost never is.