Kurz gesagt: GPTBot, ClaudeBot und PerplexityBot führen kein JavaScript aus — sie laden nur die rohe HTML-Antwort des Servers, ohne sie zu rendern. Baut deine Website Inhalte per Client-Side Rendering (CSR) erst im Browser per JavaScript nach, sehen diese KI-Crawler eine leere Seite und können sie nicht zitieren. Googlebot rendert JavaScript zwar, die meisten AI-Antwortmaschinen jedoch nicht. Die Lösung: Server-Side Rendering (SSR), Static Site Generation (SSG) oder Prerendering liefern fertiges HTML aus.
Was genau sieht ein KI-Crawler, wenn er deine Seite besucht?
Ein KI-Crawler wie GPTBot sendet eine einfache HTTP-Anfrage und verarbeitet ausschließlich die Antwort, die der Server direkt zurückgibt — kein Rendering, keine Interaktionssimulation. Läuft deine Seite auf React, Vue oder Angular ohne serverseitiges Rendering, besteht diese Rohantwort oft nur aus einem leeren div-Container plus Skript-Tags. Der eigentliche Text, den Nutzer im Browser sehen, entsteht erst, wenn JavaScript ausgeführt wird — und genau das tun diese Bots nicht.
Welche KI-Crawler führen JavaScript aus — und welche nicht?
Eine gemeinsame Analyse von Vercel und Merj (Dezember 2024) hat den Traffic mehrerer großer Crawler ausgewertet und kommt zu einem eindeutigen Ergebnis: „The results consistently show that none of the major AI crawlers currently render JavaScript" — namentlich genannt werden OpenAIs OAI-SearchBot, ChatGPT-User und GPTBot, Anthropics ClaudeBot, Metas Meta-ExternalAgent, ByteDances Bytespider und Perplexitys PerplexityBot.
| Crawler | Betreiber | Rendert JavaScript? |
|---|---|---|
| Googlebot / Gemini | Ja — headless Chromium | |
| Applebot | Apple | Ja — browserbasiert |
| Bingbot | Microsoft | Eingeschränkt — Dynamic Rendering empfohlen |
| GPTBot / OAI-SearchBot / ChatGPT-User | OpenAI | Nein |
| ClaudeBot | Anthropic | Nein |
| PerplexityBot | Perplexity | Nein |
| Meta-ExternalAgent | Meta | Nein |
| Bytespider | ByteDance | Nein |
Laut derselben Vercel/Merj-Analyse fordern ChatGPT-Crawler in 11,5 % und Claude in 23,84 % der Anfragen zwar JavaScript-Dateien an — sie führen den Code aber nicht aus, sondern laden ihn allenfalls unausgewertet herunter. Im Analysezeitraum verzeichnete Vercel für GPTBot 569 Millionen und für ClaudeBot 370 Millionen Anfragen im eigenen Netzwerk; PerplexityBot kam auf 24,4 Millionen Anfragen (Vercel/Merj, Dezember 2024).
Warum rendert Google JavaScript, GPTBot aber nicht?
Google Search Central beschreibt für Googlebot einen zweistufigen Prozess: Zunächst wird eine Seite gecrawlt, anschließend in eine Rendering-Warteschlange gestellt und dort „mit einer evergreen-Version von Chromium" tatsächlich ausgeführt — Googlebot betreibt also einen echten, wenn auch ressourcenintensiven Browser im Hintergrund. Diese Infrastruktur ist teuer und wurde über Jahre aufgebaut; laut Vercel/Merj nutzt auch Googles KI-Suchmodell Gemini genau diese Googlebot-Infrastruktur mit und rendert deshalb ebenfalls vollständig. GPTBot, ClaudeBot & Co. sind dagegen deutlich leichtgewichtiger konzipiert: Sie holen in Sekundenbruchteilen Rohtext von Millionen URLs, ohne für jede Seite einen kostenintensiven Browser-Prozess zu starten.
CSR, SSR, SSG, Prerendering — was ist der Unterschied?
Alle vier Begriffe beschreiben, wann und wo aus JavaScript fertiges HTML entsteht:
- Client-Side Rendering (CSR): Der Server liefert eine fast leere HTML-Datei, der eigentliche Inhalt wird erst im Browser per JavaScript erzeugt — für nicht-rendernde Crawler unsichtbar.
- Server-Side Rendering (SSR): Der Server rendert die Seite bei jedem Aufruf serverseitig zu vollständigem HTML und liefert direkt lesbaren Text aus.
- Static Site Generation (SSG): HTML wird bereits beim Build erzeugt und als fertige Datei ausgeliefert — ideal für stabile Inhalte wie Ratgeber oder Landingpages.
- Prerendering / Dynamic Rendering: Eine Zwischenlösung, die Bots eine vorab gerenderte HTML-Version ausliefert, während Nutzer weiterhin die interaktive CSR-Version bekommen.
Vercel empfiehlt in seiner Folgeauswertung „How AI is changing SEO" ausdrücklich, „Server-Side Rendering (SSR), Static Site Generation (SSG), or Incremental Static Regeneration (ISR)" einzusetzen, um wichtige Inhalte als statisches HTML auszuliefern — unabhängig davon, welcher Crawler die Seite besucht.
Reicht Bingbot als Vergleich — rendert Microsoft JavaScript?
Bing beschreibt in seinem Webmaster-Blog, dass „bingbot is generally able to render JavaScript", schränkt aber ein, dass dies „nicht notwendigerweise dieselben JavaScript-Frameworks" unterstützt wie ein aktueller Browser und in großem Maßstab an Grenzen stößt. Deshalb empfiehlt Bing selbst Dynamic Rendering: den Bingbot-User-Agent zu erkennen und ihm serverseitig vorgerendertes, statisches HTML auszuliefern. Das bestätigt das Muster: Selbst Suchmaschinen mit Rendering-Fähigkeit raten aktiv zu serverseitigem HTML als robustere Lösung.
Ist das dasselbe Problem wie eine robots.txt-Sperre?
Nein — Rendering und Zugriff sind zwei getrennte Probleme. Eine robots.txt-Sperre verhindert, dass ein Crawler deine URL überhaupt abruft; ein Rendering-Problem tritt erst danach auf, wenn der Bot die Seite zwar abrufen darf, aber nur eine leere HTML-Hülle vorfindet. Du kannst GPTBot also explizit erlauben und trotzdem unsichtbar bleiben, wenn dein Content ausschließlich per Client-Side JavaScript entsteht.
So prüfst du, ob deine Seite für KI-Crawler leer ist
Drei schnelle Checks zeigen, was ein nicht-rendernder Crawler tatsächlich sieht:
- „Quelltext anzeigen": Im Browser per Rechtsklick den unverarbeiteten HTML-Quelltext öffnen (nicht die DevTools-Ansicht, die bereits gerendertes DOM zeigt) — steht dort dein Fließtext, oder nur leere Container?
- curl-Test: `curl -A "GPTBot" https://deine-domain.de/seite` in der Kommandozeile ausführen und prüfen, ob die Antwort lesbaren Content oder nur Skript-Referenzen enthält.
- JavaScript deaktivieren: Im Browser JavaScript testweise abschalten und die Seite neu laden — was jetzt fehlt, sehen auch GPTBot, ClaudeBot und PerplexityBot nicht.
Häufige Fragen
Reicht es, wenn Google meine Seite gut indexiert?
Nein. Weil Googlebot JavaScript rendert, kann eine Seite bei Google exzellent ranken und gleichzeitig für GPTBot, ClaudeBot oder PerplexityBot komplett leer sein — Sichtbarkeit bei Google ist kein Beleg für Sichtbarkeit in KI-Antworten.
Führt Perplexity wirklich kein JavaScript aus?
Laut der Vercel/Merj-Analyse (Dezember 2024) gehört PerplexityBot explizit zu den untersuchten Crawlern, die kein JavaScript rendern — Perplexity erhielt im Analysezeitraum 24,4 Millionen Anfragen im untersuchten Netzwerk, ohne Hinweis auf JS-Ausführung.
Was ist der schnellste Fix ohne kompletten Framework-Wechsel?
Dynamic Rendering bzw. Prerendering: Eine Middleware liefert erkannten Bot-User-Agents eine vorab gerenderte, statische HTML-Version aus, während menschliche Besucher weiterhin die interaktive Version erhalten — laut Bing ist das ausdrücklich keine Cloaking-Verletzung, solange der Inhalt inhaltlich identisch bleibt.
Betrifft das auch Bilder-Alt-Texte und Meta-Daten?
Ja, wenn diese per JavaScript nachgeladen werden. Alles, was erst nach der JS-Ausführung im DOM erscheint — Texte, Alt-Attribute, strukturierte Daten, Meta-Tags — bleibt für nicht-rendernde Crawler unsichtbar, auch wenn es im Browser korrekt angezeigt wird.
Ob deine eigenen Seiten betroffen sind, lässt sich mit einem technischen Grounding-Audit prüfen, das genau diese Zitierfähigkeit für ChatGPT, Perplexity & Co. automatisiert testet.
Quellen
- Google Search Central: Understand JavaScript SEO Basics (abgerufen 2026-07)
- Vercel: „The rise of the AI crawler" (Analyse mit Merj, Dezember 2024)
- Vercel: „How AI is changing SEO: lessons from a billion crawler requests" (Januar 2025)
- Bing Webmaster Blog: „bingbot Series: JavaScript, Dynamic Rendering, and Cloaking" (Stand: 2018, weiterhin aktuelle Bing-Empfehlung)