Hreflang Tag Generator & Reciprocity Checker
Generate correct, fully-reciprocal hreflang tags for your international pages — plus check an existing implementation for the missing return links that make Google ignore hreflang altogether.
1. Generate hreflang tags
Add every language/region version of the page. The tool builds a complete, self-referencing, fully reciprocal tag set for each one — the exact thing that goes wrong most often when done by hand.
Missing return links
Hreflang is bidirectional. If your English page links to the Spanish page, the Spanish page must link back to the English page — and to every other version. One-directional hreflang is the single most common real-world error, and Google's documented behavior is to disregard the annotations when a return link is missing.
No self-referencing tag
Every page must list itself as one of its own alternates, in addition to the other language versions. A page that references its siblings but not itself is a broken hreflang set even if every other link is correct.
Wrong language/region codes
The language part must be a valid ISO 639-1 code (en, es, de).
The optional region part must be ISO 3166-1 Alpha-2 (en-US, en-GB),
joined with a hyphen, never an underscore. A region code can't be used without a language code.
Canonical/hreflang conflicts
Each language version should have its own self-referencing canonical tag. Pointing every version's canonical at one "main" language tells Google that page is the only real one — which contradicts the hreflang set and undermines it entirely.
Relative URLs
Hreflang href values must be full, absolute URLs including the protocol
(https://example.com/es/), never a relative path like /es/.
Search engines can't reliably resolve relative hreflang references.
Missing or wrong x-default
x-default tells Google which version to serve a visitor whose language/region
doesn't match any of your listed versions. Skip it and you have no control over that fallback —
Google decides for you.
2. Check an existing implementation
Already have hreflang live? Paste the tags (or full <head> source) from each language version below and the checker will flag missing return links, missing self-references, bad codes and more.