Welche KI-Crawler besuchen deine Website, und was lesen sie?
KI-Crawler tauchen in Google Analytics nicht auf. Die meisten holen dein HTML und gehen wieder, ohne das Tracking-Skript auszuführen. Sichtbar sind sie deshalb nur im Log deines Servers oder CDNs. So liest du dieses Log: welche KI-Crawler kamen, welche Seiten jeder abgerufen hat und ob die, die sich als OpenAI oder Perplexity ausgeben, es wirklich waren. Jeder Befehl unten lief, bevor er hier stand. Die Zahlen stammen aus den Logs von pmax.online, der Website unserer eigenen Agentur: 10.183 Abrufe durch KI-Crawler in 30 Tagen, und von denen, die wir prüfen konnten, war jeder vierte gefälscht.

Die kurze Antwort
Warum Analytics-Tools sie nicht sehen
Schritt 1: die KI-Crawler im Access-Log zählen
awk -F'"' -v re='gptbot|oai-searchbot|chatgpt-user|claudebot|claude-user|claude-searchbot|perplexitybot|perplexity-user|google-extended|googleother|amazonbot|applebot|meta-externalagent|meta-webindexer|bytespider|ccbot|grokbot|deepseekbot|cohere-ai|youbot|duckassistbot|mistralai-user' \
'{ua=tolower($6); if (match(ua, re)) print substr(ua, RSTART, RLENGTH)}' access.log \
| sort | uniq -c | sort -rnSchritt 2: sehen, was jeder Crawler gelesen hat
| Status | Bedeutung | Abrufe |
|---|---|---|
| 200 | Seite ausgeliefert | 6.133 |
| 406 | Von einer Firewall-Regel abgewiesen | 1.368 |
| 404 | Nicht gefunden | 1.032 |
| 302 | Temporäre Weiterleitung | 807 |
| 301 | Permanente Weiterleitung | 539 |
| 403 | Von einer Firewall-Regel abgewiesen | 176 |
| 520 | Fehler am Ursprungsserver, vom CDN gemeldet | 58 |
| 409 | Konflikt | 58 |
| 206, 304, 522 | Sonstige | 12 |
# Pages one crawler requested, most-requested first
awk -F'"' 'tolower($6) ~ /oai-searchbot/ {split($2, r, " "); print r[2]}' access.log \
| sort | uniq -c | sort -rn | head -20
# Status codes per crawler
awk -F'"' -v re='gptbot|oai-searchbot|chatgpt-user|claudebot|claude-user|claude-searchbot|perplexitybot|perplexity-user|google-extended|googleother|amazonbot|applebot|meta-externalagent|meta-webindexer|bytespider|ccbot|grokbot|deepseekbot|cohere-ai|youbot|duckassistbot|mistralai-user' \
'{ua=tolower($6); if (match(ua, re)) {split($3, s, " "); print substr(ua, RSTART, RLENGTH), s[1]}}' access.log \
| sort | uniq -c | sort -rnKeine Logdateien? Cloudflare, Vercel und Shared Hosting
Schritt 3: prüfen, ob der Crawler der ist, der er zu sein behauptet
| Betreiber | Crawler | Veröffentlichte IP-Bereiche |
|---|---|---|
| OpenAI | GPTBot | |
| OpenAI | OAI-SearchBot | |
| OpenAI | ChatGPT-User | |
| Perplexity | PerplexityBot | |
| Perplexity | Perplexity-User | |
| Googlebot, GoogleOther | ||
| Nutzerausgelöste Abrufe |
# verify_ai_bot.py — is this IP inside the operator's published range?
import sys, json, ipaddress, urllib.request
feed, ips = sys.argv[1], sys.argv[2:]
data = json.load(urllib.request.urlopen(feed))
nets = [ipaddress.ip_network(p.get("ipv4Prefix") or p.get("ipv6Prefix")) for p in data["prefixes"]]
for ip in ips:
ok = any(ipaddress.ip_address(ip) in n for n in nets)
print(ip, "in the published range" if ok else "NOT in the published range")
# usage: every IP that claimed to be GPTBot, checked against OpenAI's file
# python3 verify_ai_bot.py https://openai.com/gptbot.json \
# $(awk -F'"' 'tolower($6) ~ /gptbot/ {split($1, a, " "); print a[1]}' access.log | sort -u)Die User-Agents, die man kennen sollte, und wofür jeder da ist
| Crawler | Betreiber | Art | Wofür | Abrufe |
|---|---|---|---|---|
| ChatGPT-User | OpenAI | Nutzeranfrage | Ruft eine Seite ab, wenn die Anfrage eines ChatGPT-Nutzers sie braucht | 1.656 |
| PerplexityBot | Perplexity | Suchindex | Baut den Index für Perplexitys Antworten | 1.116 |
| Bytespider | ByteDance | Training | Crawler von ByteDance; nicht dokumentiert, gilt allgemein als Trainings-Crawler | 1.017 |
| OAI-SearchBot | OpenAI | Suchindex | Baut den Index für die ChatGPT-Suche | 1.012 |
| Applebot | Apple | Suchindex | Apples Such-Crawler hinter Siri und Spotlight | 887 |
| ClaudeBot | Anthropic | Training | Sammelt Trainingsdaten für Anthropics Modelle | 875 |
| Meta-ExternalAgent | Meta | Training | Sammelt Daten für Metas KI-Modelle | 843 |
| GPTBot | OpenAI | Training | Sammelt Trainingsdaten für OpenAIs Modelle | 647 |
| Claude-User | Anthropic | Nutzeranfrage | Ruft eine Seite ab, wenn die Anfrage eines Claude-Nutzers sie braucht | 465 |
| Amazonbot | Amazon | Training | Amazons Crawler; laut Amazon auch für das Training von KI-Modellen | 222 |
| GrokBot | xAI | Training | Crawler von xAI für Grok | 202 |
| YouBot | You.com | Sonstiges | Crawler von You.com für dessen KI-Suche | 170 |
| Claude-SearchBot | Anthropic | Suchindex | Baut den Suchindex, den Claude nutzt | 169 |
| Google-Extended | (claims Google) | Training | Ein robots.txt-Token, kein Crawler. Google sendet es nie; alle 157 Abrufe hier waren gefälscht | 157 |
| MistralAI-User | Mistral | Nutzeranfrage | Ruft eine Seite ab, wenn die Anfrage eines Le-Chat-Nutzers sie braucht | 147 |
| DeepSeekBot | DeepSeek | Training | Crawler von DeepSeek | 141 |
| cohere-ai | Cohere | Training | Crawler von Cohere | 139 |
| DuckAssistBot | DuckDuckGo | Nutzeranfrage | Ruft Seiten bei Bedarf für DuckDuckGos DuckAssist-Antworten ab | 131 |
| CCBot | Common Crawl | Training | Crawler von Common Crawl; dessen offener Datensatz wird häufig für Training genutzt | 114 |
| Perplexity-User | Perplexity | Nutzeranfrage | Ruft eine Seite ab, wenn die Anfrage eines Perplexity-Nutzers sie braucht | 68 |
| Google user-triggered agent | (claims Google) | Nutzeranfrage | Gab sich als nutzerausgelöster Google-Abruf aus; alle 5 Abrufe kamen von außerhalb der Google-Bereiche | 5 |
Was wir in unseren eigenen Logs gefunden haben
| Art | Abrufe | Anteil | Crawler |
|---|---|---|---|
| Training | 4.357 | 42,8 % | Bytespider, ClaudeBot, Meta-ExternalAgent, GPTBot, Amazonbot, GrokBot, Google-Extended, DeepSeekBot, cohere-ai, CCBot |
| Suchindex | 3.184 | 31,3 % | PerplexityBot, OAI-SearchBot, Applebot, Claude-SearchBot |
| Nutzeranfrage | 2.472 | 24,3 % | ChatGPT-User, Claude-User, MistralAI-User, DuckAssistBot, Perplexity-User, Google user-triggered agent |
| Sonstiges | 170 | 1,7 % | YouBot |
Was die Logs nicht sagen können

Dranbleiben
Häufige Fragen
Weiterlesen
Sieh die KI-Sichtbarkeit deiner eigenen Marke
Reporting und KI-Sichtbarkeit in einer Konsole — erstell deinen ersten Bericht und Scan in der 14-tägigen Testphase.
14 Tage testen