Guides
How to Build Multilingual SEO with Hreflang
Search engines need stable URLs and clear relationships between equivalent translations; browser-language redirects alone can hide versions from crawlers.
Use a distinct URL for every language, a self-referencing canonical, reciprocal hreflang links and a visible language switcher. Keep each page primarily in one language.
Publish dedicated crawlable URLs per locale
Assign a distinct, crawlable URL path (such as /de/, /fr/, /es/) to each localized version. Relying solely on IP geolocation or browser Accept-Language headers creates cloaking risks and prevents search crawlers from discovering and indexing translated content.
Configure complete and reciprocal hreflang links
Every translated version must declare a reciprocal set of link rel='alternate' hreflang tags referencing all available language versions, including a self-reference and an x-default fallback. Incomplete or unidirectional hreflang declarations cause search engines to ignore language signals.
Keep canonical URLs strictly self-referencing
Each translated page must point its canonical tag to its own localized URL, never to the default English version. Canonical tags indicate duplicate page consolidation, whereas hreflang indicates language alternatives; conflating them breaks localized indexing.
Deliver a fully localized user and robot experience
Translate all page components—including titles, meta descriptions, navigation, buttons, forms, error states, and body copy—into the declared page language. Serving English text within a foreign language shell harms user engagement and sends mixed relevance signals to search engines.
Systematic cross-locale verification
Routinely audit all language versions to ensure every hreflang target returns 200 OK, XML sitemaps include localized alternates, internal cross-links function correctly, and document lang attributes match the content.