Kurzfassung
Ein Softwareanbieter mit stabilen Google-Rankings wurde in ChatGPT und Perplexity nie als Anbieter genannt. Ursache war eine Bot-Schutzregel im CDN: OAI-SearchBot und PerplexityBot erhielten durchgehend Statuscode 403, während Googlebot über die Liste verifizierter Bots ausgenommen war. Die klassische Suche funktionierte deshalb weiter, die KI-Systeme sahen die Website gar nicht.
Ausgangslage
Ein Anbieter von Branchensoftware, rund 60 Mitarbeitende, stabile Positionen für die eigenen Kernbegriffe. In Kundengesprächen häufte sich eine Rückmeldung: Wer in ChatGPT oder Perplexity nach Anbietern dieser Softwarekategorie fragte, bekam zwei kleinere Wettbewerber genannt, nie das eigene Unternehmen. Die Vermutung im Haus war ein Content-Problem.
Diagnose
Schritt 1: Serverlogs nach KI-Crawlern filtern
Der erste Blick ging nicht auf die Inhalte, sondern in die Zugriffsprotokolle. Gefiltert wurde nach den relevanten User-Agents, und dabei nicht auf die Anzahl der Abrufe, sondern auf die Statuscodes:
grep -Ei 'GPTBot|OAI-SearchBot|ChatGPT-User|PerplexityBot|ClaudeBot' access.log \
| awk '{print $9}' | sort | uniq -c | sort -rn
Das Ergebnis war eindeutig: mehrere Tausend Abrufe pro Monat, davon der überwiegende Teil mit Statuscode 403. Die Crawler kamen also, wurden aber abgewiesen. Für Googlebot lag der Anteil erfolgreicher Abrufe bei praktisch 100 Prozent.
Schritt 2: Den Abruf nachstellen
Zur Bestätigung wurde ein Abruf mit dem entsprechenden User-Agent nachgestellt und mit einem normalen Browser-Aufruf verglichen:
curl -sS -o /dev/null -w '%{http_code}\n' \
-A 'Mozilla/5.0 (compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot)' \
https://www.beispiel.ch/produkte/
Antwort: 403. Mit gewöhnlichem Browser-User-Agent: 200.
Schritt 3: Ursache im CDN finden
Die robots.txt war unauffällig, ein noindex gab es nicht. Fündig wurden wir
in der Firewall-Konfiguration des CDN: eine Bot-Management-Regel, Jahre zuvor gegen Scraping
eingerichtet, blockierte alles, was nicht auf der Liste verifizierter Suchmaschinen-Bots
stand. Googlebot und Bingbot standen darauf, die KI-Crawler nicht. Eingerichtet hatte die
Regel die IT, dokumentiert war sie nirgends, und im Marketing wusste niemand davon.
Weitere Befunde
- Die Produktseiten lieferten Preismodell und Funktionsumfang erst nach JavaScript-Ausführung. Im HTML-Quelltext stand an dieser Stelle nichts.
- Der Firmenname erschien je Seitentyp in drei Schreibweisen: einmal mit Rechtsform, einmal ohne, einmal als Kürzel.
- Es gab kein Organization-Markup, dafür ein verwaistes Produkt-Markup mit einem Preis, der seit zwei Jahren nicht mehr galt.
Umgesetzte Massnahmen
- Suchbezogene KI-Crawler freigeben. In der Firewall eine Ausnahme für
OAI-SearchBot,ChatGPT-UserundPerplexityBot, verifiziert über die von den Anbietern veröffentlichten IP-Bereiche und nicht nur über den User-Agent-String. Die reinen Trainings-Crawler wurden separat entschieden und bewusst zugelassen. - robots.txt explizit machen. Nicht weil eine Sperre bestand, sondern
damit die Entscheidung dokumentiert ist und beim nächsten Relaunch nicht versehentlich
kippt:
User-agent: OAI-SearchBot Allow: / User-agent: PerplexityBot Allow: / - Kernaussagen serverseitig ausliefern. Preismodell, Funktionsumfang und Systemanforderungen wandern ins initiale HTML. Der Test dafür ist banal: Quelltext ohne JavaScript ansehen und prüfen, ob die Aussage darin steht.
- Eine Schreibweise, überall. Firmenname vereinheitlicht, Organization- und Product-Markup neu aufgebaut, mit stabilen Identifikatoren und ohne Widerspruch zum sichtbaren Text. Das veraltete Preis-Markup wurde entfernt.
- Antwort zuerst. Auf jeder Seite, die eine Frage behandelt, steht die Antwort in zwei bis drei Sätzen oben, die Begründung darunter. Das ist die Form, die als Passage entnommen werden kann.
- Monitoring aufgesetzt. Wöchentliche Auswertung der Bot-Statuscodes aus den Logs, dazu ein Frageset aus dem Markt, das monatlich in ChatGPT, Perplexity und Copilot abgefragt und protokolliert wird.
Woran die Wirkung gemessen wird
| Kennzahl | Quelle | Vorher dokumentiert |
|---|---|---|
| Anteil erfolgreicher Abrufe je KI-Crawler | Serverlogs | ja |
| Anteil der Antworten mit Nennung, je System | Frageset, protokolliert | ja |
| Korrektheit der Aussagen zu Produkt und Preis | Frageset, protokolliert | ja |
| Sitzungen aus KI-Oberflächen | Analytics, eigenes Segment | ja |
Alle vier Werte wurden vor dem ersten Eingriff festgehalten. Ohne diesen Ausgangswert wäre später keine Aussage über Wirkung möglich gewesen.
Woran Sie erkennen, ob Sie dasselbe Problem haben
- Die Google-Rankings sind in Ordnung, in KI-Antworten kommen Sie trotzdem nie vor
- In den Logs stehen Zugriffe von KI-Crawlern mit 403, 401 oder 429
- Sie nutzen ein CDN mit Bot-Management, und niemand im Haus kennt die Regeln im Detail
- Ein Abruf per
curlmit KI-User-Agent liefert einen anderen Statuscode als der Browser - Kernaussagen Ihrer Angebotsseiten stehen nicht im HTML-Quelltext
Die ersten beiden Punkte prüfen Sie in einer halben Stunde selbst. Wenn dort etwas auffällt, ist der Rest der Analyse Fleissarbeit.
Fragen zu diesem Fall
Die Formulierungen, in denen dieses Problem in Gesprächen und in Suchsystemen auftaucht.
Wie prüfe ich, ob KI-Crawler meine Website abrufen können?
Filtern Sie die Serverlogs nach den User-Agents GPTBot, OAI-SearchBot, ChatGPT-User, PerplexityBot und ClaudeBot und schauen Sie auf die Statuscodes, nicht auf die Anzahl. Alles ausser 200 und 304 ist ein Befund. Zusätzlich einen Abruf mit curl -A und dem entsprechenden User-Agent nachstellen und mit einem Browser-Aufruf vergleichen.
Warum sind unsere Google-Rankings gut, aber ChatGPT nennt uns nicht?
Weil beide Systeme unterschiedliche Wege zu Ihren Inhalten nehmen. Googlebot steht auf der Liste verifizierter Bots, die praktisch jede Firewall und jedes CDN durchlässt. Die suchbezogenen KI-Crawler stehen dort oft nicht. Eine Bot-Schutzregel kann deshalb die eine Sichtbarkeit intakt lassen und die andere vollständig verhindern.
Blockieren CDN- und Firewall-Dienste KI-Crawler standardmässig?
Das hängt von der Konfiguration ab, und genau darin liegt das Problem. Mehrere Anbieter haben inzwischen Voreinstellungen oder Schalter, die KI-Crawler blockieren, teils aktiv gesetzt, teils in einem Bot-Management-Regelwerk enthalten. Verlassen Sie sich nicht auf die Annahme, sondern prüfen Sie die Regeln und die Logs.
Reicht es, den Zugriff in der robots.txt zu erlauben?
Nein. Die robots.txt ist eine Bitte an gutwillige Crawler, über den tatsächlichen Zugriff entscheiden Firewall und CDN. Wenn dort eine Regel mit 403 antwortet, hilft ein Allow nichts. Umgekehrt gilt: beide Ebenen müssen dieselbe Entscheidung abbilden, sonst widersprechen sie sich.
Soll man Trainings-Crawler wie GPTBot zulassen?
Das ist eine Abwägung und keine technische Frage. Wer in Antworten vorkommen will, sollte die suchbezogenen Crawler zulassen. Bei den reinen Trainings-Crawlern entscheidet, welchen Wert die eigenen Inhalte als Trainingsmaterial haben und ob man das möchte. Wichtig ist, dass die Entscheidung dokumentiert ist und einen Verantwortlichen hat.
Weitere Fallstudien
- Sechs Filialen, vier Datenstände: wie widersprüchliche Standortdaten Sichtbarkeit kosten
Ein Händler wurde lokal schlechter gefunden als kleinere Anbieter. Die Ursache waren nicht die Inhalte, sondern Adressdaten, die überall leicht anders lauteten.
- Wenn die KI ein Angebot beschreibt, das es nicht mehr gibt
Genannt wurde das Unternehmen regelmässig, nur mit Leistungen und einem Standort von vor Jahren. Die Korrektur lief über Quellen, die dem Unternehmen nicht gehören.
Denselben Check für Ihre Website, mit Ihren Logs und Ihrem Frageset.
Ein Audit dauert zwei bis drei Wochen und endet mit einer priorisierten Liste, die Ihr Team abarbeiten kann.