free tool

Hreflang / i18n checker

Multilingual sites need correct hreflang so engines serve the right language and don't treat translations as duplicates. Paste a URL — we read its hreflang tags and check self-reference, x-default and reciprocity.

What hreflang does — and what it cannot do

It tells engines that several URLs are the same content for different audiences, so the right one is shown to each. It does not boost rankings, it does not prevent duplicate-content handling, and it does not translate anything.

Its real job is preventing your Spanish page from outranking your English one for English readers — a self-inflicted problem, not a competitive one.

The three mistakes that break it silently

  • No self-reference. Every page in the set must list itself. Without it, engines discard the whole cluster — and nothing tells you.
  • Non-reciprocal links. If A points to B but B does not point back, the annotation is ignored.
  • Wrong codes. The value is language[-region]: en-GB, not en-UK. Region alone is invalid.

x-default and when you actually need it

x-default marks the page for everyone your set does not cover — usually a language selector or the international English version.

It is optional. If you serve two locales and one is the obvious fallback, pointing x-default at it is enough; inventing a selector page just to have one is not worth it.

Questions

How do I check hreflang tags?

Enter a URL above. The checker reads its hreflang annotations and verifies self-reference, reciprocity and code validity across the set.

Do I need x-default?

Only if visitors fall outside your declared locales. With a clear fallback version, pointing x-default at it is enough.

Does hreflang fix duplicate content?

No. It tells engines which version to show to whom. Duplicate-content handling is separate and is managed with canonicals.

What this tool checks

Hreflang is an HTML annotation that tells search engines which language and regional version of a page to serve to each user; this checker validates that those annotations are complete and consistent across every version. It flags three failure modes that break multilingual indexing — a missing self-reference, duplicate or conflicting entries, and non-reciprocal (one-way) links — plus a missing x-default fallback, an optional but recommended safeguard. Broken hreflang makes engines serve the wrong language version or ignore your alternates entirely, surfacing the wrong page to searchers and to AI answer engines that cite by URL.

What it looks at

Self-reference
Every page in a hreflang set must list itself among the alternates; without this self-referencing tag search engines treat the annotation as unverified and may discard the whole cluster.
x-default fallback
The x-default value marks the page shown when no language or region matches the user's settings; it is optional but stops unmatched visitors from landing on the wrong locale.
Reciprocity
Hreflang links must be mutual — if page A points to page B, page B must point back to A; one-way links are treated as errors and dropped.
Duplicate entries
Two hreflang tags declaring the same language-region code with different URLs create a conflict engines cannot resolve, so neither URL is trusted.
Language-region codes
Values must be valid ISO 639-1 language codes, optionally with an ISO 3166-1 region (e.g. en, en-GB); a misspelled or non-existent code is silently ignored.
Complete alternate set
Each page should list the full set of every language version; if one version is omitted, the link between locales breaks and coverage is incomplete.

How to use it

  1. Paste the URL of one language version of your page into the checker.
  2. Review the flagged issues — missing self-reference, absent x-default, duplicates, or one-way links — grouped by locale.
  3. Fix the broken tags in each page's head (or sitemap / HTTP header) so every version lists the full, reciprocal set, then re-check.

Frequently asked questions

What is hreflang and when do I need it?

Hreflang is an annotation that tells search engines the language and region a page targets. You need it whenever the same content exists in more than one language or regional variant, so engines serve the right version to each user.

Does hreflang have to be reciprocal?

Yes. Every alternate you declare must declare you back — non-reciprocal (one-way) hreflang is treated as an error and ignored by Google.

What does x-default do?

x-default names the fallback page for users whose language or region matches none of your alternates. It is optional but recommended, and usually points to a language selector or your default-language homepage.

Where should hreflang tags go?

In the <head> of each page, in an XML sitemap, or in the HTTP header. Pick one method and apply it consistently — mixing methods for the same page can cause conflicts.

share the result Useful result? Send it to a teammate: Telegram WhatsApp X
this is just one tool

This audit is 1 of 85 operations in seo·matrix

Free tools show you WHAT to fix. The full audit + the autonomous team of 20 AI agents fix it end-to-end — strategy, content, GEO, internal links, publishing and day-2 upkeep.

All free tools →