Canonical Points to Another Canonicalized URL: How to Fix the Chain
- June 9, 2024
- Indexation, Canonical Issues

TL;DR: Your page points its canonical at a URL that does not treat itself as canonical — it forwards to yet another URL. That is a canonical chain. Google usually still resolves it, but every extra hop weakens the signal and some hops get dropped entirely. Collapse the chain: every canonical should point straight to the final, self-referencing, 200-status URL.
What a canonical chain is
Page A declares B as its canonical. But B does not point at itself — B declares C. So the honest reading of your markup is "A is really B, and B is really C." Google is left to walk the chain, and its own documentation is blunt that chained canonicals are a signal it may not follow to the end. The check flags Page A because its declared target (B) is itself canonicalized, meaning your strongest de-duplication signal has to hop before it lands.
A real failing chain, and the fix
Three URLs, each pointing one link further down the line:
<!-- Page A: /product?ref=email -->
<link rel="canonical" href="https://example.com/product?ver=2" />
<!-- Page B: /product?ver=2 -->
<link rel="canonical" href="https://example.com/product" />
<!-- Page C: /product (the real destination) -->
<link rel="canonical" href="https://example.com/product" />C is fine — it self-references. The rot is in A and B: A should never mention B at all. Rewrite both to skip straight to the endpoint:
<!-- Page A -->
<link rel="canonical" href="https://example.com/product" />
<!-- Page B -->
<link rel="canonical" href="https://example.com/product" />One hop, everywhere. If A instead pointed at B and B pointed back at A, you would not have a chain — you would have a Canonical Loop, which Google discards outright.
Chain vs. loop vs. clean canonical
| Pattern | Markup shape | Google's likely response | Severity |
|---|---|---|---|
| Self-referencing | A → A | Honored, page indexed | Healthy |
| Single hop | A → B (B → B) | Honored, signals consolidate on B | Healthy |
| Chain (this flag) | A → B → C | May follow, may stop at B, may ignore | Medium — signal decay |
| Long chain | A → B → C → D… | Often abandoned mid-chain | High — unpredictable indexing |
| Loop | A → B → A | Ignored, self-selected canonical used | High — you lose control |
Why do chains form in the first place? Almost never by hand. A merge of two sites leaves the old canonicals pointing at URLs that themselves got re-canonicalized. A parameter-handling plugin resolves "up one level" instead of "up to the root." A staging-to-production push carries canonicals that reference an intermediate hostname. In each case the logic is one step short of the true endpoint, and that one missing step is your whole problem. Fix the rule and the chain collapses everywhere at once.
How to detect it
- Screaming Frog: after crawling, use Reports > Canonicals > Canonical Chains. The export lists each starting URL, every intermediate hop, and the chain length. Anything with a chain length above 1 is on this list; sort by length and fix the longest first.
- GSC URL Inspection: inspect Page A. Note its "User-declared canonical" (B). Now inspect B and read its user-declared canonical (C). If B's declared canonical is not B itself, the chain is confirmed. Repeat until you reach a URL that self-references — that is the true endpoint you should have pointed at.
- curl: walk it manually —
curl -s https://example.com/product?ref=email | grep -i canonicalgives you B; run the same command against B to get C. When the printedhreffinally equals the URL you fetched, you have found the endpoint.
How to fix it
- Find the true endpoint: the URL at the bottom of the chain that returns 200 and canonicalizes to itself.
- Rewrite every upstream canonical to point directly at that endpoint — no intermediate hops.
- Because chains are almost always generated by logic (a plugin resolving "one level" instead of "all the way"), fix the canonical-building rule, then let it re-render across the whole set.
- Re-run the Canonical Chains report until it comes back empty.
- Watch for chains that cross redirect boundaries — a canonical pointing at a URL that then 301s is a chain wearing a different coat. See Internal Chain Loop.
FAQ
Does Google actually follow canonical chains?
Sometimes. Google has said it will try to follow a chain but is not guaranteed to, and long chains are frequently abandoned. Treating "sometimes" as "reliably" is how pages fall out of the index unexpectedly.
How many hops before it becomes a real problem?
One hop past a self-referencing target is already worth cleaning up, but a single A→B where B self-canonicals is generally tolerated. The danger zone is two or more chained canonicalized URLs, where the endpoint becomes ambiguous.
Is a canonical chain worse than a redirect chain?
Different failure mode. A redirect chain wastes crawl budget and slows users; a canonical chain risks Google picking a canonical you did not intend. Both should be flattened to a single hop.
My canonical points at a URL that then 301-redirects. Is that a chain?
Effectively yes. You are canonicalizing to a URL that is not the final destination. Point the canonical at the post-redirect target so the signal and the redirect agree.
Will fixing the chain restore lost rankings?
If pages were dropped or mis-consolidated because Google could not resolve the endpoint, flattening the chain and requesting re-indexing usually brings them back. It is a signal-clarity fix, not a magic ranking boost. See the Canonical Tags complete reference for the full model.
Related canonical checks: Canonical Points to a Different Internal URL · Canonical Points to Homepage · Canonical Loop
Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.
About SEO ProCheck
Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.
Work With Me
Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.







