hreflang क्या है? सिंटैक्स, नियम और आम ग़लतियाँ आसान भाषा में
hreflang टैग क्या हैं, मल्टीलिंगुअल साइट को इनकी ज़रूरत क्यों है, सही सिंटैक्स, x-default, canonical के साथ ये कैसे काम करते हैं, और वे ग़लतियाँ जिनसे Google इन्हें अनदेखा करता है।
अपडेट 24 सितंबर 2026 · 5 मिनट में पढ़ें
आपकी साइट ट्रांसलेट हो चुकी है और हर भाषा खुलती है। फिर भी Google हिन्दी वाले विज़िटर को अंग्रेज़ी पेज पर भेजता है, या सिर्फ़ एक भाषा इंडेक्स करता है। आमतौर पर वजह है hreflang का न होना या ग़लत होना।
इस गाइड में hreflang का काम, उसके नियम और वे ग़लतियाँ हैं जिनसे Google उसे अनदेखा करता है। पढ़ते-पढ़ते अपनी साइट जाँचने के लिए हमारा मुफ़्त मल्टीलिंगुअल SEO चेकर इस्तेमाल करें।
hreflang क्या है
hreflang एक <link> टैग का एट्रिब्यूट है जो सर्च इंजन को बताता है: "यह पेज इन दूसरी भाषाओं में भी है, इन URL पर"। फिर Google हर सर्च करने वाले को उसकी भाषा वाला वर्ज़न दिखाता है और सारे वर्ज़न को एक ग्रुप मानता है, आपस में मुक़ाबला करने वाले पेज नहीं।
एक आम ब्लॉक, जो हर भाषा वर्ज़न के <head> में जाता है:
<link rel="alternate" hreflang="en" href="https://example.com/en/pricing/" />
<link rel="alternate" hreflang="hi" href="https://example.com/hi/pricing/" />
<link rel="alternate" hreflang="de" href="https://example.com/de/pricing/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/pricing/" />
hreflang एक मज़बूत संकेत है, हुक्म नहीं। एक भी नियम ग़लत हुआ तो उसे अनदेखा कर दिया जाता है।
यह क्यों ज़रूरी है
hreflang के बिना आमतौर पर तीन चीज़ें होती हैं:
- सर्च में ग़लत भाषा दिखती है। जर्मन विज़िटर आपके हिन्दी पेज पर पहुँचता है, समझ नहीं पाता और चला जाता है।
- वर्ज़न आपस में मिल जाते हैं। Google लगभग एक जैसे पेज को ग्रुप करके सिर्फ़ एक दिखा सकता है, जिससे बाकी भाषाएँ छिप जाती हैं।
- नए बाज़ार अदृश्य रहते हैं। सही सेटअप वाले प्रतियोगी वह रैंकिंग ले जाते हैं जिसके लिए आपने ट्रांसलेशन किया था।
नियम
दोनों तरफ़ से लिंक (reciprocity)
अगर अंग्रेज़ी पेज हिन्दी पेज को लिस्ट करता है, तो हिन्दी पेज को भी अंग्रेज़ी पेज लिस्ट करना होगा। वरना Google जोड़ी को छोड़ देता है। आसान हल: हर वर्ज़न पर एक ही ब्लॉक डालें।
पूरे URL
हमेशा प्रोटोकॉल और होस्ट के साथ पूरा URL लिखें: https://example.com/hi/, कभी /hi/ नहीं। यह आपके लाइव URL से बिल्कुल मेल खाना चाहिए, https और www समेत।
ख़ुद का हवाला (self-reference)
हर पेज ब्लॉक में ख़ुद को भी शामिल करता है: हिन्दी पेज hreflang="hi" को अपने ही URL की ओर लिस्ट करता है।
सही ISO कोड
भाषा ISO 639-1 कोड है (en, hi, de), चाहें तो उसके बाद हाइफ़न और ISO 3166-1 क्षेत्र (en-IN, hi-IN, pt-BR)। सिर्फ़ क्षेत्र मान्य नहीं है। सबसे आम ग़लतियाँ:
| ग़लत | सही |
|---|---|
en-UK | en-GB |
in | hi (हिन्दी) या en-IN (भारत के लिए अंग्रेज़ी) |
jp | ja |
cn | zh या zh-CN |
kr | ko |
ua | uk (यूक्रेनी, UK नहीं) |
en_US | en-US (हाइफ़न, अंडरस्कोर नहीं) |
ग़लत कोड का मतलब है वह टैग हटा दिया जाता है। भारत में in की ग़लती बहुत आम है: in देश का कोड है, भाषा का नहीं।
x-default
x-default Google को बताता है कि जब आपकी कोई भाषा सर्च करने वाले से मेल न खाए तो कौन-सा पेज दिखाए। यह ज़रूरी नहीं है, लेकिन न हो तो Google अंदाज़ा लगाता है। इसे हर भाषा वर्ज़न के ब्लॉक में बाकी एंट्री की तरह जोड़ें।
hreflang लगाने के तीन तरीके
- HTML के
<head>में। सबसे आम और जाँचने में सबसे आसान। - XML sitemap में। हर
<url>अपने वर्ज़नxhtml:linkसे लिस्ट करता है। बड़ी साइटों के लिए अच्छा, क्योंकि सब एक फ़ाइल में रहता है। - HTTP
Linkहेडर में। PDF जैसी non-HTML फ़ाइलों के लिए, जिनमें<head>नहीं होता।
एक तरीका चुनें। मिलाना मना नहीं है, लेकिन अगर वे अलग बात कहें तो संकेत टकराते हैं।
hreflang और canonical
यहीं ज़्यादातर मल्टीलिंगुअल साइटें गड़बड़ करती हैं। Canonical कहता है "इस पेज का पसंदीदा URL यह है"। hreflang कहता है "ये दूसरे URL इसी पेज की दूसरी भाषाएँ हैं"। दोनों अलग सवालों के जवाब हैं।
नियम: हर भाषा वर्ज़न का canonical ख़ुद की ओर हो।
<!-- https://example.com/hi/pricing/ पर -->
<link rel="canonical" href="https://example.com/hi/pricing/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/pricing/" />
<link rel="alternate" hreflang="hi" href="https://example.com/hi/pricing/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/pricing/" />
अगर हिन्दी पेज का canonical अंग्रेज़ी पेज की ओर है, तो Google हिन्दी पेज को डुप्लिकेट मानता है, canonical का पालन करता है और hreflang अनदेखा कर देता है। ट्रांसलेशन डुप्लिकेट कंटेंट नहीं है, इसलिए दूसरी भाषा की ओर canonical किसी चीज़ की रक्षा नहीं करता।
html lang न भूलें
<html lang="hi"> एट्रिब्यूट पेज की अपनी भाषा बताता है। यह hreflang की जगह नहीं लेता, लेकिन ब्लॉक में उस पेज के कोड से मेल खाना चाहिए। जो हिन्दी पेज lang="en" कहे, वह उलझे संकेत देता है।
आम ग़लतियाँ
- कुछ भाषा जोड़ियों में वापसी लिंक नहीं।
- अधूरे (relative) URL, या ऐसे URL जो रीडायरेक्ट हों या 404 दें।
- हर ट्रांसलेशन पर canonical मूल भाषा की ओर।
- ऐसी साइट पर hreflang जहाँ हर भाषा एक ही URL पर है (JavaScript या
?lang=से बदलती है)। तब इशारा करने के लिए कोई असली पेज ही नहीं।
अपना hreflang कैसे जाँचें
कोई ट्रांसलेट किया गया पेज खोलें, सोर्स देखें (Ctrl+U या Cmd+Option+U) और hreflang व canonical सर्च करें। फिर लिस्ट का कोई URL खोलकर देखें कि वह वापस लिंक करता है या नहीं।
कुछ पेज के बाद यह धीमा हो जाता है। तेज़ तरीका है हमारे मुफ़्त मल्टीलिंगुअल SEO चेकर में पेज डालना। यह head, HTTP हेडर और sitemap में hreflang जाँचता है (कोड, पूरे URL, ख़ुद का हवाला, x-default, डुप्लिकेट), उसे html lang से मिलाता है, canonical देखता है, और छह तक ट्रांसलेट वर्ज़न खोलकर पक्का करता है कि वे खुलते हैं, वापस लिंक करते हैं और अपनी भाषा बताते हैं। hreflang से आगे की हर चीज़ के लिए हमारी मल्टीलिंगुअल SEO ऑडिट चेकलिस्ट देखें।
Lantis hreflang कैसे संभालता है
चार भाषाओं वाली 50 पेज की साइट पर हाथ से hreflang लिखने का मतलब है सैकड़ों टैग जिन्हें सिंक रखना है। Lantis हर भाषा को उसके अपने URL (/hi/ जैसे सबफ़ोल्डर) पर दिखाता है और हर भाषा का hreflang और x-default, सही html lang और ख़ुद की ओर canonical अपने आप जोड़ता है, Framer, Webflow, WordPress, Shopify या किसी भी साइट पर एक लाइन कोड से। ट्रांसलेशन AI करता है, विज़ुअल एडिटर और ग्लॉसरी के साथ।
कीमत हर भाषा €3/महीना से (दो भाषाओं से €2.50, दस से €2), और पहले 100 ट्रांसलेशन बिना कार्ड मुफ़्त। Framer पर Lantis प्लगइन इंस्टॉल करें। क़दम-दर-क़दम गाइड: Framer और Webflow।
अक्सर पूछे जाने वाले सवाल
क्या hreflang रैंकिंग फ़ैक्टर है?
सीधे नहीं। यह तय करता है कि Google हर सर्च करने वाले को कौन-सा भाषा वर्ज़न दिखाए, जिससे हर बाज़ार में क्लिक बढ़ते हैं और वर्ज़न आपस में नहीं मिलते।
क्या x-default ज़रूरी है?
इसकी पुरज़ोर सलाह दी जाती है। इसके बिना Google को अंदाज़ा लगाना पड़ता है कि जिनकी भाषा आप कवर नहीं करते उन्हें क्या दिखाए। इसे अपनी मुख्य भाषा या भाषा चुनने वाले पेज की ओर करें।
en-IN इस्तेमाल करूँ या सिर्फ़ en?
अगर सबके लिए एक ही अंग्रेज़ी वर्ज़न है तो en इस्तेमाल करें। en-IN और en-US जैसे क्षेत्र तभी जोड़ें जब हर देश के लिए अलग वर्ज़न हों, जैसे अलग कीमतें (रुपये बनाम डॉलर) या अलग वर्तनी।
दूसरी भाषाओं में भी English · Français · Deutsch · Italiano · Português · Русский · 日本語 · 한국어 · Türkçe · Bahasa Indonesia · العربية