View source (Cmd+U)
and inspect the <link rel="alternate" hreflang>
tags in the head. Each one has a different error.
| # | Rule | Broken tag | Problem |
|---|---|---|---|
| 1 | hreflang_invalid |
hreflang="en-USA" | Not a valid BCP 47 tag — should be en-US |
| 2 | invalid_lang |
hreflang="french" | Full word instead of ISO code — should be fr |
| 3 | hreflang_multiple |
hreflang="en" × 2 | Two hreflang="en" tags on the same page |
| 4 | hreflang345xx |
href=".../hreflang-de.html" | URL returns 404 — German alternate page does not exist |
| 5 | hreflang_non_canonical |
href=".../product-red.html" | URL's canonical is /product, not /product-red.html |
| 6 | hreflang_different |
missing x-default + missing reciprocal on FR page | hreflang-fr.html has no tag pointing back here |