Hreflang
An HTML attribute that signals to search engines which language and region a page is intended for, preventing duplicate content issues across multilingual sites.
Reviewed by Alexander Yarovenko · Updated: 2026-09-18
What Is Hreflang?
Hreflang is an HTML link attribute (rel="alternate" hreflang="x") that tells Google which language and regional variant of a page to serve to users in different locales. It is essential for multilingual and multi-regional websites to ensure the correct page version ranks in each country or language market.
Implementation Methods
- HTML <head>:
<link rel="alternate" hreflang="en-gb" href="https://example.com/en-gb/page" /> - HTTP headers: For non-HTML files (PDFs)
- XML sitemap: Preferred for large sites with many language variants
Key Rules
- Hreflang tags must be reciprocal — each page must reference all its alternates, including itself
- Use BCP 47 language codes (e.g.,
en,en-us,pt-br) - Always include an
x-defaultfallback for users not matching any specific locale - All pages in the hreflang set must be indexable (not noindex, not returning errors)
Common Errors
- Missing reciprocal annotations
- Incorrect language codes
- Pointing to redirected or 404 URLs
- Mixing hreflang with canonical tags incorrectly
How to use this concept in SEO
hreflang connects equivalent language or regional pages; it does not replace canonical. Every variant should be useful in its language, self-canonical, and reference the full reciprocal set, including itself.
Audit checklist
- Confirm that the implementation matches the page purpose and the user task.
- Check the HTTP response, rendered HTML, canonical, robots rules, and internal links together.
- Use Search Console and analytics to verify the result instead of relying on one crawler signal.
- Test a representative URL on mobile and desktop after deployment.
- Document the expected outcome so regressions can be detected in the next audit.
Practical example
English, Russian, and Ukrainian versions each return 200 and list en, ru, uk, and x-default alternates with absolute URLs.
How to validate the result
Record the current crawl, indexation, performance, and traffic state before changing anything. Recheck the affected template and a representative URL after deployment, then monitor Search Console over the following crawl cycle. A technical change is complete only when the live response and Google’s observed state agree.