Bloccare le AI con robots.txt: cosa ferma davvero
Alcuni bot AI rispettano il robots.txt, altri dichiarano di ignorarlo: GPTBot, ClaudeBot, ChatGPT-User, cosa scrivere nel file e come verificarlo nei log.
Bloccare le AI con robots.txt si può, ma solo in parte, e quello che resta fuori è proprio il caso a cui pensavi. La domanda mi arriva ormai in due versioni opposte: “posso impedire a ChatGPT di leggere il mio sito?” e “come faccio a essere sicuro che le AI mi leggano?”. La risposta seria a entrambe passa dallo stesso punto: sapere quali bot esistono, quali si fermano davanti a un Disallow e quali no. Perché non è una questione di opinioni: chi li gestisce lo ha scritto nella propria documentazione.
⚠️ Il noindex non c’entra niente, e llms.txt nemmeno
Il primo equivoco da togliere è il più diffuso. Il meta tag noindex sta dentro la pagina: un crawler deve scaricarla per leggerlo, e quando lo legge il contenuto è già stato acquisito. Con i motori di ricerca classici il patto funziona lo stesso, perché Google e Bing si sono impegnati da vent’anni a non mostrare in SERP quello che il tag esclude. I sistemi AI quel patto non l’hanno mai firmato: non esiste un “noindex per LLM”, e i tag proposti come noai e noimageai non hanno oggi nessun grande operatore che si sia impegnato a rispettarli.
Nel mucchio delle soluzioni immaginarie va messo anche llms.txt: nessun provider maggiore si è impegnato a onorarlo, e sul perché non sia una leva verificata ho scritto nel pezzo su cos’è la GEO. Se l’obiettivo è controllare l’accesso, lo strumento con una compliance dichiarata e verificabile resta uno solo, ed è il robots.txt. Con un perimetro preciso, però: vale per due famiglie di bot su tre.
Le tre famiglie di bot AI
I bot legati ai sistemi AI non sono una categoria sola, e trattarli come tale è l’errore che rende inutile metà delle guide in circolazione. Le famiglie sono tre, distinte per funzione, e la distinzione non è mia: è la stessa che usa Cloudflare per classificare il traffico in AI Crawl Control, che infatti divide i crawler in Training, Search e Agent.
| Famiglia | Cosa fa | Esempi | Rispetta robots.txt |
|---|---|---|---|
| Training | Raccoglie contenuti per addestrare i modelli | GPTBot, ClaudeBot, CCBot | Sì, dichiarato nelle doc |
| Ricerca AI | Indicizza per le risposte con citazioni | OAI-SearchBot, Claude-SearchBot, PerplexityBot | Sì, dichiarato nelle doc |
| Retrieval su richiesta | Va a prendere una pagina quando un utente la chiede in chat | ChatGPT-User, Perplexity-User, Claude-User | No, o non dichiarato |
Sulla prima famiglia una precisazione che evita un errore comune: Google-Extended non è un crawler. È un token di controllo che si scrive nel robots.txt, ma il passaggio fisico lo fa il solito Googlebot: la documentazione ufficiale dice che “Google-Extended doesn’t have a separate HTTP request user agent string” e che bloccarlo “does not impact a site’s inclusion in Google Search”. Toglie i tuoi contenuti dal training e dal grounding di Gemini, non dalle AI Overviews, che pescano dall’indice normale della Search.
⚠️ La terza famiglia te lo dice in faccia
Sui bot di retrieval non serve fare dietrologia, basta leggere le documentazioni ufficiali, verificate alla data in cui scrivo.
OpenAI, sulla pagina dei suoi bot, scrive di ChatGPT-User: “Because these actions are initiated by a user, robots.txt rules may not apply”. Fino a fine 2025 quella pagina conteneva un impegno di compliance, poi rimosso: la ricostruzione del cambio sta in un’analisi di Seer Interactive di questi giorni, che vale la lettura se vuoi la versione lunga.
Perplexity va oltre: la documentazione dei suoi crawler dice di Perplexity-User: “Since a user requested the fetch, this fetcher generally ignores robots.txt rules”. Anthropic dichiara la compliance per ClaudeBot e Claude-SearchBot, mentre sulla pagina dedicata l’impegno esplicito per Claude-User non compare: si può solo chiederne il blocco, e la cosa prudente resta trattarlo come gli altri due.
La logica dietro rimane la stessa per tutti: quando una persona incolla il tuo indirizzo in chat o chiede “leggi questa pagina”, per l’operatore quel fetch è un’azione dell’utente, come un browser, non un crawl automatico. Puoi trovarla una scusa o una distinzione sensata, ma il risultato operativo non cambia: quella richiesta il robots.txt non la ferma. Si ferma solo a livello server, con regole firewall o gestione bot tipo Cloudflare, che è un lavoro in più e va giustificato da un problema reale, non dal principio.
Il robots.txt è un cartello, non un cancello: due famiglie di bot su tre si fermano a leggerlo. La terza entra con l’utente per mano, e lo dichiara nella propria documentazione.
✅ Cosa scrivere nel robots.txt, se decidi di bloccare
Per le due famiglie che il file lo rispettano, la sintassi è quella di sempre. La scelta vera è strategica: bloccare il training senza sparire dalla ricerca AI. Un blocco totale “anti AI” copiato da un tutorial toglie il sito anche da ChatGPT search e da Perplexity, cioè dalle risposte con citazioni che potevano portarti clienti.
# Blocca l'uso per addestramento
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: CCBot
Disallow: /
User-agent: Google-Extended
Disallow: /
# La ricerca AI resta libera di citarti
User-agent: OAI-SearchBot
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
Due avvertenze pratiche. I gruppi del robots.txt non si sommano: un bot obbedisce al gruppo più specifico che lo nomina, quindi le regole vanno pensate per singolo user-agent, non “a cascata”. E se hai landing di campagna su un sottodominio, il loro robots.txt è separato: puoi chiudere lì senza toccare il sito principale, tenendo aperti i bot dei circuiti pubblicitari che devono leggere le pagine per il quality score.
🛠️ La verifica sta nei log, non nel file
Scrivere la regola è il dieci per cento del lavoro. Il novanta è sapere se viene rispettata, e lì il robots.txt non ti dice niente: servono i log del server. Con un dettaglio che cambia i conti: lo user-agent è una stringa autodichiarata, e chiunque può presentarsi come GPTBot. Un “GPTBot” nei log non è un dato finché non verifichi che l’indirizzo IP appartenga ai range ufficiali, che OpenAI, Anthropic e Perplexity pubblicano proprio per questo. Nei censimenti che faccio sui log dei siti che seguo, la quota di bot che dichiarano un nome altrui non arriva mai a zero: prima di dire “mi legge l’AI di X” conviene contare quante di quelle visite reggono la verifica.
Il percorso minimo, senza strumenti a pagamento: censimento degli user-agent AI negli access log, verifica a campione degli IP contro i range ufficiali, poi 30-90 giorni di osservazione dopo aver messo le regole, per vedere se il crawl delle due famiglie “obbedienti” scende davvero. Chi sta dietro Cloudflare ha la strada corta: AI Crawl Control mostra i passaggi per singolo crawler e segnala chi viola le direttive. Solo se dopo i Disallow il traffico che volevi fermare continua, ha senso scalare alle regole server: prima è ingegneria preventiva su un problema che magari non hai.
Il rovescio: per la maggior parte delle PMI bloccare è la mossa sbagliata
Detto tutto questo, la domanda giusta non è “come blocco le AI” ma “perché dovrei”. L’85% delle citazioni nelle risposte AI arriva da domini terzi, e su come si lavora quel meccanismo ho scritto nel pezzo sulle citazioni AI: per un’attività che vive di clienti trovati online, essere leggibili e citabili vale quasi sempre più del controllo. Il rischio concreto che vedo più spesso non è il contenuto “rubato”: è il blocco messo per sbaglio, la regola WAF aggressiva o il Disallow copiato che tiene fuori anche OAI-SearchBot e PerplexityBot, cioè esattamente i bot che potevano nominarti.
Il mio robots.txt lo puoi leggere: è tutto aperto, e c’è anche una riga che dichiara la scelta in un formato pensato per essere letto dalle macchine, Content-Signal: search=yes, ai-input=yes, ai-train=yes, la sintassi dei Content Signals proposta da Cloudflare a metà 2025. Non è ingenuità, è un calcolo dichiarato: in questa fase la visibilità del sito vale più dell’attribution che perdo sul training, e la decisione ha un trigger scritto per essere ribaltata, il giorno in cui ci saranno asset che vale la pena proteggere. I casi in cui bloccare ha senso subito esistono, ma sono specifici: contenuti a pagamento, landing di campagna che duplicano le pagine vere e iniziano a comparire citate al posto loro, cataloghi con condizioni riservate. Lì si chiude in modo chirurgico, non a tappeto.
Decidere col criterio, non col trend
La sintesi operativa è corta. Le AI che addestrano e quelle che citano si fermano con quattro righe di robots.txt, e la scelta sensata per quasi tutti è bloccare al massimo il training tenendo aperta la ricerca. Le AI che leggono su richiesta dell’utente non si fermano da lì, e prima di costruire muri a livello server conviene misurare se il problema esiste. Qualunque strada scegli, i log sono l’unico posto dove vedi la differenza tra quello che hai scritto e quello che succede. Se vuoi capire come il tuo sito sta dentro questo meccanismo, dal file alle citazioni, è il lavoro che faccio nella consulenza GEO: scrivimi da uno dei canali qui sotto.
❓ Domande frequenti
Se blocco i bot AI, perdo posizioni su Google?
ChatGPT può leggere il mio sito anche se lo blocco nel robots.txt?
Bloccare Google-Extended mi toglie dalle AI Overviews?
Il noindex tiene i miei contenuti fuori dalle AI?
Come vedo quali bot AI passano dal mio sito?
A un e-commerce conviene bloccare i bot AI?
Hai un progetto in testa?
Raccontami cosa ti serve o cosa non funziona. Rispondo entro 24 ore, senza preventivi a scatola chiusa.