So nutzt du: Hreflang Generator
- Add a row for every language or country version of the page: a language code (
de), an optional region code (AT) and the version’s full URL. - Set an x-default URL for visitors who match none of the versions — usually your main site or a language picker.
- Fix anything flagged in Checks, such as
en-UK(should been-GB) or relative URLs. - Copy the format you need: HTML link tags for every version’s
<head>, an HTTP header for PDFs and other non-HTML files, or XML sitemap entries.
What is hreflang?
hreflang is an annotation that tells Google which URLs are language or regional variants of the same content, so it can show a searcher in Vienna your de-AT page instead of the US English one. It doesn’t boost rankings; it swaps the right version into the results and stops near-identical regional pages (en-US vs en-GB) from being treated as duplicates. Bing largely relies on the content-language and lang attributes instead, so set those too.
The rules Google enforces
- Codes: the language is an ISO 639-1 two-letter code (
en,de,pt); the optional region is an ISO 3166-1 alpha-2 country code (GB,AT,BR). Region alone is invalid —hreflang="GB"does nothing. - Self-reference: each page must list itself as well as all its alternates.
- Return links: annotations must be reciprocal. If page A points to B, B must point back to A, otherwise Google may ignore the pair. The easiest way is to put the identical set of tags on every version — which is exactly what this generator outputs.
- Absolute, canonical URLs: use full
https://URLs that return 200 and are the canonical version — not redirects or noindexed pages.
Three ways to implement it
| Method | Best for | Example |
|---|---|---|
HTML <link> | Most websites | <link rel="alternate" hreflang="de-AT" href="https://example.com/at/"> |
HTTP Link header | PDFs and other non-HTML files | Link: <https://example.com/at/doc.pdf>; rel="alternate"; hreflang="de-AT" |
| XML sitemap | Large sites; keeps HTML lean | <xhtml:link rel="alternate" hreflang="de-AT" href="…"/> inside each <url> |
Use one method per URL set — mixing them is allowed but multiplies the chances of contradictions.
Common hreflang mistakes
en-UKinstead ofen-GB;en-EUores-LA(EU and LA aren’t country codes);jpinstead ofjafor Japanese;czinstead ofcsfor Czech.- Pointing every language version’s canonical at the English page — that tells Google to ignore the translations.
- Automatically redirecting visitors by IP, which can stop Googlebot (mostly crawling from the US) from ever seeing other versions.
Check a live page’s annotations with the SEO Checker, and build the rest of your multilingual sitemap with the Sitemap Generator.
Auch gesucht als: hreflang, hreflang tags, alternate hreflang, x-default, multilingual seo, international seo, language tags, hreflang sitemap.
Passende Tools zu: Hreflang Generator
- Meta Tag Generator — Fill in one form and get a complete, valid <head> — title, description, canonical, robots, Open Graph, X/Twitter cards, theme color and icons — with live previews and Webflow-specific output.
- Sitemap Validator — Find and validate your XML sitemap — URL count, sitemap index children, lastmod coverage, duplicates and foreign-host URLs — and check that the pages it lists really return 200.
- Redirect Generator — Paste your old and new URLs (from a spreadsheet, CSV or two columns) and get redirect rules for your server or platform — plus checks for chains, loops, duplicates and trailing-slash traps before you go live.
- robots.txt – Erklärvideo — Die Regeln in der robots.txt-Datei sind kurz, lassen sich aber leicht falsch interpretieren.
Häufige Fragen
Do I need a region code in hreflang?
de. Add de-AT and de-CH only when those pages actually differ (prices, spelling, legal text).What is x-default?
x-default marks the fallback URL for users whose browser language or location doesn’t match any listed version — typically a language selector or your international English page.Is it en-UK or en-GB?
en-GB. The ISO 3166-1 code for the United Kingdom is GB; “UK” is not valid and Google ignores tags using it.