Hreflang is one of the few tags that fails silently. Get a meta title wrong and someone will notice within a day. Get hreflang wrong, and your German page keeps quietly ranking for French searchers, or your x-default sends everyone to the wrong region — for months — with nothing in your rankings dashboard flagging it as broken.
The tag itself is simple: a link element or sitemap entry that tells search engines which page to serve for which language and region. What trips people up isn't the syntax, it's the handful of easy-to-miss rules around it — rules that, when broken, cause Google to discard the whole cluster rather than half-apply it.
The most common hreflang errors are missing return tags (Page A links to Page B but not back), invalid or malformed language-country codes, conflicting canonical tags, missing self-referencing tags, and no x-default fallback. Each of these can cause Google to ignore the entire hreflang set for that group of pages, not just the broken entry.
What counts as a hreflang error?
A hreflang error is any point where the tag makes a claim your site doesn't actually back up. Search engines treat hreflang as a promise between pages, and they check that promise strictly — a single broken link in the chain is often enough to void the whole cluster.
- Structural errors. Missing return links, missing self-reference tags, or hreflang values that point to a URL that 404s, redirects, or is blocked by robots.txt.
- Value errors. Language or region codes that don't map to real ISO 639-1 or ISO 3166-1 codes, or codes written in the wrong order (region-language instead of language-region).
- Conflict errors. A canonical tag, redirect, or noindex directive on a page that contradicts what its own hreflang annotations say.
- Consistency errors. Values that differ depending on where they're declared — HTML head, sitemap, or HTTP header disagreeing about the same URL.
None of these require unusual configurations to happen. They show up on ordinary multi-region sites after a migration, a redesign, or simply because two teams edited the sitemap and the templates without checking each other's work.
Why hreflang errors matter more than they look
Hreflang errors rarely trigger a visible penalty, which is exactly why they persist for so long. The damage shows up indirectly:
- Wrong-region pages rank for wrong-region searchers. Without a working hreflang cluster, Google falls back on ordinary relevance signals, which frequently surface the wrong language version.
- Duplicate content risk increases. Near-identical pages in different locales, without hreflang correctly linking them as equivalents, can compete with each other in search instead of being treated as regional variants.
- Conversion loss is invisible in rankings. A page can rank fine and still convert poorly if it's the wrong language for the visitor landing on it — a symptom hreflang problems create but rank tracking won't show.
- Errors compound with scale. A single missing return tag on a 3-locale site is a minor gap; the same mistake pattern repeated across a 20-locale e-commerce catalog can quietly invalidate hundreds of clusters.
Step-by-step: auditing and fixing hreflang
- Decide on one implementation method. Pick HTML head tags, an XML sitemap, or HTTP headers as the single source of truth per page — never split the same URL's declarations across more than one method.
- List every locale variant for each page group. Confirm each language/region version actually exists, is indexable, and returns a 200 status before adding it to a cluster.
- Add a self-referencing tag to every page. Each page in the cluster must list itself alongside the others — a page that only links out but never references its own URL is a common gap.
- Check that every link is reciprocal. If Page A declares Page B, Page B must declare Page A back, using the exact same URL, including protocol, trailing slash, and query parameters.
- Add an x-default where relevant. For clusters serving multiple languages or regions, include an x-default entry pointing to the fallback page shown to visitors who don't match any declared variant.
- Cross-check against canonical tags. Make sure no page's canonical tag points somewhere other than the URL it uses to reference itself in its own hreflang set.
- Validate with a crawl. Run the live pages through an hreflang-aware crawler or Search Console's international targeting report to catch anything the manual checks missed.
The most common hreflang errors
1. Missing return tags
Page A links to Page B in its hreflang set, but Page B doesn't link back to Page A. This is the most frequently reported hreflang problem, and it usually happens after a partial migration, a removed locale, or a sitemap that wasn't regenerated after URLs changed.
2. Invalid or reversed language-country codes
Codes like en-us written as us-en, or a made-up code that doesn't
map to a real ISO 639-1 language or ISO 3166-1 country, get silently ignored by Google
rather than throwing a visible error anywhere in your site.
3. Hreflang conflicting with canonical tags
If a page's canonical points to a different URL than the one it uses in its own hreflang cluster, Google treats the canonical as the real preference — which can pull the page out of the cluster entirely and undo the international targeting.
4. No self-referencing tag
Every page in a hreflang cluster needs to list itself, not just the other locale versions. Skipping the self-reference is a small omission that's easy to make when tags are added by hand or copy-pasted between templates.
5. Missing x-default
Without an x-default entry, there's no explicit instruction for visitors whose language or location doesn't match any declared variant — Google falls back to ordinary ranking signals instead of your intended default.
6. Mixing implementation methods for the same URL
Declaring one set of hreflang values in the HTML head and a different set in the XML sitemap for the same page creates a direct conflict, and search engines have no reliable way to know which one is correct.
7. Pointing to non-indexable pages
Hreflang values that resolve to a redirect, a 404, or a page blocked by
noindex or robots.txt are treated as broken links in the cluster, not
as valid regional variants.
Real-world examples
How these errors typically show up on real sites, and what causes them:
In every case, the trigger wasn't a misunderstanding of what hreflang does — it was a change made in one place that didn't get mirrored everywhere the tag was declared.
Hreflang implementation methods compared
Where you declare hreflang affects how easy it is to keep consistent and how likely each error type is to creep in.
| Method | Best fit | Common failure mode | Ease of maintenance |
|---|---|---|---|
| HTML <link> tags | Small to mid-size sites | Forgotten self-reference or return tag | Straightforward per page |
| XML sitemap | Large catalogs, many locales | Sitemap not regenerated after URL changes | Needs automated generation |
| HTTP header | Non-HTML files (PDFs, docs) | Rarely audited, drifts unnoticed | Easy to forget entirely |
| Mixed methods, same URL | Not recommended | Conflicting values between sources | High risk, avoid |
Generate correct hreflang tags right now — free
The Rebrixe Hreflang Generator builds a validated, reciprocal set of hreflang tags for all your locale URLs, including x-default, so you don't have to hand-write link elements or keep track of ISO codes yourself.