llms.txt: qué es, cómo escribirlo y cómo validarlo
llms.txt es un archivo Markdown breve que le dice a los modelos de lenguaje qué es tu sitio y qué páginas importan. Aquí tienes el formato tal como lo define la propuesta, expectativas realistas sobre quién lo lee, ejemplos para tres tipos de sitio y soluciones paso a paso para los archivos que no pasan la validación.
Searvia · 24/10/2026 · Lectura de 7 min

En resumen: llms.txt es un archivo Markdown propuesto, ubicado en
/llms.txt, que ofrece a los modelos de lenguaje un mapa breve de tu sitio: un título# Nombre del sitio(la única parte obligatoria), un resumen opcional de una línea en una cita>y secciones##con tus páginas más útiles como enlaces Markdown. No controla el rastreo, no es una señal de posicionamiento en Google y los principales rastreadores de IA no documentan que lo lean. Aun así, publicarlo cuesta poco y resulta útil para herramientas y agentes a los que se dirige a tu sitio. Escríbelo en diez minutos, sírvelo como texto plano con estado 200 y valídalo.
Pocos archivos web han recibido tanta atención con tan poco efecto documentado. Los plugins añaden llms.txt con un clic, hay guías que prometen que te "meterá en ChatGPT" y muchos propietarios de sitios publican uno sin saber qué debería contener. Esta guía se ciñe a lo que define la propuesta, a lo que los proveedores de IA han dicho y no han dicho, y a cómo escribir un archivo correcto y realmente útil. También explica exactamente qué valida nuestro verificador de llms.txt gratuito y cómo solucionar cada problema que reporta.
Qué es llms.txt
La propuesta llms.txt fue publicada por Jeremy Howard el 3 de septiembre de 2024. Se describe como "a proposal to standardise on using an /llms.txt file to provide information to help agents use a website" (una propuesta para estandarizar el uso de un archivo /llms.txt que aporte información para ayudar a los agentes a usar un sitio web), y la página señala que ya va por su segunda versión y está abierta a aportaciones de la comunidad.
La idea: las páginas HTML están llenas de navegación, scripts y maquetación que desperdician el limitado contexto de un modelo. Un archivo Markdown breve, escrito por una persona, puede decirle al modelo qué es el sitio y dónde está el contenido útil. La propuesta afirma que llms.txt "would mainly be useful for inference rather than training" (sería útil sobre todo para la inferencia, no para el entrenamiento), es decir, cuando un modelo o agente responde a una pregunta y lee tu sitio en directo.
El formato, sección por sección
La propuesta define las secciones en un orden fijo:
| Orden | Sección | Obligatoria | Qué contiene |
|---|---|---|---|
| 1 | H1 (# Nombre) | Sí, la única sección obligatoria | El nombre del sitio o proyecto |
| 2 | Cita (> ...) | No | Un resumen breve con la información clave |
| 3 | Texto libre | No | Párrafos o listas con detalles; sin encabezados |
| 4 | Secciones H2 (## Docs) | No | "Listas de archivos": enlaces Markdown a páginas clave |
| 5 | ## Optional | No | Enlaces secundarios que una herramienta puede omitir si hay poco contexto |
Cada entrada de una lista de archivos es un elemento de lista Markdown con un enlace obligatorio [nombre](url), seguido opcionalmente de dos puntos y una nota sobre la página. La propuesta también sugiere ofrecer una versión Markdown de cada página en la misma URL añadiendo .md, por ejemplo page.html.md, o sustituyendo la extensión (page.md).
El archivo suele estar en la raíz del sitio, pero la propuesta lo permite en cualquier ruta, y cubre las páginas bajo esa ruta, lo que encaja con documentación alojada en /docs/. La documentación de Next.js, por ejemplo, dirige a los lectores a un índice en /docs/llms.txt.
Qué no es llms.txt
- No es control de acceso. robots.txt, definido en el RFC 9309, indica a los rastreadores qué pueden descargar. llms.txt no permite ni prohíbe nada. La propia propuesta dice que ambos "have different purposes" (tienen propósitos distintos) y que llms.txt puede complementar a robots.txt.
- No es un sitemap. Un sitemap lista todas las URL indexables para los buscadores. llms.txt lista unas pocas seleccionadas, con contexto. La propuesta dice que un sitemap "isn't a substitute" (no es un sustituto) de llms.txt.
- No es un requisito de Google. La guía de Google sobre las funciones de IA dice: "You don't need to create new machine readable files, AI text files, or markup to appear in these features." (No necesitas crear nuevos archivos legibles por máquinas, archivos de texto para IA ni marcado para aparecer en estas funciones).
- No está documentado por los grandes rastreadores de IA. La documentación de rastreadores de OpenAI, Anthropic y Perplexity explica los tokens de robots.txt y los rangos de IP; a octubre de 2026, ninguna de estas páginas menciona llms.txt.
Por qué publicarlo de todos modos
Hay tres razones que se sostienen sin exagerar:
- Los agentes y asistentes de programación lo leen cuando se les dirige a un sitio. Si un desarrollador pega la URL de tu documentación en un asistente, un índice limpio de enlaces Markdown es más fácil de procesar que tu navegación renderizada. Por eso las plataformas de documentación lo adoptaron primero; llmstxt.org lista generadores en Mintlify, GitBook, Yoast SEO, AIOSEO, Wix y otros.
- Te obliga a hacer un ejercicio editorial útil. Escribir una frase sobre lo que haces y elegir las diez páginas que importan es el mismo trabajo que hace clara una página de inicio para las personas y para los rastreadores de búsqueda que sí alimentan las respuestas de IA.
- Cuesta casi nada. Un archivo estático, sin más mantenimiento que mantener los enlaces al día.
Lo que no hará es arreglar un sitio al que los rastreadores de IA no pueden acceder. Si OAI-SearchBot recibe un 403 de tu firewall, ningún archivo de texto lo cambia. Comprueba primero el acceso con el verificador de rastreadores de IA y lee nuestra guía de rastreadores de IA para conocer los detalles.
Ejemplos de llms.txt listos para copiar
Un producto de software
# Tallyboard
> Tallyboard is time tracking and invoicing software for agencies of 5 to 200 people. Plans start at $12 per user per month; a 14-day trial needs no card.
Tallyboard runs in the browser and on iOS and Android, and integrates with QuickBooks, Xero and Slack.
## Product
- [Features](https://www.example.com/features): timers, timesheets, approvals, invoicing
- [Pricing](https://www.example.com/pricing): plans, limits and annual discount
- [Integrations](https://www.example.com/integrations): QuickBooks, Xero, Slack, Jira
## Help
- [Getting started](https://www.example.com/help/getting-started): set up a workspace in 10 minutes
- [API reference](https://www.example.com/docs/api.md): REST API, authentication and rate limits
## Optional
- [Changelog](https://www.example.com/changelog)
- [Company](https://www.example.com/about)
Un negocio local
# North Street Bakery
> Family bakery in Springfield, Illinois, baking sourdough, pastries and custom cakes since 2009. Open Monday to Saturday.
## Visit
- [Location and hours](https://www.example.com/visit): 120 North Street, opening hours, parking
- [Contact](https://www.example.com/contact): phone, email and order form
## Order
- [Custom cakes](https://www.example.com/cakes): flavors, sizes, prices and lead time
- [Catering](https://www.example.com/catering): office breakfast boxes
Un sitio de documentación
# Lumen SDK
> Lumen is an open-source JavaScript SDK for building offline-first apps. MIT license.
## Docs
- [Quick start](https://docs.example.com/quick-start.md): install and first sync in five minutes
- [Configuration](https://docs.example.com/config.md): every option with defaults
- [Conflict resolution](https://docs.example.com/conflicts.md): how merges work
## Examples
- [Todo app](https://docs.example.com/examples/todo.md)
## Optional
- [Architecture notes](https://docs.example.com/internals.md)
Reglas que hacen útil el archivo: redacta el resumen como hechos (qué, para quién, dónde, precio), usa URL absolutas de páginas canónicas que devuelvan 200, mantén las notas cortas y enlaza a versiones Markdown cuando las tengas.
Cómo funciona el verificador de llms.txt de Searvia
El verificador de llms.txt usa el mismo motor que nuestro verificador SEO de sitios web. Introduces un dominio o la dirección de una página; lee esa página (tu página de inicio si solo introduces un dominio) y los archivos del sitio que la rodean, ejecuta 38 comprobaciones en unos 20 segundos y coloca arriba las tres comprobaciones de las que trata esta herramienta. Esto es exactamente lo que hace cada una.
Archivo llms.txt (prioridad baja). El verificador sigue la página hasta su dirección final y luego solicita /llms.txt en ese host, siguiendo las redirecciones. El archivo cuenta como presente solo si:
- responde con estado 200,
- no es una página HTML (un tipo de contenido
text/html, o un cuerpo que empiece por<!doctypeo<html>, significa que tu servidor devolvió una página web, normalmente una página de "no encontrado" o la página de inicio), y - no está vacío.
La comprobación se supera cuando el archivo, tras una marca de orden de bytes (BOM) opcional y espacios en blanco iniciales, empieza por # , que es el H1 que exige la propuesta. El informe también cuenta los enlaces Markdown con la forma [texto](url). Emite una advertencia, en lugar de un fallo, cuando falta el archivo o no tiene título, porque llms.txt es opcional.
El verificador no valida la cita, el orden de las secciones ni si las páginas enlazadas existen, y solo mira la raíz del host, no /docs/llms.txt. Tampoco busca llms-full.txt.
Acceso de rastreadores de IA (prioridad alta). El mismo informe muestra si robots.txt permite a 10 rastreadores de IA y de búsqueda y a 2 tokens de exclusión del entrenamiento de IA descargar la página, y si tu firewall rechaza una solicitud que se identifica como GPTBot (una advertencia, no una prueba, ya que la solicitud no procede de las direcciones de OpenAI). Está en el foco de esta herramienta porque un llms.txt al que los rastreadores no pueden llegar no sirve de nada.
Sitemap XML (prioridad media). El verificador prueba las líneas Sitemap: de robots.txt, luego /sitemap.xml y /sitemap_index.xml, hasta cuatro direcciones. Aprueba con la primera que responda 200 con una raíz <urlset> o <sitemapindex> e informa de cuántas entradas <loc> encontró. El sitemap y llms.txt cumplen funciones distintas, y conviene tener ambos.
La nota global de A+ a F abarca las 38 comprobaciones, ponderadas por prioridad, y el informe se puede compartir con un enlace.
Cómo leer el resultado
| Mensaje | Qué significa | Solución |
|---|---|---|
| llms.txt is present with N links. | Encontrado, servido como texto, empieza con un H1 | Revisa el contenido y el número de enlaces |
| llms.txt exists but does not start with a "# " title. | Encontrado y servido correctamente, pero la primera línea no es un H1 | Paso 2 más abajo |
| No llms.txt file was found. | 404, error, archivo vacío o una página HTML servida en esa dirección | Paso 1 o paso 3 más abajo |
Un resultado correcto con 0 enlaces significa que el archivo tiene título pero ningún enlace Markdown, así que no da nada a las herramientas que seguir. Uno con 300 enlaces significa que has pegado un sitemap; redúcelo a las páginas que importan.
Cómo corregir cada problema de llms.txt
1. No se encontró ningún archivo llms.txt
- Escribe el archivo usando uno de los ejemplos anteriores. Guárdalo como texto plano UTF-8 con el nombre exacto
llms.txt, en minúsculas. - Colócalo donde tu servidor sirva la raíz del sitio:
- Sitios estáticos y la mayoría de frameworks: la carpeta
public/ostatic/(Next.js, Vite, Astro, Nuxt y Hugo sirven esa carpeta en la raíz). - WordPress: Yoast SEO y AIOSEO pueden generar el archivo; si no, súbelo a la carpeta raíz de WordPress, junto a
wp-config.php. - Shopify: no puedes subir archivos a la raíz, así que usa una app, o sube el archivo a Files y crea una redirección de URL desde
/llms.txthacia él. El verificador sigue redirecciones, de modo que funciona siempre que el destino se sirva como texto. - Wix: llmstxt.org lista a Wix entre las plataformas que admiten el archivo; revisa los ajustes SEO de tu sitio.
- Sitios estáticos y la mayoría de frameworks: la carpeta
- Abre
https://yourdomain.com/llms.txten una ventana privada y confirma que ves Markdown sin procesar, no tu sitio web. - Ejecuta de nuevo el verificador de llms.txt.
2. llms.txt existe pero no empieza con un título "# "
Los primeros caracteres no en blanco deben ser # seguido de un espacio. Causas habituales:
- El archivo empieza con el resumen o con una lista vacía; añade
# Nombre de tu sitiocomo primera línea. - El encabezado está escrito
#Nombresin espacio, o comoNombrecon===debajo. Usa# Nombre. - Una marca de orden de bytes (BOM) invisible al principio del archivo. Nuestro verificador la ignora, pero otros analizadores no ven
#como los primeros caracteres. Para ir sobre seguro, guarda el archivo como "UTF-8 sin BOM" en tu editor. - Un plugin añadió un comentario o una línea de "generado por" encima del título. Muévela debajo o elimínala.
3. La dirección devuelve una página web en lugar del archivo
Si subiste un archivo pero el verificador sigue diciendo que no se encontró, solicita las cabeceras:
curl -I https://yourdomain.com/llms.txt
- Estado 200 con
Content-Type: text/html: la ruta comodín de tu aplicación responde a toda URL desconocida con la página de inicio o con una página de "no encontrado" con estado 200. Sirve el archivo antes de las rutas de la aplicación o configura el gestor de archivos estáticos. - Estado 404: el archivo no está donde busca el servidor. Revisa la carpeta y el nombre del archivo.
- Estado 301 o 302 hacia la página de inicio: una regla de redirección captura las rutas desconocidas. Añade una excepción.
- Estado 403: una regla de seguridad bloquea los archivos
.txto las rutas desconocidas. Permite/llms.txt.
Después, establece el tipo de contenido como texto plano. En Nginx:
location = /llms.txt {
default_type text/plain;
charset utf-8;
}
En Apache, AddType text/plain .txt en la configuración del sitio o en .htaccess hace lo mismo. text/markdown también sirve; cualquier tipo que no sea HTML pasa.
4. Falla el acceso de rastreadores de IA o falta el sitemap
Estos puntos vienen con el informe de llms.txt porque importan más. Si los rastreadores de búsqueda con IA están bloqueados en robots.txt o por el firewall, soluciónalo primero; nuestra guía de rastreadores de IA tiene los pasos. Si no se encontró ningún sitemap, publica uno con tus páginas indexables, inclúyelo en robots.txt con una línea como Sitemap: https://www.example.com/sitemap.xml y envíalo en Google Search Console y Bing Webmaster Tools.
Mantenlo al día
Un llms.txt con enlaces rotos es peor que ninguno, porque envía a las herramientas a páginas de error. Tres hábitos lo mantienen preciso:
- Genéralo a partir de tus datos cuando puedas. Un paso de compilación que escriba el archivo desde tu navegación o tu índice de documentación nunca se desfasa.
- Revísalo cuando cambien los precios, los planes o la línea de producto. La línea de resumen es la parte con más probabilidad de quedarse obsoleta.
- Enlaza solo páginas canónicas. Sin URL redirigidas, sin parámetros de seguimiento, sin páginas noindex.
Ejemplo práctico (hipotético)
Lo siguiente es un ejemplo hipotético, no datos reales. Fernway Travel, un operador turístico inventado, instala un plugin que genera llms.txt. El verificador dice "No llms.txt file was found." curl -I muestra estado 200 y Content-Type: text/html: la capa de caché del sitio sirvió una página de inicio en caché para la nueva dirección. Tras purgar la caché, el archivo aparece, pero ahora el verificador dice que "exists but does not start with a "# " title": el plugin escribe primero una línea de comentario. El equipo cambia el plugin a modo manual y escribe el archivo a mano:
# Fernway Travel, y luego un resumen: tours a pie en grupos reducidos por Portugal y España, de 6 a 12 invitados, de abril a octubre.## Tourscon ocho páginas de tours y su duración y rango de precios como notas.## Plan your tripcon las condiciones de reserva, lo que incluye y las preguntas frecuentes.## Optionalcon el blog y la página de la empresa.
El verificador aprueba con 14 enlaces. El equipo descubre además, en el mismo informe, que su sitemap no figuraba en robots.txt y añade la línea Sitemap:.
Lista de comprobación de llms.txt en 10 minutos
- Comprueba primero el acceso de los rastreadores de IA; llms.txt no puede ayudar si los rastreadores están bloqueados.
- Escribe
# Nombre, un resumen factual de una línea y dos o tres secciones##con enlaces clave. - Usa URL absolutas y canónicas que devuelvan 200.
- Súbelo a la raíz, sírvelo como texto plano y guárdalo sin BOM.
- Valídalo con el verificador de llms.txt.
- Pon un recordatorio para revisarlo cuando cambien tu producto o tus precios.
Cómo ayuda Searvia
El verificador de llms.txt gratuito valida el archivo junto con el acceso de rastreadores de IA y tu sitemap en un único informe que se puede compartir. El verificador de preparación para la búsqueda con IA usa el mismo motor, centrado en todo lo que necesitan los asistentes: acceso de rastreadores, contenido sin JavaScript, marcado de identidad, contenido en formato de respuesta y actualización. Dentro de una cuenta de Searvia, AI visibility hace cada semana a los asistentes de IA las preguntas reales de tus clientes y muestra si te mencionan, te recomiendan o te citan, y su botón Check access prueba las reglas de robots.txt, los bloqueos del firewall y llms.txt para cada bot de IA. Esa es la medición que te dice si todo este trabajo da resultado. Para la estrategia más amplia, consulta nuestra guía de generative engine optimization.
Preguntas frecuentes
- ¿Qué es llms.txt?
- llms.txt es un estándar propuesto para un archivo Markdown en la raíz de un sitio web, en /llms.txt, que ofrece a los modelos de lenguaje una guía breve del sitio: un H1 con el nombre del sitio, un resumen opcional de una línea en una cita y secciones H2 con listas de enlaces a las páginas más útiles. Jeremy Howard publicó la propuesta el 3 de septiembre de 2024. Está pensado principalmente para el momento en que un modelo responde a una pregunta, no para el entrenamiento.
- ¿Ayuda llms.txt al SEO o a la visibilidad en IA?
- No hay evidencia de que ayude en Google: Google afirma que no necesitas crear nuevos archivos legibles por máquinas ni archivos de texto para IA para aparecer en las AI Overviews o en el AI Mode. La documentación de rastreadores de OpenAI, Anthropic y Perplexity tampoco menciona llms.txt. Aun así, puede ayudar a herramientas y agentes a los que se dirige a tu sitio, como los asistentes de programación que leen documentación, así que trátalo como un archivo de cortesía de diez minutos, no como una palanca de posicionamiento.
- ¿Es llms.txt lo mismo que robots.txt?
- No. robots.txt indica a los rastreadores qué URL pueden descargar, y los rastreadores que se portan bien lo obedecen. llms.txt no concede ni deniega nada: es una guía de lectura que describe tu sitio y enlaza a las páginas clave. La propuesta dice que ambos tienen propósitos distintos y que llms.txt puede complementar a robots.txt al dar contexto al contenido permitido. Bloquear o permitir rastreadores de IA se hace en robots.txt y en tu firewall.
- ¿Qué es llms-full.txt?
- llms-full.txt es una convención que usan algunas plataformas de documentación para un único archivo que contiene el texto completo de todas las páginas de la documentación. No forma parte de la propuesta llms.txt de llmstxt.org, que solo define /llms.txt y sugiere ofrecer versiones Markdown de las páginas individuales añadiendo .md a sus URL.
- ¿Cómo creo un archivo llms.txt?
- Escribe un archivo de texto plano llamado llms.txt que empiece con '# Nombre de tu sitio', añade un resumen de una línea como cita con '> ', y luego secciones H2 como '## Products' o '## Docs' con enlaces Markdown de la forma '- [Nombre de la página](https://example.com/page): nota breve'. Súbelo a la raíz de tu dominio, asegúrate de que se sirva con estado 200 como texto y no como HTML, y valídalo con un verificador.
Fuentes
- The /llms.txt file – llmstxt.org
- AI features and your website – Google Search Central
- Overview of OpenAI Crawlers – OpenAI
- Does Anthropic crawl data from the web, and how can site owners block the crawler? – Claude Help Center
- Perplexity Crawlers – Perplexity
- redirects – Next.js documentation
- RFC 9309: Robots Exclusion Protocol – IETF
- Build and submit a sitemap – Google Search Central