llms.txt: cos’è, chi lo legge e come scriverne uno
llms.txt è una convenzione proposta, non uno standard web, per pubblicare alla radice di un sito un breve file Markdown che offre ai modelli linguistici IA un elenco curato delle sue pagine più utili. Jeremy Howard di Answer.AI l’ha introdotta nel settembre 2024 su llmstxt.org; nessun browser, motore di ricerca o grande prodotto IA è tenuto a supportarla, e nessuno la tratta oggi come autoritativa.
Cos’è llms.txt?
llms.txt affronta un problema reale: una pagina costruita per le persone avvolge il proprio contenuto in navigazione, pubblicità e JavaScript, e trasformarlo di nuovo in testo pulito per un modello è difficile e con perdita di informazioni. Invece di chiedere a un modello di eseguire la scansione e l’analisi di pagine HTML complete, un sito pubblica un unico file Markdown semplice che elenca, in ordine di importanza, le pagine che un modello dovrebbe leggere.
È esplicitamente una proposta, non uno standard: nessun ente regolatore, nessun supporto richiesto da alcuno strumento IA. Se venga usata o meno dipende interamente da ogni singolo strumento che sceglie di leggerla.
Cosa contiene un file llms.txt?
Il formato definito su llmstxt.org è specifico:
- Un H1 con il nome del sito o del progetto, l’unico elemento richiesto.
- Una citazione (blockquote) sotto l’H1 con un breve riepilogo.
- Paragrafi semplici opzionali con più contesto, prima del primo H2.
- Una o più sezioni H2, ciascuna un elenco Markdown di link:
[nome](url): nota opzionale. - Un H2 opzionale chiamato "Optional" per link secondari che un modello può saltare quando ha poco contesto disponibile.
Ecco un esempio realistico per un ipotetico prodotto SaaS:
# Acme Metrics
> Acme Metrics is a hosted dashboard for product analytics events.
## Docs
- [Quickstart](https://docs.acmemetrics.com/quickstart.md): Install the SDK, send your first event
- [API reference](https://docs.acmemetrics.com/api.md): REST endpoints for events and dashboards
- [Webhooks](https://docs.acmemetrics.com/webhooks.md): Real-time event notifications
## Optional
- [Changelog](https://docs.acmemetrics.com/changelog.md): Release notes
- [Status page](https://status.acmemetrics.com): Uptime and incidents
Molti siti pubblicano anche un llms-full.txt: la stessa mappa, ma con il contenuto Markdown completo di ogni pagina collegata incollato in un unico file, così un modello che non seguirà i link ottiene comunque tutto in un solo recupero.
llms.txt contro robots.txt contro sitemap.xml
Questi tre file si confondono perché stanno tutti alla radice del sito e riguardano tutti il modo in cui le macchine vedono un sito, ma svolgono tre compiti diversi:
| File | Scopo | Chi lo legge | Controlla l’accesso? |
|---|---|---|---|
| robots.txt | Quali percorsi i crawler possono recuperare | I crawler che scelgono di rispettarlo | Sì, in modo consultivo (un bot conforme lo segue) |
| sitemap.xml | URL che vuoi vengano scoperti e indicizzati | I motori di ricerca, per la scoperta | No, è un elenco di suggerimenti, non di permessi |
| llms.txt | Una mappa Markdown curata delle tue pagine migliori | Solo gli strumenti che scelgono di recuperarlo | No, non tocca la scansione né l’indicizzazione |
robots.txt è l’unico dei tre a vincolare davvero qualcosa, e anche questo in modo volontario: funziona perché i crawler ben educati lo controllano per primo, non perché un server lo imponga.
Google o qualche motore di ricerca IA usa llms.txt?
La documentazione ufficiale di Google risponde direttamente a questa domanda. La guida di Search Central sulla ricerca con IA generativa, nella sezione "Mythbusting generative AI search: what you don’t need to do" (sfatare i miti sulla ricerca con IA generativa: cosa non serve fare), cita i file LLMS.txt e afferma: "You don’t need to create new machine readable files, AI text files, markup, or Markdown to appear in Google Search (including its generative AI capabilities), as Google Search itself doesn’t use them" (non è necessario creare nuovi file leggibili dalle macchine, file di testo per IA, markup o Markdown per comparire nella Ricerca Google, incluse le sue funzionalità di IA generativa, perché la Ricerca Google stessa non li usa; ultimo aggiornamento luglio 2026).
I rappresentanti di Google lo dicono pubblicamente da oltre un anno. Al Search Central Live di luglio 2025, Gary Illyes ha detto che Google non supporta llms.txt e non ha piani per farlo, paragonandolo al vecchio tag meta keywords, un segnale di cui i motori di ricerca hanno smesso di fidarsi non appena i proprietari dei siti ne hanno preso il controllo. Nel gennaio 2026, dopo che la stessa piattaforma di documentazione di Google ha generato brevemente in automatico un file llms.txt, a John Mueller è stato chiesto su Bluesky se si trattasse di un’approvazione: "Sarei tentato di dire qualcosa di pungente visto quanto spesso ne parliamo, ma per essere diretto, no."
Gli altri fornitori IA hanno detto meno. Ciò che è verificabile: Anthropic, OpenAI e Perplexity pubblicano ciascuno il proprio llms.txt per la propria documentazione per sviluppatori (per esempio platform.claude.com/llms.txt e developers.openai.com/llms.txt), il che dimostra solo che trovano utile il formato per il proprio sito. Questo è diverso dal fatto che i loro crawler leggano un llms.txt sul sito di qualcun altro prima di rispondere a una domanda, e nessuno dei tre lo ha dichiarato pubblicamente. La documentazione del crawler di Perplexity descrive PerplexityBot e Perplexity-User in dettaglio e non menziona llms.txt. Tratta un’affermazione come "ChatGPT legge llms.txt" come non verificata finché il fornitore non lo dichiara.
Conviene pubblicarne uno comunque?
Probabilmente sì, per ragioni modeste. Un llms.txt è un file statico senza alcun lavoro lato server oltre a servirlo come testo semplice, quindi il costo è vicino allo zero. Il caso d’uso reale è più ristretto di "SEO per IA": un agente di codice o un assistente IDE che recupera pagine su richiesta mentre risponde a una domanda può usare un llms.txt breve per trovare più in fretta la tua guida rapida o il tuo riferimento API invece di indovinare da una sitemap.
Non sostituisce un servizio costruito perché gli agenti agiscano: il server MCP proprio di HostTracker (/it/mcp-server) è un’interfaccia attiva che un assistente chiama per eseguire un controllo o gestire un monitor, non un file che si limita a leggere. llms.txt offre solo un elenco di lettura; non può far succedere nulla.
Tienilo breve e accurato. Un link obsoleto in un file il cui scopo è essere una mappa affidabile è peggio di nessun file, e non esiste alcuna prova che colleghi llms.txt a un miglior posizionamento o a più citazioni IA, quindi non riempirlo di testo di marketing.
Come controllare davvero i crawler IA
Se l’obiettivo è controllare cosa fanno i sistemi IA con i tuoi contenuti, robots.txt con gruppi di user-agent nominati è la leva reale, non llms.txt. Ogni fornitore documenta il proprio token:
- GPTBot (OpenAI): raccoglie contenuti web per addestrare i modelli futuri; OpenAI lo elenca separatamente da OAI-SearchBot, usato per i risultati di ricerca, così puoi consentire l’uno e bloccare l’altro.
- ClaudeBot, Claude-User, Claude-SearchBot (Anthropic): ClaudeBot raccoglie dati di addestramento, Claude-User recupera una pagina per una domanda dal vivo di un utente, Claude-SearchBot esegue la scansione per risultati in stile ricerca; la documentazione di Anthropic afferma che tutti e tre rispettano robots.txt.
- PerplexityBot e Perplexity-User (Perplexity): PerplexityBot esegue la scansione per far emergere i siti nei risultati e, secondo la documentazione di Perplexity, non viene usato per addestrare modelli. Perplexity-User recupera una pagina dal vivo per una domanda specifica e in genere ignora robots.txt, poiché il recupero è avviato dall’utente, non una scansione in background.
- Google-Extended: un token di robots.txt, non un crawler con un proprio user agent, che controlla se il contenuto già recuperato da Googlebot può addestrare i futuri modelli Gemini. Google afferma che bloccarlo non ha alcun effetto sul posizionamento o sull’indicizzazione nella Ricerca.
Testa le tue regole con lo strumento gratuito per testare robots.txt: verifica se il gruppo generale User-agent: * blocca un URL e se l’URL è nella tua sitemap. Non valuta ancora una regola scritta per un crawler nominato specifico, quindi un URL aperto sotto User-agent: * può comunque risultare bloccato per GPTBot se ha un proprio gruppo più in basso nel file; per ora controlla i gruppi dei crawler nominati leggendo il file grezzo. La guida su come verificare robots.txt spiega come leggerne uno a mano.
Come verificare che il tuo llms.txt sia raggiungibile
Un llms.txt che un modello non riesce a recuperare è peggio che inutile: un modello che ci prova una volta e viene bloccato o reindirizzato non ha modo di dirti che ha fallito. Prima di considerare il file attivo, conferma tre cose:
- Restituisce uno stato 200 semplice, non un reindirizzamento verso una pagina di login né una pagina di errore renderizzata come 200.
- Il suo
Content-Typeètext/plainotext/markdown, nontext/html, il che significherebbe che un template lo ha avvolto invece di servire il file grezzo. - Non viene scartato in silenzio da una regola WAF o di mitigazione bot che segnala come insolita una richiesta per un file di testo alla radice.
Un controllo rapido da riga di comando:
curl -I https://example.com/llms.txt
Cerca HTTP/1.1 200 e un content-type che inizi con text/. Per confermare che risponde allo stesso modo da fuori la tua rete, esegui l’URL attraverso lo strumento gratuito di verifica HTTP, che effettua la richiesta da più postazioni e riporta lo stato e il tempo di risposta di ciascuna. Poi usa lo strumento per testare robots.txt per confermare che un Disallow: / generale non stia nascondendo anche il file stesso.
Il monitoraggio SEO di HostTracker osserva i segnali che influenzano davvero la visibilità nella ricerca: meta tag noindex, header X-Robots-Tag e modifiche al tag canonical, più una scansione pianificata che confronta le pagine con robots.txt a ogni esecuzione. llms.txt resta fuori da tutto questo.
Domande frequenti
llms.txt sostituisce robots.txt?
No. robots.txt controlla cosa i crawler possono recuperare e precede llms.txt di tre decenni. Una pagina può essere elencata in llms.txt e comunque essere vietata in robots.txt, o il contrario.
Pubblicare un llms.txt migliorerà il mio posizionamento nei motori di ricerca?
Non ci sono prove in tal senso, e Google ha dichiarato direttamente che i suoi sistemi di ricerca, incluso AI Overviews, non lo usano. Trattalo come una comodità per certi strumenti per sviluppatori, non come una tattica SEO.
Cos’è llms-full.txt?
Un file complementare che alcuni siti pubblicano insieme a llms.txt e che include il contenuto Markdown completo di ogni pagina collegata in un unico file, per un modello che non seguirà o non può seguire i singoli link.
ChatGPT, Claude o Perplexity leggono automaticamente il mio llms.txt?
Nessun fornitore ha pubblicato una dichiarazione secondo cui il proprio crawler o prodotto di chat recupera e analizza i file llms.txt di altri siti. Tutti e tre pubblicano il proprio per la loro documentazione, il che è diverso dal leggere il tuo.
Dove devo mettere il file?
Alla radice del sito, come /llms.txt, servito come testo semplice. La proposta consente anche un sottopercorso, come /docs/llms.txt, per descrivere solo quella sezione.
llms.txt è uno standard ufficiale?
No. È una proposta della comunità pubblicata su llmstxt.org senza alcun ente di standardizzazione alle spalle e senza alcun obbligo che uno strumento la supporti.