[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"blog-it-llms-txt-ottimizzazione-ai-search":3},{"id":4,"title":5,"author":6,"body":7,"cover":434,"description":435,"draft":436,"extension":437,"locale":438,"meta":439,"navigation":132,"path":440,"publishedAt":441,"seo":442,"seoTitle":443,"slug":444,"stem":445,"tags":446,"__hash__":450},"blog\u002Fit\u002Fblog\u002Fllms-txt-ottimizzazione-ai-search.md","llms.txt: cosa serve davvero (e cosa non è dimostrato)","Manuel Tardivo",{"type":8,"value":9,"toc":426},"minimark",[10,26,50,64,69,107,110,180,184,258,266,270,299,313,317,320,330,342,346,391,395,422],[11,12,13,17,18,21,22,25],"p",{},[14,15,16],"strong",{},"Problema che risolvi:"," vuoi un ",[14,19,20],{},"file canonico in testo"," con link e descrizioni che strumenti automatici (crawler, assistenti, pipeline interne) possono ",[14,23,24],{},"leggere senza parsing HTML"," completo.",[11,27,28,36,37,40,41,45,46,49],{},[14,29,30,31,35],{},"Cosa ",[32,33,34],"em",{},"non"," è dimostrato (onestà):"," al 2026 ",[14,38,39],{},"non esiste documentazione pubblica"," che provi che la sola presenza di ",[42,43,44],"code",{},"\u002Fllms.txt"," ",[14,47,48],{},"sposti il ranking"," o la frequenza con cui un modello commerciale (ChatGPT, Perplexity, Gemini, …) cita il tuo brand. I vendor non pubblicano un “llms.txt ranking factor”.",[11,51,52,55,56,59,60,63],{},[14,53,54],{},"Cosa ha senso fare comunque:"," tenere ",[14,57,58],{},"sommario + versione lunga"," aggiornati come ",[14,61,62],{},"fonte di verità"," per chi costruisce dataset, supporto, o integrazioni proprietarie — e per ridurre ambiguità quando un sistema legge il sito.",[65,66,68],"h2",{"id":67},"cosa-mettere-nel-file-contenuto","Cosa mettere nel file (contenuto)",[70,71,72,80,87,96],"ul",{},[73,74,75,76,79],"li",{},"Chi siete, cosa fate, ",[14,77,78],{},"link alle pagine"," marketing con descrizione one-line.",[73,81,82,83,86],{},"Contatti e ",[14,84,85],{},"dati legali"," se servono a partner\u002Fcompliance.",[73,88,89,90,95],{},"Link a ",[14,91,92],{},[42,93,94],{},"\u002Fllms-full.txt"," (o equivalente) se offrite una trascrizione estesa.",[73,97,98,99,102,103,106],{},"Lista ",[14,100,101],{},"blog"," \u002F ",[14,104,105],{},"portfolio"," pubblici con meta breve (come in sitemap, ma in plain text).",[11,108,109],{},"Struttura tipica in Markdown-ish (testo puro va bene):",[111,112,117],"pre",{"className":113,"code":114,"language":115,"meta":116,"style":116},"language-markdown shiki shiki-themes github-light github-dark","# Nome brand\n\nUna riga su cosa fate.\n\n## Pagine\n- \u002Fit\u002Fservices — …\n- \u002Fen\u002Fservices — …\n\n## Blog\n- \u002Fit\u002Fblog\u002Fslug — titolo e descrizione SERP\n","markdown","",[42,118,119,127,134,140,145,151,157,163,168,174],{"__ignoreMap":116},[120,121,124],"span",{"class":122,"line":123},"line",1,[120,125,126],{},"# Nome brand\n",[120,128,130],{"class":122,"line":129},2,[120,131,133],{"emptyLinePlaceholder":132},true,"\n",[120,135,137],{"class":122,"line":136},3,[120,138,139],{},"Una riga su cosa fate.\n",[120,141,143],{"class":122,"line":142},4,[120,144,133],{"emptyLinePlaceholder":132},[120,146,148],{"class":122,"line":147},5,[120,149,150],{},"## Pagine\n",[120,152,154],{"class":122,"line":153},6,[120,155,156],{},"- \u002Fit\u002Fservices — …\n",[120,158,160],{"class":122,"line":159},7,[120,161,162],{},"- \u002Fen\u002Fservices — …\n",[120,164,166],{"class":122,"line":165},8,[120,167,133],{"emptyLinePlaceholder":132},[120,169,171],{"class":122,"line":170},9,[120,172,173],{},"## Blog\n",[120,175,177],{"class":122,"line":176},10,[120,178,179],{},"- \u002Fit\u002Fblog\u002Fslug — titolo e descrizione SERP\n",[65,181,183],{"id":182},"llmstxt-vs-seo-classico","llms.txt vs SEO classico",[185,186,187,203],"table",{},[188,189,190],"thead",{},[191,192,193,197,200],"tr",{},[194,195,196],"th",{},"Aspetto",[194,198,199],{},"SEO (Google Search)",[194,201,202],{},"llms.txt",[204,205,206,222,236,247],"tbody",{},[191,207,208,212,215],{},[209,210,211],"td",{},"Obiettivo",[209,213,214],{},"Indicizzazione e ranking su SERP",[209,216,217,218,221],{},"Corpus ",[14,219,220],{},"testuale"," riusabile da tool",[191,223,224,227,230],{},[209,225,226],{},"Evidenza d’impatto",[209,228,229],{},"Linee guida Google pubbliche",[209,231,232,235],{},[14,233,234],{},"Nessun"," standard di ranking pubblicato per i LLM consumer",[191,237,238,241,244],{},[209,239,240],{},"Formato",[209,242,243],{},"HTML + structured data",[209,245,246],{},"Plain text \u002F Markdown leggero",[191,248,249,252,255],{},[209,250,251],{},"Manutenzione",[209,253,254],{},"Continua (contenuti + tecnico)",[209,256,257],{},"Quando cambiano pagine chiave",[11,259,260,45,262,265],{},[42,261,202],{},[14,263,264],{},"non sostituisce"," meta tag, canonical, hreflang o performance — convive con loro.",[65,267,269],{"id":268},"implementazione-su-progetti-nuxt-nitro-snowinch","Implementazione su progetti Nuxt \u002F Nitro (Snowinch)",[11,271,272,273,281,282,285,286,289,290,293,294,298],{},"Su questo sito ",[14,274,275,277,278],{},[42,276,44],{}," non è un file in ",[42,279,280],{},"public\u002F",": è una ",[14,283,284],{},"route Nitro"," che genera testo a runtime così resta allineata a blog, portfolio e i18n (codice in ",[42,287,288],{},"server\u002Froutes\u002Fllms.txt.get.ts"," e ",[42,291,292],{},"utils\u002FbuildLlmsSnowinch.ts"," nel repository). Stesso schema per ",[14,295,296],{},[42,297,94],{},".",[11,300,301,308,309,312],{},[14,302,303,304,307],{},"Perché evitare ",[42,305,306],{},"public\u002Fllms.txt"," duplicato:"," conflitto con la route dinamica e rischio di contenuto ",[14,310,311],{},"stale"," rispetto al deploy.",[65,314,316],{"id":315},"esempio-reale-snowinch","Esempio reale (Snowinch)",[11,318,319],{},"Il sommario pubblico è servito qui (URL di produzione):",[11,321,322],{},[14,323,324],{},[325,326,327],"a",{"href":44},[42,328,329],{},"https:\u002F\u002Fwww.snowinch.com\u002Fllms.txt",[11,331,332,333,336,337,341],{},"Aprilo in browser: è testo UTF-8, ",[42,334,335],{},"Cache-Control"," ragionevole, niente autenticazione. La versione estesa è ",[14,338,339],{},[42,340,94],{}," sullo stesso dominio.",[65,343,345],{"id":344},"checklist-operativa","Checklist operativa",[347,348,349,361,368,384],"ol",{},[73,350,351,354,355,357,358,298],{},[14,352,353],{},"200 OK"," su ",[42,356,44],{},", ",[42,359,360],{},"Content-Type: text\u002Fplain; charset=utf-8",[73,362,363,364,367],{},"Coerenza con ",[14,365,366],{},"sitemap"," e pagine effettivamente pubbliche (no bozze).",[73,369,370,371,357,374,357,377,357,380,383],{},"Aggiornare quando cambiano ",[14,372,373],{},"servizi",[14,375,376],{},"prezzi",[14,378,379],{},"team",[14,381,382],{},"slug"," blog.",[73,385,386,387,390],{},"Non promettere in sales deck effetti su ",[14,388,389],{},"LLM consumer"," non misurabili.",[65,392,394],{"id":393},"sintesi","Sintesi",[70,396,397,406,413],{},[73,398,399,401,402,405],{},[42,400,202],{}," = ",[14,403,404],{},"documentazione machine-readable"," del sito, utile e a basso costo.",[73,407,408,409,412],{},"Non confonderla con una ",[14,410,411],{},"leva SEO certificata"," per l’AI search.",[73,414,415,416,419,420,298],{},"Su stack tipo Nuxt: preferisci ",[14,417,418],{},"generazione server-side"," (o build step) a un file statico dimenticato in ",[42,421,280],{},[423,424,425],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":116,"searchDepth":129,"depth":129,"links":427},[428,429,430,431,432,433],{"id":67,"depth":129,"text":68},{"id":182,"depth":129,"text":183},{"id":268,"depth":129,"text":269},{"id":315,"depth":129,"text":316},{"id":344,"depth":129,"text":345},{"id":393,"depth":129,"text":394},"\u002Fblog\u002F26_llms_txt_ottimizzazione_ai_search_1x.webp","llms.txt è un sommario machine-readable, non una leva di ranking dimostrata. A cosa serve, i limiti, e come lo serviamo via Nitro invece che da public\u002F.",false,"md","it",{},"\u002Fit\u002Fblog\u002Fllms-txt-ottimizzazione-ai-search","2026-03-07",{"title":5,"description":435},"llms.txt: a cosa serve, cosa non è provato","llms-txt-ottimizzazione-ai-search","it\u002Fblog\u002Fllms-txt-ottimizzazione-ai-search",[202,447,448,449],"AI SEO","ricerca generativa","ottimizzazione AI","IikP9TZZpIod6Wfm6f-DFt5G9Qdbkaa6x6nL_wXbf40"]