React SEO: warum Client-Side-Rendering die Indexierung bremst, wann SSR oder Pre-Rendering hilft, wie Meta-Tags in React 19 funktionieren und KI lesbar bleibt.

Auf dieser Seite
Kurz gesagt
React kann bei Google ranken, aber eine Standard-Single-Page-App sendet eine fast leere HTML-Datei und braucht JavaScript, um Inhalte anzuzeigen. Das verzögert die Indexierung und verbirgt die Seite vor den meisten KI-Crawlern. Die zuverlässige Lösung ist HTML vom Server: statische Seiten beim Build vorrendern oder ein Framework mit Server-Rendering nutzen (Next.js, React Router). Geben Sie dann jeder URL einen eigenen Titel, eine Beschreibung und ein Canonical, verwenden Sie echte Links und Statuscodes und prüfen Sie, was Bots erhalten.
Möchten Sie mehr erfahren? Fragen Sie
Kurzes Quiz
Ist SEO das Richtige für Sie, und wie fangen Sie an?
Sorank passt zu Ihren Antworten
Testen Sie es 3 Tage lang auf Ihrer eigenen Website und sehen Sie, wo Sie bei Google, ChatGPT und den anderen KIs stehen.
3 Tage kostenlos testen3 Tage kostenlos, danach beenden Sie jederzeit. 90-Tage-Ergebnis-oder-Geld-zurück-Garantie.
React SEO bedeutet, eine React-Anwendung für Suchmaschinen und KI-Assistenten crawlbar, indexierbar und verständlich zu machen. React selbst ist neutral: Die Probleme entstehen, wenn alles im Browser gerendert wird. Google bestätigt in den Grundlagen zu JavaScript-SEO, dass JavaScript-Apps in drei Phasen verarbeitet werden (Crawling, Rendering, Indexierung) und dass serverseitiges Rendering oder Pre-Rendering „nach wie vor eine gute Idee ist, weil die Website für Nutzer und Crawler schneller wird und nicht alle Bots JavaScript ausführen können“.
Eine als Single Page Application erstellte React-App liefert eine HTML-Datei, die kaum mehr als ein leeres Root-div und ein script-Tag enthält. Der Browser lädt das JavaScript, führt es aus und baut die Seite auf. Ein Crawler, der nur das HTML liest, findet nichts zum Indexieren: keine Überschriften, keinen Text, keine Links.
Googlebot führt JavaScript zwar aus, aber in einem eigenen Schritt: Die Seite wird gecrawlt, in die Rendering-Warteschlange gestellt, in einem Headless-Chromium gerendert, und erst dann werden die gerenderten Links und Inhalte verwendet. Jeder zusätzliche Schritt ist eine Fehlerquelle (Skriptfehler, blockierte API, Zeitüberschreitung) und verzögert das Erscheinen neuer Seiten in der Suche. Unser Leitfaden zu JavaScript-SEO beschreibt diesen Ablauf, und unser Artikel zur Google-Indexierung zeigt, wie Seiten schneller indexiert werden.
Andere Bots sind weniger geduldig. Die Analyse von Vercel aus dem Dezember 2024, The rise of the AI crawler, stellte fest, dass „keiner der großen KI-Crawler derzeit JavaScript rendert“, und nannte GPTBot, ChatGPT-User, OAI-SearchBot, ClaudeBot und PerplexityBot. Eine clientseitig gerenderte React-Seite ist für ChatGPT, Claude und Perplexity unsichtbar, selbst wenn Google sie indexiert.
Das React-Team empfiehlt inzwischen, neue Apps mit einem Framework zu beginnen. Als es Create React App am 14. Februar 2025 einstellte, schrieb es in seiner Ankündigung, dass „Server-Rendering SEO verbessern kann“ und zudem die Performance steigert, weil Nutzer weniger JavaScript laden müssen, bevor sie Inhalte sehen. Die Optionen, vom schwächsten zum stärksten Ansatz für die Suche:
| Ansatz | Was Bots erhalten | SEO-Urteil | Typische Werkzeuge |
|---|---|---|---|
| Client-Side-Rendering (SPA) | Leeres HTML, Inhalt nach JavaScript | Schwach: verzögerte Indexierung, für KI-Crawler unsichtbar | Vite + React, alte Create-React-App-Projekte |
| Dynamisches Rendering | Vorgerendertes HTML nur für Bots | Notlösung, von Google nicht empfohlen | Pre-Rendering-Dienste, Proxys mit Headless-Browser |
| Statisches Pre-Rendering beim Build | Vollständiges HTML für jede bekannte URL | Sehr gut für selten geänderte Inhalte | Pre-Rendering von React Router, Static-Site-Generatoren, statischer Export von Next.js |
| Serverseitiges Rendering | Vollständiges HTML bei jeder Anfrage, dann Hydration | Am besten für große oder häufig aktualisierte Websites | Next.js, React Router (Framework-Modus, früher Remix) |
Zum dynamischen Rendering ist die Dokumentation von Google eindeutig: Es „war eine Notlösung und keine langfristige Lösung“, und Google empfiehlt stattdessen serverseitiges Rendering, statisches Rendering oder Hydration. Wenn Sie ein Framework wählen, behandelt unser Leitfaden zu Next.js SEO Rendering-Modi, Metadata API und Sitemaps im Detail.
Ist eine Migration nicht möglich, kann Google eine Single Page App mit etwas Sorgfalt trotzdem indexieren. Unser Leitfaden zu SEO für Single Page Applications nennt die Bedingungen; der Rest dieses Artikels gilt für beide Fälle.
Seit React 19 (stabil seit dem 5. Dezember 2024) können Komponenten title-, meta- und link-Tags direkt rendern, und React verschiebt sie in den head des Dokuments. Die Release Notes zu React 19 betonen, dass diese native Unterstützung „mit reinen Client-Apps, Streaming-SSR und Server Components“ funktioniert. Vor React 19 übernahmen Bibliotheken wie react-helmet oder react-helmet-async diese Aufgabe, und sie bleiben nützlich, um Standardwerte pro Route zu überschreiben.
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>
</>
)
}Drei Regeln gelten unabhängig von der Methode:
Achtung
In einer reinen Client-App existieren von React gerenderte Tags erst, nachdem JavaScript gelaufen ist. Google kann sie nach dem Rendering lesen, KI-Crawler und die meisten Vorschau-Bots sozialer Netzwerke nicht. Server-Rendering oder Pre-Rendering legt sie für alle in die HTML-Antwort.
Google erklärt, dass es „Links nur finden kann, wenn sie a-Elemente mit einem href-Attribut sind“, und rät davon ab, URL-Fragmente zum Laden unterschiedlicher Inhalte zu nutzen. Die meisten React-SEO-Probleme stecken in Routing-Details:
| Fehler | Folge | Lösung |
|---|---|---|
| Navigation per onClick auf div oder button | Google findet keinen Link zum Folgen | Die Link-Komponente des Routers verwenden, die ein a mit href rendert |
| Hash-Routen (/#/produkte) | Alle Seiten teilen sich für Google eine URL | History-basierte Routen (/produkte) mit BrowserRouter oder einem Framework nutzen |
| „Nicht gefunden“-Ansicht mit Status 200 | „Soft 404“ in der Search Console | Echten 404 vom Server liefern oder in einer reinen SPA per JavaScript noindex setzen |
| Nur clientseitige Weiterleitungen | Langsame oder übersehene Weiterleitungen | Server-Weiterleitungen 301 oder 308 für verschobene Seiten nutzen |
| Inhalte, die erst bei Klick oder Scrollen laden | Text wird für den Crawler nie gerendert | Hauptinhalt beim Laden rendern; Listen mit echten URLs paginieren |
| JavaScript oder API in robots.txt blockiert | Google rendert eine leere Seite | Skripte und API-Endpunkte erlauben, die die Seite braucht |
Um zu sehen, was Google rendert, nutzen Sie das URL-Prüftool der Search Console und sehen sich das HTML der getesteten Seite an, oder prüfen Sie wichtige Seitenvorlagen mit einem Indexierbarkeits-Checker.
React hat keine eingebaute Sitemap. Erzeugen Sie sitemap.xml beim Build aus Ihren Routen und Daten (oder mit der Sitemap-Funktion Ihres Frameworks), führen Sie nur kanonische URLs mit Status 200 auf und verweisen Sie in robots.txt darauf. Für kleine statische Websites genügt ein XML-Sitemap-Generator.
Strukturierte Daten folgen derselben Regel wie Metadaten: Rendern Sie das JSON-LD-Skript mit der Seite, aus denselben Daten, idealerweise auf dem Server. Google kann per JavaScript eingefügtes JSON-LD nach dem Rendering lesen, doch Markup, das im initialen HTML fehlt, fehlt auch für Crawler, die nicht rendern. Verwenden Sie Article für Beiträge, Product im E-Commerce, Organization seitenweit und BreadcrumbList für tiefe Seiten.
Tipp
Rufen Sie eine Seiten-URL mit curl ab und suchen Sie in der Ausgabe nach der H1 und einem Satz aus dem Text. Fehlen sie, indexiert Google die Seite vielleicht nach dem Rendering, KI-Crawler sehen aber nichts.
Große JavaScript-Bundles schaden den Core Web Vitals: Der Browser muss Code laden, parsen und hydratisieren, bevor die Seite reagiert, was Largest Contentful Paint und Interaction to Next Paint belastet, besonders auf Mobilgeräten. Die Ankündigung des React-Teams zu Create React App hält fest, dass Server-Rendering weniger JavaScript und ein vollständiges HTML-Dokument sendet, was den First Contentful Paint beschleunigt und INP senken kann. Wirksame Hebel: Code pro Route mit React.lazy aufteilen, Bilder mit expliziten Abmessungen ausliefern, Komponenten unterhalb des sichtbaren Bereichs verzögert laden und Drittanbieter-Skripte prüfen.
GEO (Generative Engine Optimization) beginnt beim Zugang. Da KI-Crawler rohes HTML abrufen, muss eine React-Seite Text, Überschriften und JSON-LD ohne JavaScript liefern, um gelesen, zusammengefasst und zitiert zu werden. Ein KI-Crawlbarkeits-Audit zeigt, was diese Bots von Ihren Seiten erhalten. Die zweite Bedingung sind zitierwürdige Inhalte: Seiten, die pro Abschnitt eine Frage beantworten, mit Quellen, Zahlen und klaren Definitionen.
Diesen Inhaltsteil automatisiert Sorank, unser Produkt. Sorank ist eine SEO- und GEO-Software im Autopilot: Der Blogartikel-Generator schreibt und veröffentlicht 20, 60 oder 120 Artikel pro Monat mit Quellen, internen Links und Bildern und verbindet sich per Webhook mit individuellen Stacks wie einer React- oder Next.js-Website. Der SEO Chat beantwortet im Gespräch Fragen zur Suchperformance Ihrer Website.

Kurz zusammengefasst: Liefern Sie HTML vom Server, geben Sie jeder URL eigenen Titel, eigene Beschreibung und eigenes Canonical, und verwenden Sie echte Links. Dann rankt React wie jede andere Website, und KI-Assistenten können sie lesen. Um diese Website laufend mit Artikeln für Google und KI zu versorgen, sehen Sie sich die Sorank-Tarife an, ab 49 € pro Monat mit 3 Tagen kostenlosem Test.
Nein. React ist eine Bibliothek für Benutzeroberflächen, und ihr SEO hängt davon ab, wie Seiten gerendert werden. Eine clientseitig gerenderte Single Page App sendet leeres HTML und verlässt sich auf Googles Rendering-Schritt, was die Indexierung verzögert und Inhalte vor KI-Crawlern verbirgt. Derselbe React-Code mit Server-Rendering oder statischem Pre-Rendering rankt wie eine klassische Website.
Ja. Googlebot führt JavaScript mit einer aktuellen Chromium-Version aus und kann daher Inhalte indexieren, die eine React-App im Browser aufbaut. Das Rendering erfolgt nach dem Crawling und kann sich verzögern oder scheitern, wenn Skripte Fehler werfen oder APIs blockiert sind. Das URL-Prüftool der Search Console zeigt das gerenderte HTML so, wie Google es sieht.
Für einfache Fälle nicht. React 19 rendert title-, meta- und link-Tags aus jeder Komponente und verschiebt sie in den head des Dokuments. Bibliotheken wie react-helmet-async bleiben nützlich, wenn Sie seitenweite Standardwerte pro Route überschreiben oder ältere React-Versionen unterstützen müssen.
SIE HABEN SORANK VOR IHNEN AUSPROBIERT
