Hreflang Tag Generator

Correct rel="alternate" hreflang tags for multi-language and multi-region sites.

Runs in your browserNo sign-up required
Language / Region Versions
Generated Tags

Add these inside the <head> of every language version of this page — each version needs the full set, including a tag pointing to itself.

Get the Reciprocal Links Right

The hardest part of hreflang isn't the tag syntax — it's making sure every page in the set correctly links back to every other one. This tool builds the full, correct, self-referencing set from your list of language/region URLs in one pass.

How to Use This Tool

  1. 1Add each language/region versionPick a language, optionally a region, and its URL.
  2. 2Add more entries as neededOne row per language or language-region variant of the page.
  3. 3Optionally set an x-defaultThe fallback URL for visitors whose language doesn't match any entry.
  4. 4Copy the generated tagsReady-to-paste rel="alternate" hreflang tags for your page's head.

Good to Know

  • hreflang tags should be reciprocal — if Page A links to Page B via hreflang, Page B needs a matching tag pointing back to Page A, for every URL in the set. This tool generates the full self-referencing set for exactly that reason.
  • A language code alone (like "en") targets all speakers of that language broadly; adding a region (like "en-GB") narrows it to that specific language-region combination.
  • x-default is what search engines fall back to for visitors whose language/region doesn't match any of your specific entries — commonly a language-selector page or your primary market's version.
  • Getting hreflang wrong (broken reciprocal links, invalid codes) is a common source of international SEO problems — this tool validates codes against the standard ISO lists.

Frequently Asked Questions

What does "reciprocal" mean for hreflang tags?

It means every URL in the set must link to every other URL, including itself — if your English page links to your French page via hreflang, the French page needs a matching link back, or search engines may ignore the annotations.

Do I need an x-default?

It's optional but recommended — it tells search engines which version to serve to visitors whose language doesn't match any of your specific entries, commonly a language-selector page or your default market.

Where do these tags go?

Each generated <link rel="alternate" hreflang="..."> tag goes in the <head> of every page in the set — alternatively, the same information can be submitted via an XML sitemap instead of inline tags.