React SEO गाइड: क्लाइंट-साइड रेंडरिंग इंडेक्सिंग को क्यों नुकसान पहुँचाती है, कब SSR या प्रीरेंडरिंग चुनें, React 19 में मेटा टैग कैसे सेट करें, और AI के लिए पठनीय कैसे रहें।

इस पेज पर
AI से इस लेख का सार देखें
त्वरित क्विज़
क्या SEO आपके लिए सही है, और शुरुआत कैसे करें?
Sorank आपके जवाबों से मेल खाता है
इसे अपनी साइट पर 3 दिनों के लिए आज़माएं और देखें कि Google, ChatGPT और बाकी AI पर आप कहां खड़े हैं।
3 दिन का मुफ़्त ट्रायल शुरू करें3 दिन मुफ़्त, फिर जब चाहें बंद करें। 90 दिन की नतीजे-या-रिफ़ंड गारंटी।
संक्षेप में: React Google पर रैंक कर सकता है, पर डिफ़ॉल्ट सिंगल पेज ऐप लगभग खाली HTML फ़ाइल भेजती है और कंटेंट दिखाने के लिए JavaScript पर निर्भर रहती है, जिससे इंडेक्सिंग में देरी होती है और पेज ज़्यादातर AI क्रॉलर से छिप जाता है। भरोसेमंद समाधान है सर्वर से HTML भेजना: स्टैटिक पेज बिल्ड के समय प्रीरेंडर करें, या सर्वर रेंडरिंग वाला फ़्रेमवर्क (Next.js, React Router) इस्तेमाल करें। फिर हर URL के लिए अनूठा टाइटल, विवरण और कैनोनिकल सेट करें, असली लिंक और स्टेटस कोड रखें, और जाँचें कि बॉट्स को क्या मिलता है।
React SEO एक React ऐप को क्रॉल, इंडेक्स और समझने योग्य बनाने का काम है, ताकि सर्च इंजन और AI असिस्टेंट उसे पढ़ सकें। React अपने आप में तटस्थ है: समस्याएँ तब आती हैं जब सब कुछ ब्राउज़र में रेंडर होता है। Google अपनी JavaScript SEO basics में पुष्टि करता है कि वह JavaScript ऐप्स को तीन चरणों में प्रोसेस करता है (क्रॉलिंग, रेंडरिंग, इंडेक्सिंग), और कहता है कि "सर्वर-साइड या प्री-रेंडरिंग अब भी एक बढ़िया विचार है, क्योंकि यह आपकी साइट को उपयोगकर्ताओं और क्रॉलर दोनों के लिए तेज़ बनाती है, और सभी बॉट JavaScript नहीं चला सकते।"
एक React ऐप जो सिंगल पेज ऐप (SPA) के रूप में बनी है, ऐसा HTML भेजती है जिसमें खाली root div और एक script टैग के अलावा लगभग कुछ नहीं होता। ब्राउज़र JavaScript डाउनलोड करता है, चलाता है और पेज बनाता है। जो क्रॉलर सिर्फ़ HTML पढ़ता है, उसे इंडेक्स करने लायक कुछ नहीं दिखता: न हेडिंग, न टेक्स्ट, न लिंक।
Googlebot JavaScript चलाता है, पर एक अलग चरण में: पेज क्रॉल होता है, रेंडरिंग की कतार में जाता है, हेडलेस Chromium में रेंडर होता है, और तभी रेंडर किए गए लिंक और कंटेंट इस्तेमाल होते हैं। हर अतिरिक्त चरण एक विफलता का मौका है (स्क्रिप्ट एरर, ब्लॉक हुआ API, टाइमआउट) और खोज में नए पेज दिखने से पहले देरी जोड़ता है। JavaScript SEO पर हमारी गाइड इस प्रक्रिया को विस्तार से बताती है, और Google इंडेक्सिंग पर हमारा लेख बताता है कि पेज जल्दी इंडेक्स कैसे करवाएँ।
दूसरे बॉट कम धैर्यवान हैं। Vercel के दिसंबर 2024 के विश्लेषण AI क्रॉलर का उदय ने पाया कि "कोई भी बड़ा AI क्रॉलर फ़िलहाल JavaScript रेंडर नहीं करता", और GPTBot, ChatGPT-User, OAI-SearchBot, ClaudeBot और PerplexityBot के नाम लिए। क्लाइंट-रेंडर्ड React पेज ChatGPT, Claude और Perplexity के लिए अदृश्य है, भले Google उसे इंडेक्स कर ले।
React टीम अब नए ऐप्स को एक फ़्रेमवर्क से शुरू करने की सलाह देती है। जब उसने 14 फ़रवरी 2025 को Create React App को बंद करने की घोषणा की, तो उसकी घोषणा में लिखा कि "सर्वर रेंडरिंग SEO को बेहतर बना सकती है", और यह भी कि यह उपयोगकर्ताओं को कंटेंट देखने से पहले डाउनलोड करने वाले JavaScript को घटाकर परफ़ॉर्मेंस भी सुधारती है। विकल्प, खोज के लिए सबसे कमज़ोर से सबसे मज़बूत तक:
| तरीका | बॉट्स को क्या मिलता है | SEO का फ़ैसला | आम टूल |
|---|---|---|---|
| क्लाइंट-साइड रेंडरिंग (SPA) | खाली HTML, कंटेंट JavaScript के बाद | कमज़ोर: इंडेक्सिंग में देरी, AI क्रॉलर से अदृश्य | Vite + React, पुराने Create React App प्रोजेक्ट |
| डायनामिक रेंडरिंग | सिर्फ़ बॉट्स के लिए प्रीरेंडर्ड HTML | एक उपाय, Google इसकी लंबी-अवधि सिफ़ारिश नहीं करता | प्रीरेंडर सेवाएँ, हेडलेस ब्राउज़र प्रॉक्सी |
| बिल्ड पर स्टैटिक प्रीरेंडरिंग | हर ज्ञात URL के लिए पूरा HTML | कम बदलने वाले कंटेंट के लिए बहुत अच्छा | React Router प्रीरेंडरिंग, स्टैटिक साइट जेनरेटर, Next.js स्टैटिक एक्सपोर्ट |
| सर्वर-साइड रेंडरिंग | हर अनुरोध पर पूरा HTML, फिर हाइड्रेशन | बड़ी या बार-बार अपडेट होने वाली साइटों के लिए सबसे अच्छा | Next.js, React Router (framework mode, पहले Remix) |
डायनामिक रेंडरिंग पर Google का दस्तावेज़ स्पष्ट है: यह "एक उपाय था, दीर्घकालिक समाधान नहीं", और Google सर्वर-साइड रेंडरिंग, स्टैटिक रेंडरिंग या हाइड्रेशन की सलाह देता है। अगर आप फ़्रेमवर्क चुन रहे हैं, तो हमारी Next.js SEO गाइड रेंडरिंग मोड, Metadata API और साइटमैप विस्तार से बताती है।
अगर माइग्रेट करना संभव न हो, तो सिंगल पेज ऐप को भी सावधानी से Google इंडेक्स कर सकता है। हमारी सिंगल पेज ऐप्लिकेशन SEO गाइड उसकी शर्तें बताती है; बाकी लेख दोनों मामलों पर लागू होता है।
React 19 (5 दिसंबर 2024 से स्थिर) से कॉम्पोनेंट सीधे title, meta और link टैग रेंडर कर सकते हैं, और React उन्हें दस्तावेज़ के head में ऊपर उठा देता है। React 19 रिलीज़ नोट्स कहते हैं कि यह मूल समर्थन "सिर्फ़ क्लाइंट ऐप्स, स्ट्रीमिंग SSR और Server Components" के साथ काम करता है। React 19 से पहले react-helmet या react-helmet-async जैसी लाइब्रेरी यही काम करती थीं, और प्रति रूट डिफ़ॉल्ट बदलने के लिए वे अब भी उपयोगी हैं।
function ProductPage({ product }) {
return (
<>
<title>{`${product.name} | Shop`}</title>
<meta name="description" content={product.summary} />
<link rel="canonical" href={`https://example.com/p/${product.slug}`} />
<h1>{product.name}</h1>
</>
)
}हर तरीके पर लागू होने वाले तीन नियम:
सावधान
क्लाइंट-ओनली ऐप में React द्वारा रेंडर किए गए टैग तभी मौजूद होते हैं जब JavaScript चल जाए। Google उन्हें रेंडरिंग के बाद पढ़ सकता है; AI क्रॉलर और ज़्यादातर सोशल प्रीव्यू बॉट नहीं पढ़ सकते। सर्वर रेंडरिंग या प्रीरेंडरिंग उन्हें सबके लिए HTML रिस्पॉन्स में रखती है।
Google कहता है कि वह आपके लिंक केवल तभी खोज सकता है जब वे href एट्रिब्यूट वाले HTML a तत्व हों, और वह अलग कंटेंट लोड करने के लिए URL फ़्रैगमेंट इस्तेमाल करने के खिलाफ़ सलाह देता है। ज़्यादातर React SEO विफलताएँ रूटिंग के विवरण से आती हैं:
| गलती | असर | समाधान |
|---|---|---|
| div या button पर onClick से नेविगेशन | Google को फ़ॉलो करने के लिए कोई लिंक नहीं मिलता | राउटर का Link कॉम्पोनेंट इस्तेमाल करें, जो href के साथ a रेंडर करता है |
| हैश रूट (/#/products) | Google के लिए सभी पेज एक URL साझा करते हैं | BrowserRouter या फ़्रेमवर्क के साथ इतिहास-आधारित रूट (/products) इस्तेमाल करें |
| "not found" व्यू जो 200 स्टेटस के साथ जाए | Search Console में Soft 404 | सर्वर से असली 404 लौटाएँ, या शुद्ध SPA में JavaScript से noindex जोड़ें |
| सिर्फ़ क्लाइंट-साइड रीडायरेक्ट | धीमे या छूटे हुए रीडायरेक्ट | स्थानांतरित पेजों के लिए सर्वर 301 या 308 रीडायरेक्ट इस्तेमाल करें |
| क्लिक या स्क्रॉल पर लोड होने वाला कंटेंट | क्रॉलर के लिए टेक्स्ट कभी रेंडर नहीं होता | मुख्य कंटेंट लोड पर रेंडर करें; सूचियों को असली URL के साथ पेजिनेट करें |
| robots.txt में ब्लॉक JavaScript या API | Google खाली पेज रेंडर करता है | पेज के लिए ज़रूरी स्क्रिप्ट और API एंडपॉइंट अनुमति दें |
देखने के लिए कि Google क्या रेंडर करता है, Search Console के URL Inspection टूल का इस्तेमाल करें और टेस्ट किए गए पेज का HTML देखें, या मुख्य टेम्पलेट पर एक इंडेक्सेबिलिटी चेकर चलाएँ।
React में कोई अंतर्निहित साइटमैप नहीं है। sitemap.xml को बिल्ड के समय आपके रूट और डेटा से बनाएँ (या अपने फ़्रेमवर्क की साइटमैप सुविधा से), सिर्फ़ 200 लौटाने वाले कैनोनिकल URL सूचीबद्ध करें, और उसका हवाला robots.txt में दें। छोटी स्टैटिक साइटों के लिए XML साइटमैप जनरेटर काम करता है।
स्ट्रक्चर्ड डेटा का नियम मेटाडेटा जैसा ही है: JSON-LD स्क्रिप्ट को पेज के साथ, उसी डेटा से, आदर्श रूप से सर्वर पर रेंडर करें। Google रेंडरिंग के बाद JavaScript से इंजेक्ट किया JSON-LD पढ़ सकता है, पर जो मार्कअप शुरुआती HTML में नहीं है, वह उन क्रॉलर के लिए नहीं है जो रेंडर नहीं करते। पोस्ट के लिए Article, ई-कॉमर्स के लिए Product, पूरी साइट के लिए Organization और गहरे पेजों के लिए BreadcrumbList इस्तेमाल करें।
सुझाव
किसी पेज के URL पर curl चलाएँ और आउटपुट में उसका H1 और मुख्य भाग का एक वाक्य खोजें। अगर वे नहीं हैं, तो Google पेज को रेंडरिंग के बाद इंडेक्स कर सकता है, पर AI क्रॉलर को कुछ नहीं दिखेगा।
बड़े JavaScript बंडल Core Web Vitals को नुकसान पहुँचाते हैं: पेज प्रतिक्रिया देने योग्य बनने से पहले ब्राउज़र को कोड डाउनलोड, पार्स और हाइड्रेट करना पड़ता है, जो Largest Contentful Paint और Interaction to Next Paint पर असर डालता है, खासकर मोबाइल पर। React टीम की Create React App घोषणा बताती है कि सर्वर रेंडरिंग कम JavaScript और पूरा HTML दस्तावेज़ भेजती है, जिससे तेज़ First Contentful Paint मिलता है और INP घट सकता है। व्यावहारिक उपाय: React.lazy से रूट के अनुसार कोड बाँटें, इमेज स्पष्ट आयामों के साथ दें, फ़ोल्ड के नीचे के कॉम्पोनेंट लेज़ी-लोड करें, और थर्ड-पार्टी स्क्रिप्ट का ऑडिट करें।
GEO (जेनरेटिव इंजन ऑप्टिमाइज़ेशन) पहुँच से शुरू होता है। चूँकि AI क्रॉलर कच्चा HTML फ़ेच करते हैं, React पेज को अपना टेक्स्ट, हेडिंग और JSON-LD बिना JavaScript के देना होगा, ताकि उसे पढ़ा, सारांशित और उद्धृत किया जा सके। वेबसाइट क्रॉलेबिलिटी AI ऑडिट दिखाता है कि ये बॉट आपके पेजों से क्या पाते हैं। दूसरी शर्त है उद्धृत करने लायक कंटेंट: ऐसे पेज जो हर भाग में एक सवाल का जवाब दें, स्रोतों, आँकड़ों और साफ़ परिभाषाओं के साथ।
यही कंटेंट वाला हिस्सा Sorank स्वचालित करता है, जो हमारा अपना प्रोडक्ट है। Sorank autopilot SEO और GEO सॉफ़्टवेयर है: इसका ब्लॉग लेख जनरेटर हर महीने 20, 60 या 120 लेख लिखकर प्रकाशित करता है, स्रोतों, इंटरनल लिंक और इमेज के साथ, और React या Next.js जैसी कस्टम स्टैक से वेबहुक के ज़रिए जुड़ता है। इसका SEO चैट एक बातचीत में आपकी साइट के खोज प्रदर्शन के बारे में सवालों के जवाब देता है।

सार यह है: सर्वर से HTML दें, हर URL को अपना टाइटल, विवरण और कैनोनिकल दें, और असली लिंक इस्तेमाल करें। फिर React वाली साइट किसी भी अन्य साइट की तरह रैंक करती है, और AI असिस्टेंट उसे पढ़ सकते हैं। उस साइट को Google और AI दोनों के लिए बने लेखों से भरा रखने के लिए Sorank के प्लान देखें, जो $49 प्रति माह से शुरू होते हैं, 3 दिन के मुफ़्त ट्रायल के साथ।
नहीं। React एक यूज़र इंटरफ़ेस लाइब्रेरी है, और उसका SEO इस पर निर्भर है कि पेज कैसे रेंडर होते हैं। क्लाइंट-रेंडर्ड सिंगल पेज ऐप खाली HTML भेजती है और Google के रेंडरिंग चरण पर निर्भर रहती है, जिससे इंडेक्सिंग में देरी होती है और कंटेंट AI क्रॉलर से छिप जाता है। वही React कोड सर्वर रेंडरिंग या स्टैटिक प्रीरेंडरिंग के साथ परोसा जाए, तो वह एक क्लासिक वेबसाइट की तरह रैंक करता है।
हाँ। Googlebot Chromium के हाल के संस्करण से JavaScript रेंडर करता है, इसलिए वह उस कंटेंट को इंडेक्स कर सकता है जिसे React ऐप ब्राउज़र में बनाती है। रेंडरिंग क्रॉलिंग के बाद होती है, और स्क्रिप्ट में एरर हों या API ब्लॉक हो, तो देर हो सकती है या विफल हो सकती है। Search Console के URL Inspection टूल से रेंडर किया HTML देखने पर पता चलता है कि Google क्या देखता है।
बुनियादी मामलों के लिए नहीं। React 19 किसी भी कॉम्पोनेंट से title, meta और link टैग रेंडर करता है और उन्हें दस्तावेज़ के head में ऊपर उठा देता है। react-helmet-async जैसी लाइब्रेरी तब उपयोगी रहती हैं जब आपको साइट-व्यापी डिफ़ॉल्ट प्रति रूट बदलने हों या पुराने React संस्करण सपोर्ट करने हों।
आपसे पहले लोगों ने Sorank आज़माया है
