‹ BlogGuide · · 8 min di lettura

GPTBot o OAI-SearchBot: quali crawler IA bloccare nel robots.txt

Ogni azienda di IA usa più di un crawler, e i compiti sono diversi: uno raccoglie pagine per addestrare i modelli, un altro tiene l’indice in cui l’assistente cerca quando risponde. Bloccare quello sbagliato toglie un sito dalle risposte di ChatGPT, Claude o Perplexity senza proteggerlo da nient’altro. Ecco cosa fa ogni crawler, secondo chi lo gestisce, e un robots.txt da copiare.

Il team di TedditCostruiamo Teddit e lo usiamo sui nostri siti

Due decisioni, non una

Il robots.txt risponde a due domande distinte per un’azienda di IA, e ognuna le pone con crawler diversi:

  • Le mie pagine possono servire ad addestrare i vostri modelli? Sono GPTBot, ClaudeBot, Google-Extended, Applebot-Extended e, indirettamente, CCBot. Dire no tiene i contenuti futuri fuori dai dati di addestramento. Non cambia ciò che un assistente trova quando cerca oggi.
  • Il vostro assistente può trovare e citare le mie pagine quando qualcuno chiede? Sono OAI-SearchBot, Claude-SearchBot e PerplexityBot, più gli agenti che aprono una pagina per una persona (ChatGPT-User, Claude-User, Perplexity-User). Dire no ai crawler di ricerca toglie il sito dalle risposte.

La maggior parte delle aziende vuole comparire nelle risposte, perché è lì che oggi gli acquirenti chiedono consigli. Concedere le pagine per l’addestramento è una scelta di ciascun sito. Le due cose si regolano separatamente, e OpenAI lo dice chiaramente: ogni impostazione è indipendente dalle altre.

CrawlerGestoreCompitoBloccarlo significa
GPTBotOpenAIAddestramentoIl contenuto non viene usato per addestrare i modelli di base di OpenAI
OAI-SearchBotOpenAIIndice di ricercaIl sito non compare nelle risposte di ricerca di ChatGPT
ChatGPT-UserOpenAIRichiesta per un utenteIl robots.txt potrebbe non valere; OpenAI non lo usa per decidere la ricerca
ClaudeBotAnthropicAddestramentoI contenuti futuri sono esclusi dai dati di addestramento
Claude-SearchBotAnthropicIndice di ricercaIl contenuto non viene indicizzato per la ricerca di Claude; meno visibilità nelle sue risposte
Claude-UserAnthropicRichiesta per un utenteClaude non può recuperare la pagina quando un utente la chiede
PerplexityBotPerplexityIndice di ricercaPerplexity non può mostrare né linkare il sito nei suoi risultati
Perplexity-UserPerplexityRichiesta per un utenteIn genere ignora il robots.txt, perché è un utente ad aver chiesto la pagina
Google-ExtendedGoogleAddestramento e groundingNessun uso per l’addestramento o il grounding di Gemini; la Ricerca Google non cambia
Applebot-ExtendedAppleAddestramentoNessun uso per addestrare i modelli di base di Apple; la ricerca di Apple non cambia
CCBotCommon CrawlArchivio aperto del webIl sito resta fuori dall’archivio aperto di Common Crawl

OpenAI: GPTBot, OAI-SearchBot e ChatGPT-User

GPTBot è il crawler di addestramento di OpenAI. Escluderlo indica, secondo OpenAI, che il contenuto di un sito non deve essere usato per addestrare modelli di base di IA generativa (OpenAI).

OAI-SearchBot è quello che conta per le risposte di ChatGPT. OpenAI afferma che i siti che escludono OAI-SearchBot non verranno mostrati nelle risposte di ricerca di ChatGPT, anche se possono ancora comparire come link di navigazione, e consiglia di consentire il bot. Una modifica al robots.txt richiede circa 24 ore per arrivare ai sistemi di OpenAI.

ChatGPT-User non è un crawler nel senso comune. Recupera pagine per azioni avviate da un utente in ChatGPT o in un GPT personalizzato, non esplora il web in modo automatico e, poiché è una persona a chiedere, le regole del robots.txt potrebbero non valere. OpenAI precisa anche che ChatGPT-User non serve a decidere se un contenuto può comparire nella ricerca: quello è compito di OAI-SearchBot.

L’errore comune: un sito blocca GPTBot per restare fuori dall’addestramento e, con lo stesso blocco copiato e incollato, anche OAI-SearchBot. Il primo non costa nulla nelle risposte di oggi; il secondo toglie il sito dalla ricerca di ChatGPT.

Anthropic: ClaudeBot, Claude-SearchBot e Claude-User

Anthropic descrive tre agenti in un’unica pagina (Anthropic):

  • ClaudeBot raccoglie contenuti dal web che possono essere usati per l’addestramento. Limitarlo segnala che i contenuti futuri del sito devono essere esclusi dai dati di addestramento.
  • Claude-SearchBot esplora il web per migliorare la qualità dei risultati di ricerca per gli utenti di Claude. Disattivarlo impedisce che i tuoi contenuti siano indicizzati per la ricerca, il che secondo Anthropic può ridurre la visibilità del sito nei risultati.
  • Claude-User apre pagine quando una persona fa una domanda a Claude. Disattivarlo impedisce a Claude di recuperare i tuoi contenuti in risposta a una richiesta dell’utente.

Anthropic afferma che i suoi bot rispettano il robots.txt e l’estensione non standard Crawl-delay, e che bloccare i suoi indirizzi IP potrebbe non funzionare in modo affidabile: il robots.txt è quindi la strada giusta. L’esclusione va impostata anche su ogni sottodominio.

Perplexity: PerplexityBot e Perplexity-User

PerplexityBot fa comparire e linka siti nei risultati di ricerca di Perplexity, e Perplexity dichiara che non serve a raccogliere contenuti per modelli di base (Perplexity). Non c’è quindi alcun motivo legato all’addestramento per bloccarlo: bloccarlo toglie soltanto il sito dal luogo in cui Perplexity cerca le risposte. Perplexity consiglia di consentirlo nel robots.txt e di accettare le richieste dai suoi intervalli IP pubblicati.

Perplexity-User recupera una pagina quando un utente fa una domanda e può linkarla nella risposta. Poiché è un utente ad aver chiesto la pagina, secondo Perplexity in genere ignora le regole del robots.txt. Neanche questo viene usato per l’addestramento.

Google e Apple: i token “-Extended”

Google-Extended non è affatto un crawler. Non ha un user agent proprio: Google esplora con i suoi agenti abituali, e il token nel robots.txt regola solo l’uso. Decide se il contenuto può servire ad addestrare i modelli Gemini e per il grounding nelle app Gemini e su Vertex AI. Google afferma che non influisce sull’inclusione di un sito nella Ricerca Google e non è un segnale di ranking (Google).

Ciò che Google-Extended non controlla sono le AI Overviews e l’AI Mode. Fanno parte della Ricerca, e Google indica che il controllo è quello abituale: le regole del robots.txt per Googlebot, e nosnippet, data-nosnippet, max-snippet o noindex per limitare ciò che viene mostrato. Non ci sono requisiti tecnici aggiuntivi per comparirvi (Google Search Central). Con il solo robots.txt non si può quindi restare nella Ricerca Google ed essere fuori dalle AI Overviews, e bloccare Googlebot per evitare le AI Overviews toglie il sito dalla Ricerca Google.

Applebot-Extended funziona allo stesso modo. Non esplora pagine; decide se ciò che Applebot ha raccolto può servire ad addestrare i modelli di base di Apple. Le pagine che lo escludono possono comunque comparire nei risultati di ricerca di Spotlight, Siri e Safari, e la regola non è usata per il ranking (Apple).

CCBot costruisce l’archivio aperto del web di Common Crawl (Common Crawl). Common Crawl non lo presenta come un crawler di IA, ma l’archivio è aperto a tutti, e nel nostro studio CCBot era il bot che i siti escludevano per nome più spesso.

Un robots.txt da copiare

Nelle risposte, fuori dall’addestramento. L’impostazione che vuole la maggior parte delle aziende attente all’addestramento. I crawler di ricerca e per gli utenti non sono nominati, quindi il gruppo * li lascia entrare; i token di addestramento sono chiusi:

User-agent: GPTBot
User-agent: ClaudeBot
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: CCBot
Disallow: /

User-agent: *
Disallow: /admin/

Più righe User-agent possono condividere un solo gruppo di regole, come consente lo standard del robots.txt (RFC 9309).

Aperto a tutto. Se le tue pagine possono servire anche all’addestramento, non servono righe specifiche per l’IA. Basta un file semplice:

User-agent: *
Disallow: /admin/

Sitemap: https://www.example.com/sitemap.xml

Fuori dagli assistenti IA, sempre nella Ricerca Google. Si può fare, ma ha un prezzo: il sito scompare dalle risposte di ChatGPT, Claude e Perplexity. Le AI Overviews e l’AI Mode di Google non si chiudono così, perché seguono Googlebot.

User-agent: GPTBot
User-agent: OAI-SearchBot
User-agent: ChatGPT-User
User-agent: ClaudeBot
User-agent: Claude-SearchBot
User-agent: Claude-User
User-agent: PerplexityBot
User-agent: Google-Extended
User-agent: Applebot-Extended
User-agent: CCBot
Disallow: /

User-agent: *
Disallow: /admin/

Gli agenti per gli utenti (ChatGPT-User, Perplexity-User) potrebbero non seguire il file, come dicono i loro gestori: nemmeno così è garantito che una pagina non venga mai aperta per un utente.

Errori che chiudono la porta per sbaglio

  • Un gruppo con nome sostituisce quello generale. Secondo lo standard, un crawler che trova un gruppo con il proprio nome segue solo quel gruppo e salta il gruppo *. Se aggiungi un gruppo User-agent: OAI-SearchBot con una sola regola, le altre regole non valgono più per quel bot. Ripeti nel gruppo con nome tutto ciò che deve continuare a valere.
  • Un robots.txt che va in errore. Se il file risponde con un errore server 5xx, lo standard chiede ai crawler di considerare tutto vietato. Un 404 significa il contrario: tutto è consentito (RFC 9309).
  • Il firewall dice no quando il robots.txt dice sì. Una protezione anti-bot sul CDN o sull’hosting può rifiutare gli agenti che non conosce. Nella nostra analisi di 23.411 siti aziendali, il 2,5% era chiuso alla ricerca di ChatGPT, e 407 siti rifiutavano una richiesta che si presentava come OAI-SearchBot servendo la stessa pagina a un browser. Per 396 di questi il robots.txt consentiva il bot.
  • Bloccare il bot di ricerca per fermare l’addestramento. Nello stesso studio, i siti nominavano i bot di addestramento molto più spesso di quelli di ricerca: GPTBot era escluso per nome sull’1,17% dei siti, OAI-SearchBot sullo 0,11%. La maggior parte dei siti che nominano dei bot fa la distinzione; controlla che il tuo la faccia.
  • Dimenticare i sottodomini. Il robots.txt vale per un solo host. Un blog su blog.example.com o una documentazione su docs.example.com ha bisogno di un proprio file.

Verificare cosa dice davvero il tuo sito

La nostra verifica gratuita dei crawler IA legge il tuo robots.txt come lo standard impone ai crawler, mostra il verdetto per ciascuno dei crawler qui sopra con la riga che lo decide, e richiede la tua home page come OAI-SearchBot, Claude-SearchBot e PerplexityBot per scoprire un firewall che li rifiuta. Non richiede un account e non conserva nulla.

In Teddit, il robots.txt di ogni sito monitorato viene letto ogni notte, e quando l’accesso di un crawler cambia, la tabella indica com’era prima (Accesso dei crawler IA). L’accesso però è solo la porta: che un assistente poi ti nomini è un’altra questione, trattata in Come un assistente IA decide quali brand citare.

Fonti