El robots.txt es el archivo más corto de tu sitio web y uno de los pocos capaces de sacarlo entero de Google con una sola línea. Es una escena que se repite en las migraciones: el ambiente de pruebas tiene Disallow: / para que nadie lo encuentre, el sitio nuevo sale a producción con ese mismo archivo y a las dos semanas alguien pregunta por qué las visitas orgánicas vienen en picada.
Por eso le tengo cariño y respeto al archivo robots.txt. Mi lectura es que se decide mirando qué rastrean de verdad los bots en tus logs, y que hoy tiene que responder dos preguntas distintas: qué no le conviene a Google rastrear y qué sistemas de IA pueden usar tu contenido para entrenar o para citarte. En esta guía te explico qué es, cómo funciona, sus directivas con ejemplos y qué bloquearía yo en un sitio grande.
¿Qué es el robots.txt?
El robots.txt es un archivo de texto plano que vive en el directorio raíz de un dominio (por ejemplo, tusitio.com/robots.txt) y le dice a los rastreadores qué URLs pueden visitar y cuáles no. Además, es público: cualquiera puede escribir esa dirección en el navegador y leerlo, incluida tu competencia (bastante entretenido, por lo demás).
La mejor analogía que conozco para el archivo robots.txt es el letrero de "solo personal autorizado" en la puerta de una bodega. No tiene chapa. Las personas educadas lo respetan y el que viene a robar entra igual.
El formato viene del Protocolo de Exclusión de Robots, que propuso Martijn Koster en 1994, y que el IETF formalizó como estándar recién en 2022 (RFC 9309). Treinta años después, el archivo robots.txt sigue siendo un texto con unas pocas reglas.
Un detalle que se olvida seguido: cada host de tu sitio web tiene su propio archivo. El archivo robots.txt de www.tusitio.com no aplica a blog.tusitio.com, así que cada subdominio necesita el suyo en su propio directorio raíz.
¿Para qué sirve el archivo robots.txt?
El archivo robots.txt sirve principalmente para gestionar el rastreo. Según la documentación de Google, su uso principal es evitar que los rastreadores sobrecarguen tu servidor con solicitudes. En la práctica, los motores de búsqueda lo usan para saber qué partes del sitio web pueden recorrer.
Los usos más comunes:
- Mantener a los bots fuera de zonas sin valor para la búsqueda: paneles de administración, carritos, páginas de login.
- Cuidar el presupuesto de rastreo en sitios web con cientos de miles de páginas, para que el buscador no gaste su tiempo en filtros y parámetros.
- Indicar dónde está el sitemap.
- Decidir qué bots de inteligencia artificial pueden entrar y para qué.
Ahora, una aclaración honesta: si tu sitio web tiene 300 páginas y Google rastrea las nuevas sin demora, el robots.txt casi nunca va a ser tu cuello de botella. Yo no dedicaría tres meses al tema (lo conversamos con más calma en el artículo sobre crawl budget). Donde de verdad pesa es en ecommerce, portales y medios con millones de combinaciones de URLs.
¿Cómo funciona el robots.txt?
Antes de rastrear un sitio web, un rastreador que se porta bien pide el archivo robots.txt, lo lee y busca el grupo de reglas que le corresponde según su nombre. Si no hay nada que lo bloquee, rastrea.
Todo el sistema del robots.txt es voluntario. Los motores de búsqueda como Google y Bing lo respetan, igual que los bots automáticos que declaran las grandes empresas de IA. Los bots maliciosos lo ignoran, y algunos hasta lo leen para ver qué estás escondiendo.
Cuando dos reglas del archivo robots.txt chocan, Google aplica la más específica, medida por el largo de la ruta. Si una regla bloquea /tienda/ y otra permite /tienda/ofertas/, gana la segunda para esa carpeta. Si empatan, elige la menos restrictiva.
Viene la parte árida, pero es corta y le ha salvado la pega a más de un equipo. Según la especificación de Google:
- El archivo robots.txt queda en caché hasta 24 horas, así que un cambio no se aplica al instante.
- Lee solo los primeros 500 KiB; lo que venga después se ignora.
- Si el archivo responde con un error 4xx (salvo 429), el buscador asume que no hay restricciones.
- Si responde con un error 5xx, deja de rastrear el sitio durante 12 horas y después usa la última versión guardada hasta por 30 días.
O sea, un firewall que devuelve 403 al pedir el robots.txt no protege nada, y un servidor caído puede frenar el rastreo de todo el sitio web.
¿Qué directivas usa el robots.txt?
Las directivas del robots.txt son pocas. Google soporta cuatro, y la mayoría de los motores de búsqueda las entiende igual:
- User-agent: a qué bot se aplican las reglas que vienen debajo.
User-agent: *es para todos (con una excepción curiosa: a AdsBot, el de anuncios, hay que nombrarlo aparte). - Disallow: la ruta que ese bot no debe rastrear. Siempre parte con
/. - Allow: una excepción dentro de una ruta bloqueada.
- Sitemap: la URL completa del archivo XML con tus páginas. Puedes poner varias líneas si tienes más de uno (y si parece que nadie lo lee, revisa por qué Google no está usando tu sitemap).
Una quinta que vas a ver seguido es Crawl-delay, que pide esperar unos segundos entre solicitudes. Bing respeta crawl-delay; Google no la soporta. Y ojo con un consejo que todavía circula: en enero de 2024 se retiró la herramienta de Search Console para limitar la frecuencia de rastreo, así que esa perilla ya no existe.
Otro detalle del archivo robots.txt que causa lata: las rutas distinguen mayúsculas y minúsculas. Disallow: /Ofertas/ no bloquea /ofertas/.
¿Cómo funcionan los comodines * y $?
Hay dos comodines. El asterisco * significa "cualquier secuencia de caracteres" y el signo $ marca el final de la URL. Con el comodín bien puesto puedes bloquear patrones completos en vez de escribir ruta por ruta:
User-agent: *
Disallow: /*?orden=
Disallow: /*.pdf$
La primera regla bloquea cualquier dirección con el parámetro orden. La segunda, todos los archivos que terminan en .pdf.
Ejemplos de robots.txt
Partamos por el más aburrido, que es el de este sitio web. Lo revisé hoy y tiene tres líneas:
User-agent: *
Allow: /
Sitemap: https://www.anafernandezseo.com/sitemap.xml
Para un sitio chico, ese archivo robots.txt está perfecto. No hay filtros, no hay búsqueda interna, no hay nada que esconder.
El que bloquea todo, útil solo en un ambiente de pruebas (y peligroso si viaja a producción, como en la escena del inicio):
User-agent: *
Disallow: /
Uno que cierra un directorio a un bot específico y deja el resto del sitio web abierto (el patrón para bloquear los PDF ya lo viste más arriba):
User-agent: Bingbot
Disallow: /borradores/
Y uno más realista para el sitio web de un ecommerce grande:
User-agent: *
Disallow: /buscar
Disallow: /*?color=*&talla=
Allow: /buscar/ayuda
Sitemap: https://www.tutienda.cl/sitemap-index.xml
¿Qué conviene bloquear en un sitio grande?
Las guías suelen dar la misma lista: zona de administración, búsqueda interna, carritos y páginas de confirmación, filtros y parámetros de orden. Como punto de partida está bien. Mi problema es que esa lista se copia de un sitio a otro sin mirar los datos.
Pensemos en una polera negra talla M. Con filtros de color, talla, marca y precio, esa misma polera puede terminar con 80 URLs distintas. El rastreador puede pasar el día recorriendo "polera-negra-talla-m-ordenada-por-precio" mientras los productos nuevos, los que sí venden, esperan su turno. Eso además genera contenido duplicado a escala.
Por eso, cuando auditamos un sitio enterprise, partimos por los logs del servidor y no por la plantilla del robots.txt:
- Tomamos 30 días de logs y filtramos las visitas reales de Googlebot.
- Agrupamos las URLs por tipo de plantilla: fichas, categorías, filtros, parámetros, paginación y búsqueda interna.
- Calculamos qué parte del rastreo se va a cada grupo.
Un ejemplo ilustrativo: un sitio con 1.000.000 de visitas de rastreo al mes, donde el 38% termina en filtros y parámetros que nadie quiere indexar. Ese número cambia la conversación, porque el problema pasa a ser qué estás dejando rastrear.
Antes de bloquear, una advertencia: algunos filtros tienen búsquedas propias ("zapatillas running mujer", por ejemplo) y esas URLs merecen ser páginas indexables. Bloquear todos los parámetros de un plumazo puede dejarte sin las landings que te traen ventas. Primero se separan los filtros con demanda de los que solo generan contenido duplicado, y después se escriben las reglas del archivo robots.txt.
¿El robots.txt sirve para que una página no aparezca en Google?
No, y es probablemente el malentendido más caro del tema. Google lo dice en su propia documentación: el robots.txt no es un mecanismo para mantener una página fuera de sus resultados de búsqueda. Si una URL bloqueada recibe enlaces desde otros sitios web, el buscador puede mostrarla igual, solo que sin descripción.
Para que una página no aparezca tienes tres caminos:
- La etiqueta meta robots con
noindexen el<head>de la página. - El encabezado HTTP X-Robots-Tag, útil para PDFs y otros archivos que no son HTML.
- Protegerla con contraseña, que es lo único que de verdad la deja fuera del alcance de cualquiera.
Y aquí está la trampa: si bloqueas una página en el robots.txt y además le pones noindex, Google nunca va a ver ese noindex, porque no puede rastrear la página para leerlo. El orden correcto es dejar que el bot entre, vea la etiqueta y saque la página del índice; recién después, si quieres ahorrar rastreo, la bloqueas. Si quieres profundizar en estados de indexación, en cómo indexar una página en Google está el detalle de cada uno.
¿Cómo se usa el robots.txt con los bots de IA?
Hasta hace poco, configurar rastreadores era casi solo una decisión de SEO: a quién dejamos entrar para que encuentre nuestras páginas. Ahora hay bots que buscan contenido para citarlo, bots que lo usan para entrenar modelos y agentes que lo visitan a pedido de un usuario. Y cada empresa los separa a su manera.
| Bot | De quién | Para qué | Si lo bloqueas en robots.txt |
|---|---|---|---|
| Googlebot | Búsqueda | Desapareces de la búsqueda | |
| Google-Extended | Entrenar Gemini y grounding en Gemini Apps y Vertex AI | No afecta tu inclusión ni tu ranking en la búsqueda, según su documentación | |
| GPTBot | OpenAI | Entrenar modelos | Tu contenido no se usa para entrenar |
| OAI-SearchBot | OpenAI | Búsqueda de ChatGPT | No apareces en respuestas de búsqueda de ChatGPT (salvo como enlace de navegación) |
| ChatGPT-User | OpenAI | Visitas que pide un usuario en el chat | Puede no aplicar, porque la visita la inicia una persona |
Algunas precisiones con fuente. Google-Extended es un token: controla si se usa tu contenido para entrenar Gemini, pero no tiene un rastreador propio y la documentación de Google no menciona AI Overviews ni el Modo IA, así que no asumiría que bloquearlo te saca de ahí.
GPTBot es el bot de entrenamiento de OpenAI, y según su documentación sobre rastreadores cada ajuste es independiente: puedes bloquear GPTBot y dejar pasar a OAI-SearchBot para seguir apareciendo en la búsqueda de ChatGPT. OpenAI también aclara que, como ChatGPT-User responde a la pregunta de un usuario, las reglas del robots.txt pueden no aplicarse.
Mi lectura es que acá hay dos decisiones de negocio separadas. Una es si quieres que tu contenido entrene modelos. La otra es si quieres que te encuentren y te citen cuando alguien le pregunta a una IA por tu categoría. Bloquear todo lo que diga "IA" en el nombre mezcla las dos (y suele salir caro en la segunda).
Revisa también lo que pasa fuera del robots.txt. Cloudflare bloquea por defecto, desde el 15 de septiembre de 2026, los bots de entrenamiento y de agentes en las páginas con anuncios de los dominios nuevos. Y en su anuncio explica que los rastreadores multipropósito como Googlebot, Bingbot y Applebot quedan bloqueados para los clientes que eligieron bloquear el entrenamiento y no ajustaron esa opción. Si alguien en tu equipo marcó esa opción, conviene revisarla hoy.
¿Y el llms.txt? El llms.txt es una propuesta para describir las páginas importantes de un sitio a los modelos de lenguaje, más parecida a un sitemap comentado que a un archivo de permisos. Ningún bot está obligado a leerlo, y un estudio de SE Ranking no encontró que tenerlo se asocie a más citas en búsquedas con IA. Los permisos siguen viviendo en el robots.txt. Para medir si las IAs te están citando, en cómo medir la visibilidad en LLMs está el método.
¿Cómo crear y probar tu robots.txt?
Para crear el archivo robots.txt:
- Crea un archivo de texto llamado
robots.txt, en minúsculas y con codificación UTF-8 (un procesador de texto puede meter caracteres que lo rompen). - Escribe un grupo por bot, con su
User-agenty sus reglas debajo. - Súbelo al directorio raíz del host. Si tienes un subdominio, repite el proceso ahí.
- Si usas un CMS como WordPress o Shopify, el archivo suele venir generado y se edita desde el panel o con un plugin.
Para probarlo:
-
Abre el informe de robots.txt en Search Console (en Configuración). Muestra los archivos encontrados en tus 20 hosts principales, cuándo los leyó y si tienen errores. Desde ahí puedes pedir un nuevo rastreo del archivo en una urgencia. El antiguo probador ya no existe, aunque muchas guías lo sigan citando.
-
Usa la herramienta de inspección con tus 10 páginas que más venden, antes y después de publicar el cambio.
-
Revisa en el informe de páginas los estados "Bloqueada por robots.txt" e "Indexada, aunque un archivo robots.txt la haya bloqueado".
En una empresa, sumaría un paso: el archivo robots.txt debería estar en el control de versiones, con alguien de SEO revisando cada cambio, porque una sola línea puede afectar a todo el sitio.
Errores comunes en el robots.txt
Los que más veo en auditorías:
- El
Disallow: /heredado del ambiente de pruebas. El clásico de cada migración (lo vimos también en el artículo sobre vibe coding). - Bloquear CSS y JavaScript. Google necesita esos archivos para renderizar la página; si se los bloqueas, entiende peor lo que hay en ella. Revisa que ningún archivo CSS quede fuera.
- Usarlo para esconder secretos. El archivo robots.txt es público, así que listar
/admin-secreto/es avisarle a todo el mundo dónde mirar. - Bloquear y poner noindex a la vez. Se anulan, como vimos más arriba.
- Confundir mayúsculas.
/Productos/y/productos/son rutas distintas. - Ponerlo en una subcarpeta. Fuera del directorio raíz, ningún bot de los motores de búsqueda lo va a encontrar.
Qué revisaría esta semana
Si tienes media hora, abre el robots.txt de tu sitio web (tusitio.com/robots.txt) y léelo de principio a fin. Busca un Disallow: / suelto, reglas que toquen CSS o páginas que venden, y si hay bloqueos de bots de IA, pregúntate cuál de las dos decisiones tomaron (entrenar o citar). Después mira la configuración de bots en tu CDN, porque ahí también se decide quién entra. Es una revisión gratis y es mucho más fome descubrir el problema por la caída del tráfico.