All articles
Technical SEO

Canonical URL mistakes that silently destroy your indexing

A wrong canonical tag tells Google to index the wrong version of your page — or none at all. These are the seven most common canonical errors and how to fix them.

IP
IndexPilot Team··7 min read

Canonical tags are deceptively simple: one HTML element, one URL, one instruction to Google. But the ways they can go wrong are numerous, and when they do, Google quietly indexes the wrong version of your page — or none at all.

These are the seven mistakes that appear most often in technical SEO audits.

1. The canonical points to the wrong URL

This sounds obvious, but it is surprisingly common. A developer copies a canonical tag template and forgets to update the href. Or a CMS generates canonical tags dynamically but has a bug that produces the homepage URL for every page. The result: Google consolidates ranking signals onto a single page that was never intended to rank.

Fix: Audit canonical tags at scale. Every page should have a self-referencing canonical (pointing to itself) or a canonical that deliberately consolidates to another page. Spot-check 10–20 URLs per section of your site.

2. Using relative URLs in canonical tags

<link rel="canonical" href="/blog/my-post"> looks reasonable but can produce unexpected results. Browsers resolve relative URLs against the current page, but crawlers may interpret the base URL differently — especially on content syndication platforms or AMP pages.

Fix: Always use absolute URLs in canonical tags: <link rel="canonical" href="https://example.com/blog/my-post">.

3. Multiple canonical tags on the same page

If a page has two <link rel="canonical"> elements pointing to different URLs, Google ignores both. This often happens when a theme or plugin adds one canonical and the developer adds another without removing the first.

Warning

Having two conflicting canonical tags is worse than having none. Google will make its own canonicalisation decision based on signals like internal links and sitemap entries — and it may not choose the URL you intended.

Fix: Search your rendered HTML for occurrences of rel="canonical". There should be exactly one per page.

4. Canonical conflicts with hreflang

Hreflang tells Google about alternate language versions of a page. If your French page has a canonical pointing to the English page, Google may ignore the hreflang entirely — treating the French page as a duplicate of English rather than a separate language variant.

Fix: Each language/locale variant should have a self-referencing canonical. The hreflang annotations then tell Google how the variants relate to each other.

5. Canonicalising paginated pages to page 1

It used to be common advice to point all paginated pages (/blog/page/2, /blog/page/3) to the first page via canonical. Google deprecated this pattern. Using it today can cause pages 2 and beyond to be completely ignored — along with all the content on them.

Fix: Use self-referencing canonicals on all paginated pages. Use rel="next" and rel="prev" if you want to signal pagination structure (though Google de-emphasised these too). The better long-term solution is to ensure paginated content is accessible via a crawlable link structure.

6. Canonical tag placed inside the body

The canonical tag belongs in the <head> element. When it appears in the <body> — which can happen with certain JavaScript frameworks that inject tags into the wrong DOM location — Google may or may not respect it. The spec is clear: canonical belongs in <head>.

Fix: Use your browser's dev tools to inspect the rendered page source (not just the initial HTML), and confirm the canonical appears inside <head> in the final DOM.

7. Trailing slash inconsistency

https://example.com/blog/my-post and https://example.com/blog/my-post/ are treated as different URLs by Google. If your server serves the same content at both, without a canonical to declare which is correct, Google will choose one — and it might not be the one with all your backlinks.

Fix: Pick one form (trailing slash or no trailing slash) and enforce it consistently. Implement server-side redirects for the other form, and ensure your canonical tag matches the redirect destination.

Tip

Run a full crawl with a tool that shows canonical tags alongside redirect chains. The combination of a redirect pointing to URL A while the canonical points to URL B is a common signal conflict that stalls indexation.

Related articles

Ready to submit URLs the right way?

IndexPilot validates every URL for Google Indexing API eligibility before submission — so you never waste quota on pages Google will ignore.