← All postsHow-to

Hreflang: telling search engines which language version to show

Hreflang is the tag that stops your German page competing with your English one. It is also the tag most often implemented wrongly — and a broken implementation is worse than none at all.

How-toH

Hreflang is an annotation that tells search engines a page has versions for other languages or regions, and which version suits which audience. Without it, a site published in three languages presents three pages about the same thing and leaves the search engine to guess which one a Norwegian reader should see — often wrongly, and sometimes by treating them as duplicates.

It is not a ranking factor and will not lift a page in results. What it does is make sure the right version is the one shown, which for a business selling into several markets is the difference between a visitor who converts and one who lands on a page in a language they do not read.

How it works

  • Each version of a page declares every other version, including itself. The declarations must be reciprocal — if the English page points to the German one, the German page must point back, or the whole set is ignored.
  • The value is a language code, optionally with a region: en, en-gb, de, de-at. Language first, region second, and the region alone is not valid.
  • Region codes are country codes, not language ones. There is no en-eu, and de-de means German in Germany rather than German generally.
  • x-default marks the fallback for visitors who match none of the versions. It is optional and worth having.
  • The annotation can live in the page head, in HTTP headers, or in the sitemap. One place, consistently — mixing methods is a common source of contradiction.

The mistakes that break it

  1. Non-reciprocal links. The single most common failure: version A declares B, B declares nothing. Search engines discard the set rather than guessing.
  2. Wrong codes. Using uk instead of gb for the United Kingdom, or inventing a region that does not exist, invalidates the annotation silently.
  3. Pointing at redirects or pages that no longer resolve. Every declared URL must be the final, indexable one.
  4. Combining hreflang with a canonical that points to a different language. The two contradict each other and canonical usually wins, which removes the other versions from the index.
  5. Declaring versions that do not actually differ. Two pages with identical English text and different currencies are a thin case; the annotation works but the pages may still be filtered as duplicates.

A broken hreflang set is worse than no hreflang. When the annotations are invalid or non-reciprocal, search engines ignore them entirely and fall back to their own judgement — but the site has usually been restructured on the assumption that they work, which means duplicate-looking pages across languages with no signal to separate them. If you cannot maintain reciprocity, publishing without hreflang and keeping the languages on clearly separate URLs is the safer position.

Before you reach for the tag

The prior question is whether the site should be multilingual at all. Machine-translated pages published at scale are, by most search engines' own guidance, low-value content, and they carry a real cost: someone has to maintain them, and a badly translated page damages trust more than an English one would. A useful test is whether you can answer an enquiry in that language. If nobody in the business can, the translated page is generating conversations you cannot have.

Structure first

  • Subdirectories — site.com/de/ — are simplest to run and inherit the authority of one domain. This is the right default for most small businesses.
  • Subdomains — de.site.com — are workable and treated as more separate.
  • Country domains — site.de — are the strongest local signal and the most expensive to maintain, in registrations, hosting and attention.
  • Whatever you pick, keep the URL structure parallel across languages. It makes reciprocity easy to check and mistakes easy to see.

Where this sits

Ettex Sites gives you the URL structure and the page-level control the annotation needs, and the surrounding technical checklist is in seo checklist, with the geographic side of search in local seo — a different problem from the language one, and frequently confused with it.

To be direct: we do not translate content, do not generate hreflang automatically and do not validate the annotations across a site. Those are jobs for a translator and for a technical audit tool, and neither is something a site builder should pretend to do.

Frequently asked

What is hreflang used for?

Telling search engines which language or regional version of a page to show to which audience, so versions of the same content do not compete or get treated as duplicates.

Does hreflang improve rankings?

No. It affects which version is shown, not how highly it ranks. The benefit is that the right visitor lands on the right page.

What is the most common hreflang mistake?

Non-reciprocal declarations — one version points at another that does not point back. Search engines discard the whole set when that happens.

Should a small business use subdirectories or country domains?

Subdirectories, in almost every case. Country domains give the strongest local signal and cost far more in registration, hosting and ongoing attention than a small site can justify.

IP
Written by Ivan P.

Part of the Ettex team — writing about product, engineering and the future of work.

More posts
Get the best of the Ettex blogProduct news, guides and tips — straight to your inbox, no spam.