Llms.txt vs robots.txt: diferencias reales y estrategia de citación

Llms.txt vs robots.txt: diferencias reales y estrategia de citación

Si gestionas contenido a escala, probablemente ya has visto el término llms.txt aparecer en conversaciones sobre GEO (Generative Engine Optimization) y citabilidad en motores de IA. Y es probable que la primera pregunta que te hayas hecho sea: ¿no es esto básicamente lo mismo que robots.txt, pero para la IA? La respuesta corta es no. La respuesta larga —que es la que importa para tu estrategia— es que confundir ambos archivos puede llevarte a bloquear canales de visibilidad que no querías bloquear, o a asumir que tienes control cuando en realidad no lo tienes.

Qué hace cada archivo: la diferencia de fondo

robots.txt es un archivo de control de acceso. Lleva funcionando desde 1994 y fue formalizado como estándar IETF bajo la especificación RFC 9309 en septiembre de 2022. Su lógica es binaria: permite o deniega que un rastreador concreto acceda a una ruta concreta de tu dominio. Nada más.

llms.txt es un archivo de curación de contenido. La especificación fue creada por Jeremy Howard en Answer.AI y publicada el 3 de septiembre de 2024. El archivo llms.txt es un documento Markdown situado en la raíz de tu sitio que indica a sistemas de IA como ChatGPT, Claude, Perplexity y Gemini de qué trata tu web. No bloquea nada. No concede ni deniega acceso. Su función es señalar qué páginas merecen ser leídas y citadas.

La confusión entre ambos archivos es comprensible: los dos viven en la raíz del dominio, los dos hablan con bots y los dos tienen un nombre que acaba en .txt. Pero robots.txt es un archivo de control de acceso estandarizado (RFC 9309) que indica a los rastreadores qué rutas pueden o no solicitar, mientras que llms.txt es un archivo de curación de contenido en Markdown que apunta a los modelos de lenguaje hacia tus páginas más importantes para que puedan leerlas y citarlas con mayor precisión.

Dicho de otra manera: robots.txt actúa en la capa de red (¿puede este bot hacer la petición HTTP?); llms.txt actúa en la capa semántica (¿qué debería leer este modelo para entender mi sitio?). Son capas distintas con objetivos distintos.

Por qué llms.txt no es «robots.txt para la IA»

La metáfora circula mucho, pero es inexacta y puede llevar a decisiones equivocadas. llms.txt es un archivo de navegación, no una herramienta de bloqueo: ayuda a los sistemas de IA a encontrar tu mejor contenido, pero no puede restringir ningún rastreador ni impedir que ningún sistema de IA lea tu sitio.

A diferencia de las reglas antiguas centradas en bloquear el acceso, el archivo llms.txt trata de curación. No indica principalmente a la IA lo que no puede ver, sino que sugiere con fuerza lo que debería ver para obtener la mejor respuesta. Esta distinción es operacionalmente crítica: si tu objetivo es impedir que un modelo use tu contenido, llms.txt no es la herramienta. Si tu objetivo es que el modelo use el contenido correcto, llms.txt sí puede ayudar.

La implicación directa es esta: publicar un llms.txt bien construido no te protege de rastreadores no deseados. Y bloquear rastreadores en robots.txt no garantiza que un modelo no haya ingerido ya tu contenido en una fase de entrenamiento previa.

El estado real del cumplimiento: robots.txt no es una ley

Antes de diseñar cualquier estrategia de control de acceso, conviene entender cuánto poder real tiene robots.txt sobre los rastreadores de IA. La respuesta es: más del que muchos piensan, pero menos del que necesitarías para considerarlo una barrera fiable.

robots.txt (estandarizado como RFC 9309) es una petición voluntaria que los rastreadores bien comportados respetan. No tiene fuerza legal por sí mismo y no bloquea técnicamente el acceso: la aplicación real ocurre en el servidor o en el CDN.

Googlebot, GPTBot, ClaudeBot y PerplexityBot documentan sus user-agents y respetan las directivas estándar. Eso es la buena noticia. La mala: Perplexity ha sido sorprendida operando rastreadores no declarados que rotan user-agents, IPs y ASNs para eludir las directivas de no rastreo. La conclusión de Cloudflare fue contundente: las reglas de robots.txt no son una defensa fiable contra Perplexity si Perplexity no quiere respetarlas.

Esto no significa que robots.txt sea inútil. Significa que su utilidad real es declarar intención frente a actores que sí la respetan, y que para contenido verdaderamente sensible necesitas controles a nivel de servidor o WAF (Web Application Firewall). robots.txt no es suficiente contra scrapers no conformes o la suplantación de user-agent.

Rastreadores de entrenamiento vs. rastreadores de recuperación

Aquí está la distinción que más impacto tiene en tu estrategia y que menos agencias aplican correctamente. No todos los rastreadores de IA hacen lo mismo. Hay dos familias con objetivos radicalmente distintos:

  • Rastreadores de entrenamiento (GPTBot, Google-Extended, CCBot, anthropic-ai): rastrean en bulk para incorporar tu contenido a los pesos del modelo. Si los bloqueas en robots.txt, tu contenido no entra en futuras versiones del modelo.
  • Rastreadores de recuperación en tiempo real (OAI-SearchBot, ChatGPT-User, Claude-SearchBot, PerplexityBot): recuperan páginas en el momento en que un usuario hace una pregunta, para generar una respuesta con fuentes actualizadas. Si los bloqueas, tu marca desaparece de las respuestas de IA cuando alguien pregunta sobre tu categoría.

La estrategia quirúrgica ganadora es: bloquear los rastreadores de entrenamiento (GPTBot, Google-Extended, CCBot, Meta-ExternalAgent, Bytespider, Applebot-Extended, Amazonbot) y permitir explícitamente los bots de búsqueda y los activados por el usuario (OAI-SearchBot, ChatGPT-User, Claude-SearchBot, Claude-User, PerplexityBot).

El error más común que auditamos en agencias es un robots.txt con User-agent: * Disallow: / copiado de un ejemplo de 2022 que bloquea indiscriminadamente ambas familias. Bloquear estos bots significa que los usuarios que pregunten a la IA sobre tu categoría no verán tu marca mencionada. Complementar ese robots.txt actualizado con un llms.txt bien construido es precisamente lo que permite recuperar esa visibilidad perdida.

Cómo funciona llms.txt en la práctica

El archivo llms.txt tiene una estructura deliberadamente simple. La especificación es intencionadamente ligera y está construida sobre Markdown porque ese es el «lenguaje nativo» de los LLMs: no requiere análisis sintáctico complejo.

La estructura mínima incluye: un encabezado H1 con el nombre del sitio o proyecto, un bloque de cita (blockquote) con un resumen de 1-3 frases, y secciones H2 con listas de enlaces a tus páginas más relevantes, cada una con una descripción de una línea. Existe también llms-full.txt, un archivo complementario más extenso que incorpora el contenido real de esas páginas enlazadas para que un agente pueda ingerirlo todo en una sola petición.

El problema que resuelve es concreto: el HTML es ruidoso para los LLMs. La navegación, el JavaScript, los anuncios y los píxeles de seguimiento consumen contexto antes de que el modelo llegue a algo útil. llms.txt elimina ese ruido y entrega directamente un mapa limpio de tu contenido más valioso.

A diferencia de robots.txt y sitemap.xml, que fueron diseñados para la indexación de buscadores tradicionales, llms.txt está optimizado para los patrones de acceso en tiempo real de los asistentes de IA. No es un sustituto del sitemap; es una capa adicional pensada para un consumidor diferente.

Qué páginas incluir en tu llms.txt

La tentación es listar todas las URLs del sitio. Eso es exactamente lo contrario de lo que debes hacer. Un archivo llms.txt sólido es selectivo. Debe ayudar a un sistema de IA a responder las preguntas que haría un comprador, analista, desarrollador, periodista o evaluador.

En la práctica, prioriza:

  • Páginas de autoridad temática: artículos de fondo, guías definitivas, estudios propios. Son las que más probabilidad tienen de ser citadas.
  • Páginas de producto o servicio con descripciones factuales precisas: nombre, función, diferenciador. Los modelos necesitan datos concretos para citarte correctamente.
  • Páginas de documentación o FAQ: estructuralmente limpias y fáciles de recuperar mediante RAG (Retrieval-Augmented Generation).
  • Páginas actualizadas recientemente: sin llms.txt, un sistema de IA puede recuperar contenido desactualizado o incompleto; por ejemplo, una marca de e-commerce puede haber actualizado sus especificaciones de producto, pero el modelo sigue sirviendo información de entradas de blog antiguas.

Lo que no debes incluir: páginas de categoría sin contenido sustantivo, URLs de paginación, páginas de administración o cualquier URL que tengas bloqueada en robots.txt. Nunca listes en llms.txt una página que robots.txt bloquea. El conflicto entre ambos archivos genera señales contradictorias y puede causar comportamientos impredecibles en los rastreadores.

Tabla comparativa: robots.txt vs llms.txt

Estructura de tabla comparativa con dos columnas divididas por línea índigo en diseño minimalista.
Una tabla comparativa permite identificar rápidamente que robots.txt afecta a buscadores como Google, mientras llms.txt está diseñado específicamente para controlar el acceso de modelos generativos
Diferencias técnicas clave entre robots.txt y llms.txt
Dimensión robots.txt llms.txt
Función principal Control de acceso (permitir/bloquear rutas) Curación de contenido (orientar hacia páginas clave)
Formato Texto plano con directivas (User-agent, Allow, Disallow) Markdown estructurado (H1, blockquote, listas de enlaces)
Estado estándar Estándar IETF (RFC 9309, 2022) Propuesta no ratificada (Answer.AI, sept. 2024)
Audiencia Rastreadores web (Googlebot, GPTBot, ClaudeBot…) Modelos de lenguaje en tiempo de inferencia
Efecto sobre Google Directo: controla qué indexa Googlebot Ninguno: Google no lo lee ni lo procesa
¿Bloquea rastreadores? Sí (de forma voluntaria, no técnica) No: es orientativo, no restrictivo
Impacto en citabilidad Indirecto: si bloqueas bots de recuperación, desapareces de respuestas de IA Potencial: señala qué páginas priorizar para respuestas

Cómo afecta todo esto a tu estrategia de citación en motores generativos

Si produces contenido a volumen y quieres aparecer citado en ChatGPT, Perplexity, Claude o Google AI Overviews, la combinación de robots.txt y llms.txt define dos palancas distintas que necesitas calibrar por separado.

La palanca de acceso (robots.txt) determina si los bots de recuperación en tiempo real pueden llegar a tu contenido cuando un usuario hace una pregunta. Un error aquí tiene consecuencia inmediata: si has bloqueado GPTBot por completo, tu producto nunca aparecerá en esa respuesta. Pero si permites acceso sin discriminar, estás abriendo la puerta también a rastreadores de entrenamiento que consumen ancho de banda sin devolverte tráfico.

La palanca de curación (llms.txt) determina, dentro del contenido accesible, qué fragmentos tienen más probabilidad de ser recuperados y citados. Necesitas ambas: robots.txt para la optimización del presupuesto de rastreo, llms.txt para el contexto de IA y la agrupación de citaciones. robots.txt no puede proporcionar descripciones de entidades ni categorizar URLs por tema.

Esto significa que la estrategia de citación en GEO no se gestiona con un solo archivo. Se gestiona con una arquitectura de señales: acceso correcto para los bots correctos, contenido curado para que el modelo sepa qué leer, y E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness) sólido en el propio contenido para que merezca ser citado.

El problema del bloqueo indiscriminado

La decisión de bloquear todos los rastreadores de IA —motivada habitualmente por el temor a que el contenido se use para entrenamiento sin compensación— tiene un coste de oportunidad que pocas agencias calculan antes de implementarla.

Los motores de IA no recuperan la web de la misma manera. Algunos usan sus propios rastreadores. Otros usan índices de búsqueda. Algunos recuperan páginas después de que el usuario hace una pregunta. Otros combinan memoria del modelo, datos con licencia, índices de socios, búsqueda en vivo y recuperación directa de páginas. Esto significa que bloquear un user-agent concreto no garantiza ausencia en todas las superficies de IA, y que permitir uno no garantiza presencia en todas ellas.

La estrategia de bloqueo selectivo —bloquear entrenamiento, permitir recuperación— es hoy el enfoque más extendido entre sitios con volumen de contenido alto. Bloquear Google-Extended te excluye del entrenamiento de Gemini sin afectar al posicionamiento en la búsqueda tradicional de Google. Esa es una de las pocas palancas limpias disponibles en este ecosistema.

Qué deberías implementar y en qué orden

Si partes de cero o de un robots.txt desactualizado, este es el orden de prioridad que recomendamos en Narratias SXO para agencias y equipos de contenido que quieren visibilidad simultánea en buscadores tradicionales y motores generativos.

Primero, audita y actualiza tu robots.txt. Comprueba que no tienes directivas de bloqueo global que afecten a bots de recuperación de IA. En 2026, un robots.txt completo cubre más de 12 bots de IA de OpenAI, Anthropic, Perplexity, Google, Common Crawl y ByteDance, cada uno con un user-agent distinto y una decisión de política distinta. Si tu archivo tiene menos de 5 entradas de user-agent específicas para IA, está desactualizado.

Segundo, implementa el bloqueo selectivo por familia de rastreador. Bloquea los agentes de entrenamiento puro (GPTBot, CCBot, anthropic-ai, Meta-ExternalAgent) si no quieres que tu contenido entre en datasets de entrenamiento. Permite explícitamente los agentes de recuperación (OAI-SearchBot, ChatGPT-User, Claude-SearchBot, PerplexityBot). Revisa el archivo trimestralmente como mínimo: la industria de IA lanza nuevos rastreadores con regularidad y los existentes cambian sus cadenas de user-agent.

Tercero, publica tu llms.txt. Yoast SEO y Rank Math añadieron generación nativa de llms.txt en 2025; la opción aparece en el panel de cada plugin y, una vez activada, el archivo se genera y actualiza automáticamente. Si no usas WordPress, existen generadores externos que producen el archivo en formato Markdown correcto.

Cuarto, alinea ambos archivos. Revisa que ninguna URL listada en llms.txt esté bloqueada en robots.txt. Validar ambos archivos es esencial para evitar directivas contradictorias. Un conflicto entre ellos no solo es ineficiente: puede confundir a rastreadores bien comportados y hacer que ignoren señales que sí querías enviar.

Quinto, no pares aquí. robots.txt y llms.txt son condiciones necesarias pero no suficientes para la citabilidad en motores generativos. La decisión de un modelo de citar tu contenido depende principalmente de la calidad, especificidad y autoridad de ese contenido —lo que en Narratias SXO llamamos citabilidad estructural—, no de la presencia de un archivo en la raíz de tu dominio. Los archivos de control abren la puerta; el contenido es lo que hace que el modelo quiera entrar.

Preguntas frecuentes

¿Puedo usar llms.txt para impedir que la IA use mi contenido?

No. llms.txt no tiene capacidad de bloqueo: es un archivo orientativo, no restrictivo. Si quieres impedir que rastreadores de IA accedan a tu contenido, la herramienta correcta es robots.txt con directivas específicas por user-agent. Para contenido realmente sensible, necesitas controles a nivel de servidor o WAF, porque robots.txt solo funciona con rastreadores que deciden respetarlo voluntariamente.

¿Afecta llms.txt al posicionamiento en Google?

No. Google ha confirmado oficialmente que ningún sistema de Google Search lee ni actúa sobre el archivo llms.txt. No mejora ni empeora tu ranking orgánico. Su función está orientada exclusivamente a modelos de lenguaje en tiempo de inferencia, no a los sistemas de indexación de Google.

¿Debo bloquear GPTBot en robots.txt?

Depende de tu objetivo. GPTBot es el rastreador de entrenamiento de OpenAI: bloquearlo impide que tu contenido entre en futuros datasets de entrenamiento de los modelos de OpenAI. Sin embargo, OAI-SearchBot y ChatGPT-User son los agentes de recuperación en tiempo real que alimentan las respuestas de ChatGPT Search. Si bloqueas GPTBot pero permites OAI-SearchBot, puedes aparecer en respuestas de ChatGPT sin contribuir al entrenamiento del modelo. Esa es la estrategia de bloqueo selectivo recomendada para la mayoría de sitios de contenido.

¿Qué pasa si un rastreador ignora mi robots.txt?

robots.txt es una petición voluntaria, no una barrera técnica. Rastreadores como Perplexity han sido documentados usando agentes no declarados que eluden las directivas. Para contenido que no quieres que ningún rastreador acceda bajo ninguna circunstancia, la única defensa real es la autenticación a nivel de servidor, reglas WAF o respuestas HTTP 403 para rangos de IP conocidos de los crawlers.

¿Cuántas URLs debo incluir en mi llms.txt?

Las suficientes para representar tu autoridad temática, no todas las que tienes. Un llms.txt efectivo es selectivo: incluye tus páginas de mayor valor informativo (guías, estudios, documentación, páginas de producto con datos precisos) y excluye URLs de paginación, categorías vacías y cualquier página bloqueada en robots.txt. La calidad de la selección importa más que la cantidad de URLs listadas.

Fuentes