Hreflang to a non-canonical page

hreflang.non_canonical_urls
Priority
Medium
Severity
Warning

What we look for

The hreflang tags (lines in <head> listing the page's versions in other languages) on these pages point to a crawled page that names a different address as its preferred one.

Why it matters

These mixed signals can lead search engines to ignore the language pairing and show a version you did not intend.

How to fix

Point each hreflang tag at the address the target page names as its own canonical, in the page template or the plugin that writes the tags.

Where you’ll see it

The id is stable, and every surface uses it, so it’s the thing to search for or hand to an agent.

Terminal
When it is one of the five findings under Fix first, raptor crawl prints the id under it.
Check: hreflang.non_canonical_urls
crawl.json and the CSV
The crawl JSON names the finding by this id, and so do the CSV and raptor_query.
"check_id": "hreflang.non_canonical_urls"
The HTML report
This link opens the finding in the report, and each finding shows its id.
crawl.html#finding=hreflang.non_canonical_urls
MCP
raptor_findings with this check_id returns the finding in full, with a fix brief ready to paste into a task. If it didn’t fire, it says why.
raptor_findings {
  "job_id": "...",
  "check_id": "hreflang.non_canonical_urls"
}