Hreflang tells search engines: "this page has siblings in other languages or regions — here's who each sibling serves." Get it right, and a Brazilian searcher sees Portuguese, a German sees German. Get it wrong, and the wrong audience gets the wrong page with absolute confidence. The rules are short and unforgiving.
Rule one: bidirectional
Every hreflang annotation works in pairs. Page A points to B as the German version; page B must point back to A as the English version — and both point to themselves. A one-way annotation is a broken phone; search engines ignore incomplete clusters. This is the single most common implementation error, and it silently disables the whole set.
Rule two: valid codes
Language codes are ISO 639-1 (ar, en, pt); region codes are ISO 3166-1 Alpha 2 (BR, DE). Region alone is invalid — hreflang="DE" does nothing; de-DE is the correct pair. And an x-default entry should exist for visitors matching no version: usually the language selector or the primary language.
Rule three: one method, everywhere
Annotations can live in the page head, in XML sitemaps, or in HTTP headers — pick one method and apply it consistently. Sitemap-based annotation is the most maintainable for large sets and doesn't risk being stripped by page builders that sanitize head tags.
Rule four: translated means translated
Hreflang connects pages that are genuinely localized — same substance, adapted language and currency and examples. It is not a machine for multiplying near-duplicates. Machine-translated pages pushed live without review will rank exactly as well as they read: usually nowhere, occasionally embarrassingly. Translate properly first (human review on anything customer-facing), then annotate.
Verify with the International Targeting report and the URL Inspection tool's alternate-page listing. Ten minutes per language set, checked quarterly, keeps the whole mesh intact — and the payoff is real traffic in markets you're already serving.



