hreflang Tags Generator
Generate correct hreflang tags for multilingual & multi-regional websites — HTML, XML sitemap, HTTP header & JavaScript formats.
⚙️ Global Settings
💡 Auto-generate URLs based on your base URL and selected languages.
🌍 Language & URL Entries
💡 Add each language/region version of your page. Use language codes like en, fr, de, or region-specific like en-US, en-GB, zh-CN.
💻 Generated hreflang Tags
Paste inside <head> tag
⚠️ Issues & Warnings
✅ hreflang Checker
💡 Paste your existing HTML or hreflang tags to check for errors and validate them.
🔍 Check Results
📚 hreflang Complete Guide
🔹 What is hreflang?
hreflang is an HTML attribute that tells Google which language and region a page targets. It prevents duplicate content issues for multilingual sites and helps show the right page to the right user.
🔹 When to use hreflang?
- Same content in multiple languages (English + French + Spanish)
- Same language targeting different regions (en-US + en-GB + en-AU)
- Pages with alternate regional currencies or formats
🔹 Common Language Codes
🔹 Implementation Methods
1. HTML <head> — Most common. Add link tags inside <head> on every page version.
2. XML Sitemap — Best for large sites. Add alternate entries in your sitemap.xml.
3. HTTP Headers — For non-HTML files (PDF, etc.). Set via server configuration.
🔹 Critical Rules
- ✅ hreflang must be bidirectional — page A must reference page B AND page B must reference page A
- ✅ Always include x-default as fallback for unmatched regions
- ✅ Each page must reference itself in the hreflang list
- ✅ Use correct ISO 639-1 language codes (en, fr, de, zh)
- ✅ Use correct ISO 3166-1 region codes (US, GB, CN, AU)
- ❌ Don't use hreflang for pagination or different content types
- ❌ Don't mix language and region codes incorrectly (e.g., en-FR = English content in France)
🔹 Common Mistakes
❌ Missing self-referencing — Every page in the set must include a tag pointing to itself.
❌ Missing x-default — Without x-default, Google may not know what to show to users in uncovered regions.
❌ Non-canonical URLs — Always use absolute, canonical URLs in hreflang tags.
❌ Wrong language codes — Use zh-Hans for Simplified Chinese, not zh-CN. Use pt-BR for Brazilian Portuguese.
