Komen AI-crawlers je site binnen? De check met curl, stap voor stap
In dit artikel
Voordat je iets aan je content verandert, controleer je of AI-crawlers je site überhaupt binnenkomen.
Dat is één commando per crawler en kost een paar minuten. Een site die de zoekcrawler van ChatGPT weert, kan met geen enkele contentwijziging in de zoekantwoorden van ChatGPT komen. Let wel: een weigering op een nagebootste crawler is nog geen bewijs, want veel beveiliging herkent de echte crawler aan zijn IP-adres. Daarom eindigt deze check in je logboek.
Stap 1 — Lees je robots.txt
Open een terminal en haal je robots.txt op:
curl -s https://jouwsite.nl/robots.txt
Zoek naar blokken met User-agent: gevolgd door een van deze namen, en kijk of daaronder Disallow: / staat. De crawlers die voor AI-antwoorden tellen, zijn OAI-SearchBot (de zoekfunctie van ChatGPT), ChatGPT-User (pagina's die ChatGPT ophaalt als een gebruiker erom vraagt), Claude-SearchBot en Claude-User (Anthropic), PerplexityBot en Perplexity-User (Perplexity) en Googlebot (Google Zoeken en AI Overviews). GPTBot en ClaudeBot verzamelen content voor het trainen van modellen, en Applebot-Extended is alleen een naam in robots.txt waarmee je training uitzet; een verbod op die drie haalt je volgens de aanbieders niet uit de zoekantwoorden. Google-Extended is een uitzondering: die regelt naast training ook of Gemini je content als bron mag gebruiken. Google schrijft dat hij "does not impact a site's inclusion in Google Search", maar een verbod kan je uit de antwoorden van Gemini houden. OpenAI noemt een termijn van ongeveer 24 uur voordat een wijziging in robots.txt verwerkt is. Houd er rekening mee dat robots.txt geen toegangscontrole is: volgens de standaard, RFC 9309, zijn de regels "not a form of access authorization", en crawlers die door een gebruiker worden aangestuurd volgen robots.txt niet altijd: ChatGPT-User volgens OpenAI niet altijd, Perplexity-User volgens Perplexity meestal niet.
Stap 2 — Test eerst als gewone browser
Voordat je crawlers nabootst, kijk je welke statuscode een gewone browser krijgt. Dat is je nulpunt:
curl -sL --max-time 20 -o /dev/null -w "%{http_code}\n" -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0 Safari/537.36" https://jouwsite.nl/
Krijg je hier geen 200, dan ligt het probleem niet bij AI-crawlers maar bij je site of beveiliging in het algemeen, en zegt de rest van deze check weinig.
Stap 3 — Test per AI-crawler
Voer hetzelfde commando uit met de user-agent van elke crawler. Deze strings komen uit de documentatie van OpenAI, Perplexity en Google; voor Googlebot noemt Google geen vast Chrome-versienummer, en is 131.0.0.0 ingevuld:
SITE=https://jouwsite.nl/
while IFS= read -r UA; do
printf '%s\t%s\n' "$(curl -sL --max-time 20 -o /dev/null -w '%{http_code}' -A "$UA" "$SITE")" "$UA"
done <<'EOF'
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36; compatible; OAI-SearchBot/1.4; +https://openai.com/searchbot
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot)
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user)
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Googlebot/2.1; +http://www.google.com/bot.html) Chrome/131.0.0.0 Safari/537.36
EOF
Anthropic publiceert voor ClaudeBot, Claude-SearchBot en Claude-User geen volledige user-agent-strings; test die met een string waarin de naam staat, zoals Mozilla/5.0 (compatible; Claude-SearchBot), en weet dat een beveiliging die op de exacte string let, anders kan reageren.
Stap 4 — Lees de statuscodes
Een 200 betekent dat het verzoek slaagde. Een 301 of 302 zie je met deze commando's niet, omdat -L de doorverwijzing volgt en de eindstatus toont. Een 000 betekent dat curl geen antwoord kreeg, bijvoorbeeld door een time-out. Een 403 betekent dat de server toegang weigert, en is de code die een firewall of beveiligingsplugin het vaakst geeft. Een 404 betekent dat de pagina niet gevonden werd, maar een server kan die ook sturen in plaats van een 403. Een 429 betekent te veel verzoeken in korte tijd. Een 503 betekent dat de server het verzoek nu niet aankan. Codes van 520 tot en met 526 zijn fouten die Cloudflare geeft als het de achterliggende server niet goed bereikt, bijvoorbeeld 522 bij een time-out en 525 bij een mislukte SSL-verbinding. Let ook op een 200 die geen echte pagina is: een beveiliging die een uitdaging toont, geeft soms een 200 met een tussenpagina. Controleer dan met curl -s -A "…" https://jouwsite.nl/ | head -40 of de tekst van je pagina terugkomt.
Stap 5 — Wantrouw een 403 op een nagebootste crawler
Geeft stap 3 een 403 terwijl stap 2 een 200 gaf, dan weet je nog niet of de echte crawler geweigerd wordt. Diensten als Cloudflare herkennen een geverifieerde crawler aan meer dan zijn user-agent: volgens Cloudflare aan "a cryptographic Web Bot Auth signature, a published IP list with a stable user-agent, or reverse DNS". Jouw curl vanaf je eigen internetverbinding heeft wel de naam van de crawler, maar niet zijn IP-adres, en kan dus geweigerd worden waar de echte crawler binnenkomt, of andersom.
Hoe groot dat verschil is, lieten wij zien met dezelfde test op 17 september 2026. Wij namen de 150 Nederlandse websites met een .nl-adres die in september 2026 het vaakst als bron stonden in de antwoorden van ChatGPT, Perplexity en Google AI Overviews op de koopvragen die wij meten, en deden stap 1 tot en met 3 vanaf onze server, een adres in een datacenter, met de user-agents uit stap 3. 126 sites gaven een browser een 200. Bij geen van die 126 verbood robots.txt voor de homepage OAI-SearchBot, PerplexityBot of Claude-SearchBot. Toch weigerde de server bij 19 sites minstens één van de vijf AI-crawlers van OpenAI en Perplexity, meestal de trainingscrawler GPTBot, en bij 9 sites OAI-SearchBot of PerplexityBot. Die weigeringen waren voor een groot deel geen echte blokkade: alle 5 sites die onze nagebootste PerplexityBot weigerden, stonden in dezelfde maand als bron in antwoorden van Perplexity, alle 4 die onze nagebootste Googlebot weigerden stonden in AI Overviews, en van de 9 die onze nagebootste OAI-SearchBot weigerden, stonden er 5 in antwoorden van ChatGPT. Een 403 in stap 3 is dus een reden om verder te kijken, geen conclusie.
Stap 6 — Kijk in je logboek wat de echte crawlers kregen
Het betrouwbare antwoord staat in je serverlogboek of in het dashboard van je CDN. Zoek in je logboek op de naam van de crawler en kijk welke statuscodes er werden teruggegeven. Controleer daarbij of het verzoek echt van de crawler kwam: vergelijk het IP-adres met de lijsten die de aanbieders publiceren, zoals https://openai.com/searchbot.json, https://openai.com/gptbot.json, https://www.perplexity.com/perplexitybot.json en https://claude.com/crawling/bots.json, of doe voor Googlebot een reverse DNS-controle, waarbij de naam moet eindigen op googlebot.com, gevolgd door een forward DNS-controle.
Gebruik je Cloudflare, dan staat dit onder AI Crawl Control, met een overzicht per crawler en per statuscode; op het gratis plan toont het tabblad Metrics alleen de afgelopen 24 uur. Kijk daarnaast onder Security Settings bij Configure AI bot policies wat er voor Search, Agent en Training staat; de oude instelling Block AI bots wordt sinds 15 september 2026 uitgefaseerd. Cloudflare vroeg sinds 1 juli 2025 bij nieuwe domeinen of AI-crawlers toegelaten worden, en zet vanaf 15 september 2026 voor nieuwe domeinen crawlers die als training of agent zijn ingedeeld standaard op geblokkeerd op pagina's met advertenties; zoekcrawlers blijven toegestaan, en crawlers die zowel voor zoeken als voor training dienen, vallen onder training en worden op die pagina's dus ook geblokkeerd. Staat de echte OAI-SearchBot, PerplexityBot, Claude-SearchBot of Googlebot in je logboek met een 403, dan is dat de oorzaak om eerst op te lossen, vóór welke contentwijziging dan ook.

Wat je daarna doet
Komen de zoekcrawlers binnen, dan is je bestaande SEO-basis voor AI-antwoorden in orde op het punt van toegang, en gaat het om de volgende vraag: staat er een pagina die de koopvraag beantwoordt, en staat de tekst zonder JavaScript in de HTML. Welke andere punten een audit controleert en welk bewijs er per punt is, staat in 2 van de 20 punten in een GEO-audit hebben een aangetoond effect. Worden ze geweigerd, pas dan eerst de firewall, de CDN-instelling of de beveiligingsplugin aan, en controleer na een dag in je logboek of de echte crawler een 200 krijgt.
Waar wij staan
AIGeschikt controleert wekelijks bij elke actieve klant robots.txt voor de crawlers die voor AI-antwoorden tellen, en meet daarna per koopvraag of de site in de antwoorden van ChatGPT, Gemini, Perplexity en Google AI Overviews staat. Hoe crawlerbezoek zich verhoudt tot citaties, staat in Opgehaald worden en geciteerd worden zijn twee verschillende stappen.
Bronnen
14 bronnen- 1
OpenAI · Overview of OpenAI Crawlers
user-agents, IP-lijsten, robots.txt, 24 uur
- 2
Anthropic · Does Anthropic crawl data from the web, and how can site owners block the crawler? (bijgewerkt 7 april 2026)
- 3
Perplexity · Perplexity Crawlers
user-agents, IP-lijsten, Perplexity-User en robots.txt
- 4
- 5
Google Search Central · Verifying Googlebot and other Google crawlers
- 6
Apple · About Applebot
- 7
IETF · RFC 9309: Robots Exclusion Protocol (september 2022)
- 8
MDN · HTTP response status codes
Toon alle 14 bronnen
- 9
Cloudflare · Cloudflare 5xx errors
- 10
Cloudflare · Verified bots
- 11
- 12
Cloudflare, persbericht over AI-crawlers (1 juli 2025)
- 13
- 14Eigen meting
Eigen meting AIGeschikt
robots.txt en statuscode voor een browser en voor AI-crawlers, nagebootst met de user-agents uit stap 3 en met doorverwijzingen gevolgd, bij de 150 meest geciteerde .nl-sites in de antwoorden van ChatGPT, Perplexity en Google AI Overviews op onze vaste koopvragen (september 2026, zonder metingen van gratis scans), getest op 17 september 2026 vanaf een server in een datacenter; vergeleken met of die sites in september 2026 door hetzelfde systeem als bron geciteerd werden.


