Skip to main content

MoxSEO

Checks return linksValidates language codesNo signupNothing stored
Free tool

Find out why your hreflang cluster is being ignored

Google discards an entire hreflang cluster if the return links are missing. This checks your annotations, validates the language codes, and actually fetches your alternates to confirm they link back.

Verifies reciprocity liveChecks x-defaultFlags invalid codes
Sample result
60
hreflang health score for this URL
Annotations found6
Self-referencePresent
x-defaultMissing
de-de return linkMissing
One broken return link is enough. Google treats reciprocity as a requirement, and a cluster that fails it is dropped in full — not partially.
The problem

hreflang fails silently, and it fails as a whole cluster

There is no error report for broken hreflang. Search Console’s international targeting report was retired years ago. Meanwhile the rules are unforgiving: every page must reference itself, every alternate must link back, and one missing return link invalidates the entire set rather than the single broken pair.

RECIPROCITY

Return links are mandatory

If your English page points to the German page, the German page must point back. Without it Google ignores the annotation entirely — and this is where most implementations break, usually because one locale was migrated separately.

SELF-REFERENCE

Every page must list itself

A page must include an hreflang tag pointing at its own URL. It looks redundant and it is routinely omitted, which is enough on its own to invalidate the cluster.

CODES

Region codes are not language codes

en-uk is invalid; the correct code is en-gb. Language uses ISO 639-1, region uses ISO 3166-1 Alpha 2, and mixing them up is one of the most common errors in international SEO.

What gets checked

Six validations, including the one most tools skip

Live reciprocity verification

We fetch up to five of your alternate URLs and confirm each one links back to the page you entered. This is the check that actually predicts whether Google will honour your cluster, and most validators never make the request.

Language and region code validity

Every code is tested against the expected ISO format. Invalid values are reported individually rather than as a generic warning.

Self-reference and x-default

We confirm the page references itself, and flag a missing x-default — the fallback that decides what unmatched visitors are served.

Duplicates and relative URLs

Two tags declaring the same locale creates ambiguity. Relative hrefs are invalid outright; hreflang requires absolute URLs including protocol.

The tool

Check hreflang on any URL

Enter a page from your international cluster. We read its annotations, validate them, then fetch the alternates to confirm the return links exist.

Fetches up to five alternates to verify reciprocity, so this one takes a few seconds longer.

Reading your results

What the severity levels mean

Error

The cluster is broken

Missing self-reference, a missing return link, an invalid code or a relative URL. Any of these means Google is likely disregarding your annotations completely.

Warning

Working, but incomplete

Usually a missing x-default. Your cluster still functions for matched locales, but unmatched visitors get whichever version Google picks.

Clean

Reciprocal and valid

Self-referencing, reciprocal, correctly coded. Your locale signals are being read as intended.

The honest version

hreflang solves the wrong-version problem. It does not solve the ranking problem.

What it will not do

hreflang does not make a page rank in a new market. It tells Google which existing version to serve to which audience. If your German page has no authority in Germany, correct annotations will not create demand for it.

When it genuinely matters

When you have real equivalents across locales and the wrong one is surfacing — a UK visitor landing on the US page with the wrong currency, or your Spanish content cannibalising your Mexican content. That is a serving problem, and this is the fix for it.

Common questions

hreflang, answered plainly

Does one broken return link really invalidate everything?

Google treats hreflang as a bidirectional agreement. If page A claims page B is its German alternate but B does not confirm it, the claim is untrusted. In practice a broken pair frequently causes the wider cluster to be disregarded, which is why we verify reciprocity live rather than assuming it.

Do I need x-default?

Not strictly, but it is strongly recommended. It defines what a visitor sees when no locale matches. Without it Google chooses for you, which is usually your highest-authority version regardless of whether that suits the visitor.

HTML tags, HTTP headers, or sitemap?

All three are valid and Google treats them equally. HTML link tags are easiest to audit, which is what this tool reads. If you implement via sitemap or headers, this tool will report no annotations even though your setup may be correct.

Should hreflang and canonical point to the same URL?

Each page should canonicalise to itself and reference itself in hreflang. Canonicalising a locale variant to a different locale tells Google to drop it, which defeats the purpose of having the cluster.

Is en-uk valid?

No. The United Kingdom’s ISO 3166-1 code is GB, so the correct value is en-gb. This is probably the single most frequent hreflang error we encounter.

Next step

Correct annotations get the right page served. Authority gets it found.

International SEO usually fails on market-level authority long before it fails on tags — but broken tags waste whatever authority you have.

Capabilities & Architecture
AI-first search optimization, technical engineering & growth marketing
Industry Specializations
Vertical-specific taxonomy, citation consensus and compliance architecture
Free Technical & AI Search Suite
10 production-grade diagnostic tools to analyze, test and validate your website
Transparent Engagements
Transparent pricing, clear deliverables, and no long-term lock-in traps
Organization & Trust
Our team, verified case studies, research lab and global operations