Tre tipi di crawler AI, e quello che decide se vieni creditato

aigeocrawlers

Il 29 luglio un crawler ha letto tutte le 42 pagine della mia nuova knowledge base in circa un’ora. Era quello di Anthropic. Due giorni dopo ho fatto a Claude una domanda a cui quelle 42 pagine rispondono meglio di qualunque altra cosa su internet — perché le ho scritte io, su un componente costruito da me — e Claude ha risposto perfettamente e ha linkato il mio vecchio sito.

Trattavo “un’AI ha letto il mio lavoro” e “un’AI accredita il mio lavoro” come un unico evento. Non è un unico evento, e non è nemmeno lo stesso crawler.

Ce ne sono tre tipi, e la confusione non è colpa di chi legge: nel log arrivano come righe quasi identiche, e quello che decide davvero se ottieni un link è quello di cui non parla nessuno.

La versione breve

  • Un crawler che legge per addestrare un modello rende lentamente, in modo invisibile, e forse mai sotto forma di link. GPTBot, ClaudeBot.
  • Un crawler che legge per costruire un indice di ricerca è quello che decide le citazioni, perché alimenta la cosa che l’assistente interroga mentre ti risponde. OAI-SearchBot, Claude-SearchBot, PerplexityBot.
  • Una lettura che avviene perché qualcuno ha appena fatto una domanda è la cosa più vicina a un segnale live che la tua pagina viene usata. ChatGPT-User, Claude-User, Perplexity-User.
  • Google non usa questa forma, e Google-Extended — quello che bloccano tutti — non è un crawler. Non scarica niente.
  • robots.txt non governa tutti e tre. Lo dicono i vendor stessi, e fra loro non sono d’accordo sul terzo.
  • L’unico assistente che mi ha citato correttamente è quello il cui unico crawler documentato esiste per linkare siti. Non è una coincidenza che possa dimostrare, ma è una coincidenza con un meccanismo dentro.

Cosa c’era davvero nel mio log

Pubblico una knowledge base gratuita sull’animazione con GSAP in Webflow: 42 pagine, scritte per essere lette sia da persone che da assistenti. Prima di annunciarla ho misurato se gli assistenti AI mandano qualcuno sul mio sito: dieci domande, quattro assistenti, punteggio a mano. 31 punti su 80, e la knowledge base ha fatto zero, perché nessuno l’aveva ancora linkata. È l’articolo precedente.

Poi è uscito l’annuncio, e il log dei crawler ha fatto questo:

Vendor28 luglio29 luglio
Anthropic — ClaudeBot047
Amazon — Amazonbot331
Google — Googlebot820
Perplexity — PerplexityBot117
Huawei — PetalBot01
Apple — Applebot01
OpenAI00
Totale12117

Due dettagli contano più dei totali. Circa 44 delle 47 richieste di Anthropic sono cadute in una sola ora — il bundle è di 42 URL, quindi è un crawler che si prende tutto in un colpo. E lo zero di OpenAI è uno zero vero: i sei crawler nominati fanno esattamente 117, quindi non c’è niente nascosto in un arrotondamento.

Una nota sul perimetro, perché la tabella è più larga dell’argomento. Questo articolo spiega i quattro assistenti che misuro davvero — ChatGPT, Claude, Perplexity e Google. Amazonbot è stato il secondo lettore della mia knowledge base e non lo spiegherò, perché non ho modo di vedere se la lettura di Amazon si traduca mai in qualcuno che viene creditato da qualche parte. Resta nella tabella perché cancellare le righe che non combaciano con la tesi è come si ottiene una tabella ordinata e falsa.

Questo è ciò che ogni vendor dice dei propri agenti. Li cito perché a cosa serve un agente è un’affermazione del vendor, e l’unica cosa che posso sostenere di mia autorità è cosa è comparso nel mio log.

1. Leggere per addestrare il modello

GPTBot esiste, parole di OpenAI, “to make our generative AI foundation models more useful and safe”, e scarica contenuti “that may be used in training our generative AI foundation models”. ClaudeBot “helps enhance the utility and safety of our generative AI models by collecting web content that could potentially contribute to their training”.

Nota cosa non promette nessuna delle due frasi: un link. I crawler di addestramento trasformano il tuo lavoro nella competenza generale di un modello, e la competenza generale di un modello non ha una lista di fonti. È la visita più lusinghiera del tuo log e la meno tracciabile.

Ed è quella che ho ricevuto. ClaudeBot ha spazzato 42 pagine in un’ora, e la risposta uscita due giorni dopo era la migliore delle quattro — mi ha avvisato di due modi di sbagliare documentati quasi da nessuna parte — attaccata al link di un dominio su cui non pubblico più. Niente si è rotto. Sono stato letto dal crawler il cui compito non include dire a nessuno da dove vengono quelle parole.

2. Leggere per costruire un indice di ricerca

Questo è quello che decide.

  • OAI-SearchBot esiste “to surface websites in search results in ChatGPT’s search features”.
  • Claude-SearchBot “navigates the web to improve search result quality for users… analyzes online content specifically to enhance the relevance and accuracy of search responses”.
  • PerplexityBot è “designed to surface and link websites in search results on Perplexity”.

Quando un assistente ti risponde con le fonti attaccate, di solito è perché ha cercato, e l’indice che ha cercato l’ha costruito uno di questi. È questa la visita che può diventare un link. Ed è anche quella di cui si parla meno: il discorso pubblico è sui crawler di addestramento e se bloccarli, che è un discorso su un altro agente con un’altra conseguenza.

Non ho dovuto argomentarlo in teoria, perché il mio zero si è mosso. Il 1° agosto, verso le 14:00 JST, OAI-SearchBot ha scaricato due pagine. Due, su quarantadue — ed è l’agente di ricerca, non GPTBot. Tre giorni dopo che i primi link veri alla knowledge base erano finiti su internet.

3. Leggere perché qualcuno ha appena chiesto

ChatGPT-User copre “certain user actions in ChatGPT”, quando “users ask ChatGPT or a CustomGPT a question”. Claude-User “supports Claude AI users. When individuals ask questions to Claude, it may access websites”. Perplexity-User “supports user actions within Perplexity. When users ask Perplexity a question, it might visit a web page to help provide an accurate answer”.

È la riga più interessante di un log e quella che più probabilmente non vedi: significa che un essere umano ha chiesto qualcosa qualche secondo fa e un assistente è andato sulla tua pagina per rispondergli. Non un corpus. Non un indice. Una persona, adesso.

Google fa diversamente, e Google-Extended non è un crawler

Se hai letto una cosa sola sui crawler AI, probabilmente è che devi decidere se permettere Google-Extended. Vale la pena sapere cos’è: non scarica niente.

Le categorie di Google sono common crawler, special-case crawler e user-triggered fetcher. Googlebot — un agente — scarica per la Ricerca, e Google dice chiaramente che Google-Extended “does not impact a site’s inclusion in Google Search”. Quello che controlla è se il contenuto che Google ha già scaricato possa essere usato “for training future generations of Gemini models”.

Quindi non è un agente: è un permesso vestito da user-agent. Una scansione, due domande, e la seconda risposta da un token che non richiede mai una pagina. Il che significa che il modello mentale “ogni vendor ha tre bot” è sbagliato in una direzione precisa, e la direzione conta: con Google non c’è nessuna visita separata da cercare nel log, quindi la scansione che vedi e l’uso a cui stai acconsentendo sono scollegati.

I fetcher user-triggered di Google però sono una lista vera e lunga — Google-GeminiNotebook, Google-Read-Aloud, Google-Agent e altri sei, ognuno attivato da una persona che fa una cosa specifica.

La correlazione che continuo a fissare

Perplexity non documenta nessun crawler di addestramento. PerplexityBot è esplicitamente “not used to crawl content for AI foundation models”. Non esiste un equivalente Perplexity di GPTBot.

E Perplexity è l’assistente che ha azzeccato la mia domanda e ha citato tre pagine della mia knowledge base — la ricetta, il foglio di riferimento dei nomi verificati e l’indice di sezione — mentre gli altri tre hanno mandato le persone altrove.

Voglio andarci piano, perché è esattamente il tipo di accoppiata che finisce scritta come una legge. È una domanda, su un sito, in un momento. Quello che posso dire è che il meccanismo è coerente: un’azienda il cui unico crawler documentato esiste per linkare siti non ha nessuna strada attraverso cui il mio lavoro diventi competenza anonima, e un’azienda che ne ha due ce l’ha — e solo una delle due finisce in un link. La mia misurazione aveva già messo Perplexity come indicatore più precoce perché è quello che cerca di più. La sua documentazione dice perché.

Due cose mi impediscono di dire di più. Le citazioni di Perplexity sono instabili in un modo in cui i suoi fatti non lo sono: in tre giorni la stessa risposta è passata da nove link inline a quattro raggruppati, quindi nessun ragionamento qui si appoggia a un conteggio di citazioni. E il comportamento di un vendor non è una regola sui vendor.

Sostituzione, non allucinazione — cosa ha fatto davvero Google

Google si merita una sezione sua, perché quello che ha fatto è un modo di sbagliare distinto e la parola “allucinazione” lo nasconde.

Google ha trovato il mio lavoro. Ha azzeccato l’attributo principale del componente. Poi si è inventato due nomi di opzione che non esistono e gli ha attaccato valori di default plausibili.

Guarda la lista delle fonti e la cucitura si vede. Cos’è il componente viene dalle mie pagine. I numeri vengono da articoli generici sullo stagger con GSAP — articoli veri, corretti su GSAP, che descrivono un’altra cosa. La risposta è un innesto: l’identità del mio componente con i parametri di qualcun altro.

Questa è sostituzione, ed è peggio dell’invenzione per un motivo preciso: l’invenzione lascia un odore che un lettore attento sente, mentre la sostituzione arriva completamente referenziata. Le citazioni ci sono. Sono pagine vere. Solo che non parlano della cosa descritta, e nessun numero di click sulle fonti rivela il problema, perché ogni fonte presa da sola va benissimo.

E anche il rimedio è diverso. La sostituzione non la correggi scrivendo più verità sul tuo sito — l’avevo già scritta, ed era già stata scaricata. Quello che manca è la specificità che rende l’articolo generico la corrispondenza sbagliata: i nomi esatti, sulla pagina esatta, dichiarati come valori di un componente che ha un nome. Che è un problema di documentazione, e ne ho scritto a parte — compresi gli otto nomi di attributo che ho quasi inventato io, ragionando correttamente.

robots.txt non è un solo strumento

Questa è la conseguenza pratica dei tre ruoli, ed è la parte che non sapevo prima di leggere la documentazione di tutti e quattro i vendor di fila.

I crawler di addestramento e di ricerca rispettano robots.txt presso tutti e quattro. I fetcher on-demand in genere no — e i vendor lo dicono con parole quasi identiche. Perplexity: “Since a user requested the fetch, this fetcher generally ignores robots.txt rules”. Google: “Because the fetch was requested by a user, these fetchers generally ignore robots.txt rules”.

Anthropic è l’eccezione, e per quanto vedo l’unica: dichiara che tutti i suoi bot, Claude-User compreso, rispettano i segnali “do not crawl” “by honoring industry standard directives in robots.txt”.

Quindi lo stesso file può escludere il crawler che si sarebbe addestrato sul tuo lavoro e non fare assolutamente niente contro il fetcher che risponde con quel lavoro a una domanda live — e se sia vero dipende da quale vendor stiamo parlando, non da quanto attentamente hai scritto la regola. Se hai mai scritto un blocco in robots.txt “per l’AI” e considerato la questione chiusa, questa è la frase su cui fermarsi.

Cosa sapeva il mio log prima delle risposte

La parte che non mi aspettavo, quando ho messo le due misurazioni una accanto all’altra: ognuna delle quattro risposte era già stata predetta da un numero che avevo scritto giorni prima.

Perplexity aveva scaricato la knowledge base con l’agente che serve a linkare siti — ha citato la knowledge base. Anthropic aveva spazzato tutte le 42 pagine con l’agente che serve all’addestramento — Claude ha risposto meglio di tutti e ha accreditato l’indirizzo sbagliato. OpenAI non aveva scaricato niente quando ho fatto il test — ChatGPT non aveva niente di mio da linkare e ha linkato una pagina webflow.io. Google aveva raggiunto il mio lavoro con Googlebot e non ha nessun agente separato che mi dica qualcosa sulla seconda domanda — e ha prodotto la sostituzione qui sopra.

Quell’esperimento non l’ho progettato. Ho fatto girare due strumenti a una settimana di distanza per motivi diversi e mi sono accorto solo dopo che uno spiegava l’altro. Che è la descrizione onesta della maggior parte delle misurazioni utili.

Da dove vengono queste definizioni

Ogni citazione qui sopra viene dalla documentazione crawler del vendor stesso, letta il 5 agosto 2026. Le elenco perché un articolo che sostiene che la provenienza conta e poi parafrasa quattro aziende a memoria si meriterebbe tutto quello che gli capita:

Due di quei quattro indirizzi si erano spostati da quando li avevo visti citati: la documentazione sui bot di OpenAI non è più su platform.openai.com, e l’articolo di supporto di Anthropic ora vive su support.claude.com. Se trovi un articolo più vecchio su questo tema, controlla se i suoi link risolvono ancora prima di fidarti delle sue citazioni. Queste pagine cambiano, e tutto quello che ho citato è quello che dicevano alla data qui sopra.

Cosa questo non può dirti

  • Una stringa user-agent è un’affermazione, non una prova. I miei numeri per vendor sono quelli che ha riportato il raggruppamento di Cloudflare; non ho verificato in modo indipendente che ogni richiesta venisse dalla rete che dichiara.
  • La mia finestra sui crawler è larga 24 ore. Quindi il 1° agosto è la prima volta che ho visto OAI-SearchBot, non dimostrabilmente la prima volta che è passato. Due giorni in mezzo sono semplicemente non osservati, e non rivendicherò un primato.
  • Adesso ci sono tre interventi attivi insieme — i post, i link aggiunti alle descrizioni dei miei progetti e il video — quindi alla prossima lettura, il 28 agosto, non potrò dire quale ha mosso un numero. Tutti tre erano il rimedio previsto per lo stesso problema misurato, e riportarli come uno solo è l’opzione onesta.
  • Questo è un sito, in una nicchia. I tre ruoli vengono dalla documentazione dei vendor e sono generali; ogni numero qui è mio e non lo è.

Se fai qualcosa, fai questo in dieci minuti

Apri il tuo log dei crawler e raggruppalo per ruolo, non per azienda. “È passata Anthropic” non è una scoperta. “È passato il crawler di addestramento di Anthropic e quello di ricerca non è mai passato” è una scoperta, e ti dice cosa fare dopo: è un problema di distribuzione, non di scrittura. Nessuna quantità di pagine nuove sistema un crawler che non ha mai trovato la strada.

Smetti di festeggiare la visita sbagliata. Un crawler di addestramento che legge tutto quello che hai sembra la vittoria. È il risultato meno tracciabile a disposizione. La riga da guardare è l’agente di ricerca, e poi il fetcher on-demand — quello che significa che una persona ha chiesto.

E poi controlla cosa governa davvero il tuo robots.txt, per ruolo e per vendor, non per azienda. Probabilmente governa meno di quanto pensavi, e in un caso di più.

I numeri di qui, datati e lasciati come sono stati misurati, stanno su una pagina sola che si allunga a ogni round: Credited → (in inglese). La knowledge base di cui parla tutto questo è qui, gratis e senza registrazione, e la storia completa della misurazione è in Il credito va altrove e nel video.

Round 1 è il 28 agosto. Se i crawler di ricerca continuano a farsi vedere, lo dirò. Se non si è mosso niente, dirò quello — è tutto il senso di scrivere il numero prima.

Buon viaggio,

Francesco