SEO für Single Page Applications: Ein Praxisleitfaden

SEO für Single Page Applications

SEO für Single Page Applications: React-SEO-Leitfaden mit Checkliste | We.Inc

Warum Single Page Apps in der Suche Probleme haben und wie du sie behebst: SSR, statische Generierung oder Prerendering, Titel pro Route in React 19 oder react-helmet-async, echte URLs, Soft 404s, Sitemaps, URL-Prüfung und ein Quelltext-Checker.

Single Page Apps schicken Suchmaschinen oft eine fast leere HTML-Hülle und bauen die Seite erst später mit JavaScript auf. Google kann JavaScript rendern, aber das geschieht mit Verzögerung, und andere Crawler können es eventuell gar nicht. Die Lösung: Liefere pro URL echtes HTML über Server-Rendering, statische Generierung oder Prerendering, mit eigenem Titel, eigener Beschreibung und eigenem Canonical auf jeder Route.

Die drei wichtigsten Maßnahmen

Diese Website ist selbst eine React Single Page App, die jede öffentliche Seite beim Build vorrendert, daher sind das die Prüfungen, die wir an unseren eigenen Seiten durchführen. Füge den Quelltext einer Seite in den Checker ein, um zu sehen, was ein Crawler erhält, bevor JavaScript läuft.

Häufige Fragen

Kann Google eine React Single Page App indexieren?

Ja. Google rendert JavaScript, aber Seiten warten in einer Render-Warteschlange, und alles, was nicht lädt, wird übersehen. Andere Suchmaschinen und Link-Vorschau-Bots rendern weniger oder gar nicht, daher ist es sicherer, HTML auszuliefern.

Brauche ich Next.js für React-SEO?

Nein. Next.js macht Server-Rendering und statische Generierung einfach, aber eine SPA im Stil von Vite oder Create React App kann ihre öffentlichen Routen beim Build vorrendern und bekommt dasselbe crawlbare HTML.

Braucht man react-helmet in React 19 noch?

Nicht für grundlegende Tags. React 19 rendert title-, meta- und link-Elemente aus jeder Komponente und verschiebt sie in den head. react-helmet-async bleibt unter React 18 und älter nützlich.

Ist Prerendering Cloaking?

Nicht, wenn Crawler und Menschen denselben Inhalt bekommen. Prerendering speichert nur die Seite, die deine Nutzer ohnehin sehen würden. Zu Cloaking wird es, wenn das an Bots ausgelieferte HTML etwas anderes aussagt.

Testen wie Google

SSR, statische Generierung oder Prerendering

Wege, Crawlern echtes HTML zu liefern

Lösungen mit Code

Titel und Beschreibung pro Route in React 19

In React 19 kann jede Komponente title-, meta- und link-Tags rendern; React verschiebt sie in den head des Dokuments. Jede Route setzt ihre eigenen.

Dasselbe mit react-helmet-async (React 18 und älter)

Umschließe die App einmal mit HelmetProvider und setze dann die Tags pro Seite. Die async-Version ist sicher für Server-Rendering und Prerendering.

Echte URLs statt Hash-Fragmenten

Google ignoriert alles nach einem #, wenn es bestimmt, was eine URL ist. Verwende die History API (BrowserRouter, createBrowserRouter), damit jede Ansicht ihren eigenen Pfad hat.

Crawlbare Links

Crawler folgen a-Elementen mit einem href. Ein Klick-Handler auf einem div ist für sie unsichtbar. Link-Komponenten von Routern rendern einen echten Anker.

Soft 404s bei unbekannten Routen vermeiden

Eine reine Client-App beantwortet jede URL mit Status 200, sodass eine fehlende Seite wie eine echte aussieht. Füge der Nicht-gefunden-Ansicht ein noindex hinzu oder liefere einen echten 404 vom Server oder aus dem Prerender-Schritt.

Eine Sitemap aller öffentlichen Routen

Führe jede öffentliche URL einmal mit ihrer kanonischen Adresse auf. Erzeuge sie aus derselben Routenliste, die deine App verwendet, damit beide nie auseinanderlaufen.

Sollen die Tags für dich geschrieben werden? Probier den

Meta-Tag-Generator

Quelltext-Checker

Füge das HTML aus Seitenquelltext anzeigen ein, um zu prüfen, was ein Crawler erhält.

Seitenquelltext (das Beispiel ist eine typische leere SPA-Hülle)

SPA-SEO-Checkliste

Titel

"{title}" ({n} Zeichen)

Kein Titel im HTML

Meta-Beschreibung

{n} Zeichen

Fehlt

Canonical-Link

Hauptüberschrift (h1)

Kein h1, bevor JavaScript läuft

Sichtbarer Text

{n} Wörter im body, bevor JavaScript läuft

Crawlbare Links

{n} a-Elemente mit echtem href

Open-Graph-Titel (Link-Vorschauen)

Indexierung erlaubt

robots-Meta: {robots}

Kein robots-Meta (indexierbar)

Kostenlos starten · Keine Kreditkarte nötig

Verwandt: Ratgeber

Produkt

Für wen

Funktionen

Ressourcen

Unternehmen

Sitemap