Hreflang Tags Explained: Multilingual SEO Without Duplicate Confusion
Published 2026-08-04
Hreflang tags tell search engines which language (and optionally which country) version of a page to show. If you publish the same article in English, German, and Lithuanian — or separate US/UK pages — hreflang helps Google match the right URL to the right audience instead of treating the pages as random duplicates.
Hreflang does not create rankings by itself. It clarifies which URL belongs to which audience. Wrong or incomplete hreflang can be ignored, so accuracy matters more than volume.
When you actually need hreflang
- The same content exists in multiple languages on different URLs.
- You have country-targeted variants (for example
en-USanden-GB) with meaningful differences such as currency, shipping, or spelling. - Users in different locales should land on different hostnames or folders (
/en/,/de/,de.example.com).
You usually do not need hreflang for a single-language site, for purely translated UI strings inside one URL, or for pages that are not meant to be indexed.
How hreflang is declared
The most common method on small sites is HTML <link rel="alternate" hreflang="…"> tags in the <head>. Each language version should list all alternates in the set, including a self-reference.
<link rel="alternate" hreflang="en" href="https://example.com/page" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page" />
<link rel="alternate" hreflang="lt" href="https://example.com/lt/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />
x-default points to the fallback URL when no language matches better — often the international or English hub.
Language and region codes
- Language only:
en,de,lt(ISO 639-1). - Language + region:
en-US,en-GB,pt-BR(language lowercase, region uppercase). - Do not invent codes. Invalid values are ignored.
Use region codes only when the page is truly localized for that market. Two identical English pages labeled en-US and en-GB with no real differences add complexity without helping users.
Rules that must not be broken
- Reciprocal links: if page A points to page B, page B must point back to page A.
- Self-reference: each page should include its own hreflang entry.
- Absolute HTTPS URLs: use full canonical URLs, not relative paths.
- Consistent set: every page in the cluster should advertise the same set of alternates.
- Indexable targets: hreflang should point to 200 URLs you want shown — not redirects, soft 404s, or noindex pages.
Hreflang vs canonical
Canonical says “this is the main URL for duplicate/similar content.” Hreflang says “these are equivalent pages for different audiences.” They work together:
- Each language URL typically canonicalizes to itself.
- Do not canonical every language version to the English page while also using hreflang — that sends mixed signals.
Common mistakes
- Listing only one direction (EN → DE but not DE → EN).
- Pointing hreflang at redirected or parameter URLs.
- Using
en-UKinstead ofen-GB. - Copy-pasting the same hreflang block on unrelated pages.
- Expecting hreflang to “fix” thin translated pages — content quality still decides indexing.
A practical workflow
- Map each piece of content to its language/region URLs in a spreadsheet.
- Generate the hreflang link set for that cluster.
- Deploy the tags on every URL in the set.
- Confirm reciprocity and self-references with view-source.
- Request indexing for key URLs and monitor International Targeting / Page Indexing reports over time.
For small sites, HTML tags are enough. Large sites sometimes put hreflang in XML sitemaps instead — pick one primary method and keep it consistent.
FAQ
Does hreflang boost rankings?
It mainly improves which URL is shown to which audience. Rankings still depend on relevance, quality, and links.
Do I need hreflang for a language switcher?
A visible language menu helps users. Hreflang helps search engines. Ideally you have both, and they point to the same URLs.
What if I only have a partial translation?
Only include URLs that truly exist and are ready. Incomplete clusters with dead targets create errors.
Related tools
- Hreflang Tag Generator — Free hreflang generator for multilingual SEO — language/region codes, x-default, copy-ready HTML tags.
- Canonical URL Generator — Build canonical tag for a given URL.
- Meta Tag Generator — Generate basic SEO meta tags
- Robots.txt Generator — Generate a robots.txt file quickly.