llms.txt è un file Markdown, di solito servito su /llms.txt, che offre agli agenti IA un breve elenco annotato delle pagine più utili di un sito. Viene spesso consigliato come modo per comparire nelle risposte delle IA, ma i dati pubblici sono più modesti: il formato è una proposta informale, Google Search dichiara di ignorare il file e la documentazione dei crawler di OpenAI, Anthropic e Perplexity parla di robots.txt, non di llms.txt.
Questo non lo rende inutile. Per i siti di documentazione e le API è un indice economico che agenti e strumenti per sviluppatori possono leggere quando serve. La guida spiega il formato, le differenze da robots.txt e sitemap.xml, quando conviene aggiungerlo, un esempio minimo e che cosa conta di più per le risposte delle IA. Le dichiarazioni dei provider riflettono le loro pagine pubbliche al 1° ottobre 2026.
Ambito di questa guida
Dati dei provider aggiornati al 1° ottobre 2026. Il controllo llms.txt di Sitelemetry verifica solo che il file sia raggiungibile e sembri un elenco di link: non valida il formato, non testa i link e non mostra se un’IA lo legge.
Che cosa prevede la proposta llms.txt
Jeremy Howard ha pubblicato la proposta il 3 settembre 2024. Il testo attuale su llmstxt.org è la versione 2, modificata il 10 agosto 2026. È una panoramica informale ospitata in un repository GitHub pubblico e aperta ai contributi della community, non uno standard IETF o W3C. Nessun motore di ricerca o provider di IA è obbligato a leggerla.
Il file è in Markdown, con le sue parti in un ordine fisso:
- Un H1 con il nome del sito o del progetto. È l’unica parte obbligatoria.
- Un blockquote con un breve riassunto dei fatti essenziali.
- Paragrafi o elenchi facoltativi con più contesto, senza titoli.
- Zero o più sezioni H2 con elenchi di file: voci con un link, seguito facoltativamente da due punti e una nota, come
- [Pricing](https://example.com/pricing): plans and limits.
Una sezione chiamata Optional contiene link secondari che un agente può saltare quando gli serve un contesto più breve.
Il file può stare nella radice o sotto un percorso come /docs/llms.txt. Copre gli URL sotto il proprio percorso e, se si applicano più file, gli agenti dovrebbero usare il più specifico. La proposta non usa /.well-known/, perché le posizioni well-known esistono solo nella radice dell’origine e molti autori controllano solo un percorso su un host condiviso.
La proposta suggerisce anche copie Markdown pulite delle pagine allo stesso URL, con .md aggiunto (page.html.md) oppure, dalla versione 2, con l’estensione sostituita (page.md). La versione 2 aggiunge due relazioni di link, inviate come elementi HTML <link> o come header HTTP Link: rel="alternate" type="text/markdown" per la copia e rel="describedby" per l’llms.txt che copre la pagina. Il testo attuale non definisce un file complementare come llms-full.txt; quando uno strumento o una piattaforma di documentazione ne produce uno, è una convenzione propria.
Come llms.txt si differenzia da robots.txt e sitemap.xml
I tre file svolgono compiti diversi per lettori diversi.
| File | Che cosa fa | Che cosa non fa |
|---|---|---|
| robots.txt | Indica ai crawler collaborativi quali URL possono richiedere (Robots Exclusion Protocol, RFC 9309). | Non è un controllo degli accessi. La RFC precisa che le sue regole non sono una forma di autorizzazione all’accesso. |
| sitemap.xml | Elenca gli URL che ritieni importanti perché i motori di ricerca li scoprano. | Un URL elencato non è necessariamente scansionato o indicizzato. |
| llms.txt | Un breve elenco annotato di pagine chiave che un agente legge quando ha bisogno di informazioni. | Non consente né blocca la scansione, non influisce sull’indicizzazione e nessuno è tenuto a leggerlo. |
La proposta traccia la stessa distinzione: robots.txt indica quale accesso automatizzato è accettabile, mentre llms.txt si usa su richiesta. Aggiunge che una sitemap non lo sostituisce, perché spesso manca di versioni Markdown delle pagine, non include URL di altri siti e di solito copre più contenuti di quanti ne stiano nella finestra di contesto di un modello.
Quindi, se vuoi consentire o bloccare un crawler di IA, modifica robots.txt. Escludere una pagina da llms.txt non la nasconde, e inserirla non annulla una regola di robots.txt che blocca un crawler. La guida a robots.txt spiega come vengono applicate le regole.
Che cosa hanno detto Google e i provider di IA su llms.txt
Ecco che cosa dicono le fonti primarie:
- Google Search. La sua guida alle funzionalità di IA generativa (aggiornata il 10 luglio 2026) afferma che non servono file leggibili dalle macchine, file di testo per IA o Markdown per comparire in Google Search, comprese le sue funzionalità di IA, perché Search non li usa. Cita direttamente llms.txt: tenerne uno per altri servizi che usano questi file va bene, ma non aiuta né danneggia visibilità e posizionamento in Google Search.
- Chrome Lighthouse. La categoria sperimentale Agentic Browsing (Chrome 150 o successivo, senza punteggio 0–100) include un audit llms.txt che cerca il file nella radice del dominio. Un errore del server viene segnalato; un 404 è contrassegnato come non applicabile, perché fornire il file è facoltativo. È un controllo di presenza in uno strumento per sviluppatori, non l’affermazione che un prodotto di ricerca o di IA usi il file.
- OpenAI. La pagina sui crawler spiega i controlli robots.txt per OAI-SearchBot (risultati di ricerca in ChatGPT) e GPTBot (addestramento) e osserva che le visite di ChatGPT-User avviate dall’utente potrebbero non seguire robots.txt. Non dice che OpenAI legga l’llms.txt di un sito.
- Anthropic. L’articolo del centro assistenza elenca ClaudeBot, Claude-User e Claude-SearchBot e dice che rispettano robots.txt. Non menziona llms.txt.
- Perplexity. La documentazione descrive PerplexityBot per i risultati di ricerca e il fetcher Perplexity-User, attivato dall’utente, che in genere ignora robots.txt. Non dice che Perplexity legga l’llms.txt di un sito.
- Microsoft Bing. Non è stata trovata alcuna indicazione di Microsoft o Bing su llms.txt. L’annuncio di febbraio 2026 di AI Performance in Bing Webmaster Tools non menziona il file.
Al 1° ottobre 2026 nessuno di questi provider documenta l’uso dell’llms.txt di un sito per posizionamento, citazioni o risposte. Diversi ne pubblicano uno per la propria documentazione per sviluppatori (OpenAI, Anthropic, Perplexity e la documentazione dell’API Gemini di Google), così come Cloudflare. Pubblicare un file per la propria documentazione non equivale a leggere i file di altri siti.
Quando conviene aggiungere llms.txt e quando può aspettare
Il file costa poco da scrivere e, secondo Google, è innocuo in Search. Il costo vero è mantenerlo corretto.
| Tipo di sito | Priorità | Perché |
|---|---|---|
| Documentazione per sviluppatori, riferimenti API, SDK | Conviene aggiungerlo | Gli sviluppatori indirizzano gli agenti di programmazione alla documentazione. Un indice curato evita all’agente di indovinare quale pagina leggere. |
| Prodotti software con molte pagine di configurazione o integrazione | Conviene aggiungerlo | Una breve mappa di configurazione, limiti e prezzi aiuta un agente a rispondere a domande pratiche usando pagine aggiornate. |
| Progetti open source | Conviene aggiungerlo | La documentazione è spesso già in Markdown, quindi la build può produrre il file e le copie delle pagine. |
| Piccole attività e siti vetrina | Bassa priorità | Poche pagine ben collegate sono già facili da leggere. |
| Negozi, siti di notizie, blog | Bassa priorità | I contenuti cambiano di continuo e un elenco curato a mano diventa obsoleto. |
Un test rapido: uno sviluppatore incollerebbe il tuo URL in un assistente di programmazione chiedendogli di lavorare con il tuo prodotto? Se sì, un llms.txt con copie Markdown delle pagine chiave è un pomeriggio ben speso. Se vuoi essere nominato nelle risposte su un servizio locale, dedica quel pomeriggio a contenuti chiari e all’accesso dei crawler. Se gli agenti devono agire sul tuo prodotto invece di leggerne, valuta un’API o un server MCP; l’introduzione a MCP spiega come funziona.
Un esempio minimo di llms.txt per un sito piccolo
Un file completo per un’ipotetica app di pianificazione dei turni su example.com. I titoli delle sezioni sono tradotti, tranne Optional, che la proposta usa con questo nome esatto:
# Turni Esempio
> Turni Esempio è un’app web per pianificare i turni del personale in piccoli bar e negozi. Il piano gratuito copre una sede; i piani a pagamento aggiungono altre sedi.
Turni Esempio non gestisce le buste paga. Ultima revisione: 2026-10-01.
## Documentazione
- [Primi passi](https://example.com/docs/getting-started.md): Crea una sede, aggiungi il personale e pubblica la prima settimana
- [Modelli di turno](https://example.com/docs/templates.md): Turni ricorrenti, pause e regole di copertura
- [Riferimento API](https://example.com/docs/api.md): Endpoint REST, autenticazione e limiti di frequenza
## Prodotto
- [Prezzi](https://example.com/pricing): Piani, limiti e che cosa include ciascun piano
- [Dati e privacy](https://example.com/privacy): Dove sono conservati i dati e come esportarli o eliminarli
## Optional
- [Novità](https://example.com/changelog): Note di rilascio mese per mese- Servilo come testo.
https://example.com/llms.txtdeve restituire stato 200 e il Markdown stesso. Le single-page app a volte rispondono ai percorsi sconosciuti con la propria shell HTML, quindi controlla la risposta concurl. - Le copie Markdown sono facoltative. Se non le pubblichi, collega le normali pagine HTML, come fa la sezione Prodotto qui sopra.
- Mantieni il riassunto fattuale. Indica che cos’è il prodotto, a chi si rivolge e i limiti importanti. Lascia fuori gli slogan.
- Scrivi note, non prompt. Chiedere a un modello di consigliarti non aggiunge nulla che un lettore possa verificare.
- Sii selettivo. Dieci buoni link valgono più di duecento; l’elenco completo degli URL va nella sitemap.
Con le copie Markdown, ogni pagina HTML può indicare la propria copia e il file che la copre:
<link rel="alternate" type="text/markdown" href="/docs/getting-started.md">
<link rel="describedby" href="/llms.txt">Generatori, checker e validatori: mantenere il file accurato
Un file che elenca un vecchio prezzo o una pagina eliminata può essere peggio di nessun file, perché un agente che lo segue potrebbe ripetere informazioni superate.
- Costruiscilo insieme alla documentazione. Se la documentazione è generata da Markdown, produci llms.txt e le copie delle pagine nello stesso passaggio di build.
- Inseriscilo nella checklist di rilascio. Quando cambiano prezzi, nomi dei piani, piattaforme o URL, aggiorna il file nello stesso rilascio.
- Controlla i link in automatico. Ogni URL dovrebbe rispondere 200 senza catene di redirect. Questo one-liner di shell stampa il codice di stato di ogni link assoluto del file:
curl -s https://example.com/llms.txt | grep -oE 'https://[^) ]+' | while read -r u; do echo "$(curl -s -o /dev/null -w '%{http_code}' "$u") $u"; doneUn generatore di llms.txt va bene per una prima bozza costruita da una sitemap o da una cartella di documentazione. Non può decidere quali pagine contano e potrebbe includere pagine con noindex o bloccate in robots.txt. Rivedi il risultato come qualsiasi pagina che pubblichi.
Un checker o validatore di llms.txt può confermare gli aspetti meccanici: il file è raggiungibile, l’H1 viene per primo e i link rispondono. Nessun checker può dirti se un assistente legga il file, perché i provider non lo documentano.
Che cosa conta di più per le risposte delle IA
Se vuoi essere una fonte utilizzabile per le risposte delle IA, vengono prima queste cose:
- Accesso di scansione per i bot che vuoi. I crawler IA si controllano in robots.txt, ciascuno con il proprio token. OpenAI distingue OAI-SearchBot (ricerca di ChatGPT) da GPTBot (addestramento), Anthropic distingue Claude-SearchBot da ClaudeBot e Perplexity documenta PerplexityBot. Il token Google-Extended è un controllo di robots.txt, non un crawler separato: stabilisce se i contenuti scansionati da Google possano essere usati per l’addestramento e il grounding di Gemini e, secondo Google, non influisce su inclusione o posizionamento in Google Search. Consentire i crawler di ricerca bloccando quelli di addestramento è una scelta legittima. Ricorda che un gruppo
User-agent: *conDisallow: /blocca ogni crawler che segue robots.txt e non ha un gruppo proprio. OpenAI indica che una modifica a robots.txt può richiedere circa 24 ore per arrivare ai suoi sistemi. - Autenticazione per i contenuti privati. I fetcher attivati dall’utente, come ChatGPT-User e Perplexity-User, potrebbero non seguire robots.txt, e la RFC 9309 afferma che le regole dei robot non sono un’autorizzazione all’accesso.
- Contenuti chiari nella pagina. Le indicazioni di Google per le sue funzionalità di IA puntano su contenuti unici e utili e su una struttura tecnica chiara, pronta per scoperta e indicizzazione, non su file speciali. Rispondi direttamente a domande reali nell’HTML di una pagina raggiungibile. La guida alla visibilità nelle IA ne mostra un esempio.
- Dati strutturati coerenti con la pagina. Google afferma che i dati strutturati non sono richiesti per la sua ricerca con IA generativa e che non serve alcun markup schema.org speciale; li raccomanda comunque per l’idoneità ai risultati avanzati in Search. Se usi JSON-LD, mantienilo coerente con i fatti visibili.
- Fatti coerenti. Nome, prezzi, piani, aree geografiche e contatti dovrebbero coincidere tra le pagine, i dati strutturati e l’llms.txt. Se le tue stesse pagine si contraddicono, qualsiasi sistema che le riassuma deve tirare a indovinare.
Nessun file può costringere un assistente a citarti. Ciò che controlli è se le pagine sono raggiungibili, leggibili e corrette; la guida alla SEO tecnica tratta le basi di scansione e indicizzazione.
Che cosa controlla Sitelemetry su llms.txt
L’area visibilità nelle IA di Sitelemetry fa parte dell’audit a sei aree (sicurezza, SEO tecnica, visibilità nelle IA, accessibilità, prestazioni e integrazioni), che parte da $49/mese con il piano Starter. Il suo controllo su llms.txt è mirato:
- Richiede
/llms.txtuna volta sull’origine e riporta stato e dimensione. - Il file conta come presente solo se restituisce uno stato 2xx, non è vuoto, non è HTML e sembra una guida di link: una riga che inizia con
#o-, un URL, oppure parole come docs o sitemap. Un file mancante è segnalato come risultato parziale con una raccomandazione. - Non valida il formato, non segue né testa i link e non afferma che un sistema IA legga il file.
Il segnale di accesso dei crawler della stessa area legge robots.txt per l’indirizzo sottoposto ad audit. Applica le regole come descrive la RFC 9309: il gruppo che nomina il crawler, oppure User-agent: * quando nessun gruppo lo fa; i pattern * e $; e la regola corrispondente più lunga, con Allow che prevale a parità. Una regola che copre solo un’altra sezione, come /members/, non pesa contro quell’indirizzo. Tra le regole sui crawler IA abbassano il segnale solo quelle per i crawler di ricerca IA: OAI-SearchBot, Claude-SearchBot, PerplexityBot, MistralAI-Index, Amzn-SearchBot, meta-webindexer e DuckAssistBot, che i rispettivi fornitori documentano per le funzioni di ricerca o risposta con IA. Contano anche i blocchi ereditati da User-agent: *; quando lo stesso blocco si applica anche a Googlebot, l’audit lo riporta una sola volta, come pagina bloccata. L’area SEO tecnica riporta queste regole come rilievi e i crawler di ricerca IA bloccati abbassano anche il suo punteggio. Le altre regole IA sono riportate a titolo informativo e non cambiano il punteggio: i gruppi che bloccano token di addestramento come GPTBot, ClaudeBot, Google-Extended, Applebot-Extended o CCBot, i gruppi che bloccano fetcher richiesti dall’utente come ChatGPT-User, Claude-User o Perplexity-User, e le regole che nominano solo i vecchi token Anthropic anthropic-ai o Claude-Web, che Anthropic non elenca più. L’elenco dei token deriva dalla documentazione dei crawler di ciascun fornitore, verificata l’8 novembre 2026, e non copre ogni crawler: controlla tu i token che non vi compaiono. L’area riporta anche i dati strutturati JSON-LD senza validarli rispetto a schema.org. L’audit legge l’HTML statico di un campione di pagine senza eseguire JavaScript e non interroga ChatGPT, Claude, Perplexity o Google né traccia le citazioni nelle risposte delle IA.
Il piano Free include solo i controlli di sicurezza; con un credito audit dell’area visibilità nelle IA un workspace Free può eseguire anche questo audit (ogni nuovo workspace Free parte con 1 credito per area). Lo snapshot gratuito di preparazione al lancio esegue otto controlli passivi senza registrazione; non esamina llms.txt, robots.txt né i dati strutturati e non è l’audit a sei aree. I dettagli dei piani sono nella pagina dei prezzi.
Domande frequenti
llms.txt è uno standard ufficiale?
No. È una proposta informale di Jeremy Howard, pubblicata per la prima volta a settembre 2024; la versione 2 è datata 10 agosto 2026. Non è uno standard IETF o W3C e nessun motore di ricerca o provider di IA è tenuto a leggerlo.
llms.txt farà citare il mio sito in ChatGPT, Perplexity o nelle risposte IA di Google?
Nessun provider documenta che lo faccia. Google Search dichiara di ignorare llms.txt, quindi il file non aiuta né danneggia la visibilità lì. Al 1° ottobre 2026 OpenAI, Anthropic e Perplexity descrivono i loro crawler in termini di robots.txt e non dicono di leggere l’llms.txt di un sito.
llms.txt può bloccare i crawler IA o l’addestramento delle IA?
No. Non concede né nega l’accesso. Usa robots.txt con i token che ogni provider documenta, come GPTBot o ClaudeBot per i crawler di addestramento, e tieni i contenuti privati dietro autenticazione, perché alcuni fetcher attivati dall’utente potrebbero non seguire robots.txt.
Un generatore di llms.txt è sufficiente?
Per una prima bozza sì. Devi comunque scegliere le pagine che contano, scrivere note accurate, rimuovere ciò che è bloccato in robots.txt o impostato su noindex e rigenerare il file quando la documentazione cambia.
Come posso controllare il mio llms.txt?
Scaricalo e verifica uno stato 200, Markdown invece di una pagina HTML, l’H1 per primo e link funzionanti. L’audit sperimentale di Lighthouse e l’area visibilità nelle IA di Sitelemetry controllano entrambi la presenza del file; nessuno dei due può dirti se un determinato assistente lo legga.
Fonti e approfondimenti
- llmstxt.org: Il file /llms.txt (proposta, v2)llmstxt.org
- Google Search Central: Ottimizzare il sito per le funzionalità di IA generativa su Google Searchdevelopers.google.com
- Chrome for Developers: audit llms.txt di Lighthousedeveloper.chrome.com
- Chrome for Developers: punteggio Agentic Browsing di Lighthousedeveloper.chrome.com
- OpenAI: panoramica dei crawler di OpenAIdevelopers.openai.com
- Centro assistenza Claude: Anthropic raccoglie dati dal web e come possono bloccare il crawler i proprietari dei siti?support.claude.com
- Perplexity: i crawler di Perplexitydocs.perplexity.ai
- Mistral AI: documentazione del crawler (MistralAI-Index)docs.mistral.ai
- Amazon Developer: Amazonbot e i crawler di Amazondeveloper.amazon.com
- Meta for Developers: crawler web di Metadevelopers.facebook.com
- DuckDuckGo Help: DuckAssistBotduckduckgo.com
- Apple Support: informazioni su Applebot (Applebot-Extended)support.apple.com
- Common Crawl: CCBotcommoncrawl.org
- RFC 9309: Robots Exclusion Protocolwww.rfc-editor.org
- Google Crawling Infrastructure: i crawler comuni di Google (Google-Extended)developers.google.com
- Google Search Central: informazioni sulle sitemapdevelopers.google.com
A cura della redazione di Sitelemetry. Le fonti collegate permettono di approfondire gli argomenti.



