Free tool
Hreflang generator.
Paste your locale and URL pairs and get the full tag set back, reciprocal and self-referencing, with x-default handled. Hreflang fails silently when a single return tag is missing, so the point of generating it is that you cannot forget one. Everything runs in your browser and nothing is uploaded.
Your locales
One per row. Language code, or language and region, plus the full URL for that version.
Output
Add at least two locales to generate the set.
Why generate it
Hreflang breaks quietly.
The rule that catches everyone is reciprocity. If the German page points at the English one, the English one has to point back, and every page in a set has to reference every other page including itself. Miss one return tag and the whole cluster is ignored, with nothing in Search Console shouting about it.
The other frequent faults are a region code that does not exist, a tag pointing at a URL that then redirects, and a locale silently dropping out of the set during a release. This tool removes the first category by construction. The rest is validation, which is the part we do by hand on international SEO work.
Two notes on correctness. Language codes are ISO 639-1 and region codes are ISO 3166-1 Alpha 2, so it is en-GB rather than en-UK. And x-default is for the page you want shown when nothing else matches, usually a global or language-selector page rather than your biggest market.
Keep reading
Related
Book me
Hreflang set not being honoured?
Generating it is the easy half. If Google is ignoring yours, send us two of the URLs and we will tell you which return tag is missing or which locale is being redirected before it can be crawled.