Como escribir un archivo robots.txt que realmente funcione

robots.txt es uno de los archivos mas malentendidos de la web. Aprenda la sintaxis correcta, los errores comunes, que respetan realmente los motores de busqueda y que ignoran.

Que hace robots.txt (y que no hace)

robots.txt es un archivo de texto colocado en la raiz de su sitio web (https://example.com/robots.txt) que indica a los rastreadores de motores de busqueda que paginas o directorios deben o no deben visitar.

Es un protocolo de cortesia, no una medida de seguridad. Limitaciones clave:

  • robots.txt solo se aplica a los rastreadores que eligen respetarlo (todos los motores de busqueda importantes lo hacen; los scrapers maliciosos no)
  • Bloquear una URL en robots.txt no impide que Google la indexe si otros sitios enlazan a ella
  • No puede proteger contenido privado, use autenticacion para eso
  • Los errores de sintaxis rompen las reglas silenciosamente; un caracter mal colocado puede bloquear todo su sitio

La sintaxis basica

Un archivo robots.txt consiste en registros, cada uno especificando un agente de usuario y directivas:

User-agent: *
Disallow: /private/
Allow: /public/

User-agent: Googlebot
Disallow: /staging/

Sitemap: https://example.com/sitemap.xml

User-agent:, a que rastreador se aplican las siguientes directivas. * significa todos los rastreadores.

Disallow:, rutas que el rastreador no debe visitar. Un Disallow: vacio significa "no denegar nada" (permitir todo).

Allow:, permite explicitamente una ruta que de otro modo estaria bloqueada por una regla Disallow: mas amplia.

Sitemap:, opcional, indica a los rastreadores donde encontrar su sitemap XML.

Reglas importantes

La coincidencia de rutas es por prefijo

Disallow: /private/ bloquea cualquier URL que comience con /private/, incluyendo /private/pagina.html, /private/imagenes/, etc.

Disallow: / bloquea todo el sitio. Es la sintaxis correcta para bloquear todos los rastreadores, pero se aplica a todo.

Comodines

* en una ruta Disallow: coincide con cualquier secuencia de caracteres:

  • Disallow: /*.pdf$, bloquea todos los PDFs ($ ancla el final de la URL)
  • Disallow: /search?, bloquea todas las URLs de resultados de busqueda

Errores comunes

Bloquear CSS y JavaScript

Disallow: /assets/

Si sus archivos CSS y JavaScript estan en /assets/, bloquearlos impide que Googlebot renderice su pagina correctamente.

Confundir Disallow: con noindex

Disallow: detiene el rastreo. noindex (en un encabezado HTTP o etiqueta meta) detiene la indexacion. Son cosas diferentes.

Disallow vacio = Permitir todo

User-agent: *
Disallow:

Esto significa "no denegar nada", permite a todos los rastreadores acceder a todo.

Sensibilidad a mayusculas y minusculas

Las URLs en robots.txt distinguen mayusculas de minusculas. Disallow: /Privado/ no bloquea /privado/.

Un robots.txt minimo correcto

Para un sitio web estandar sin paginas que ocultar:

User-agent: *
Disallow:

Sitemap: https://example.com/sitemap.xml

Esto permite explicitamente a todos los rastreadores y los apunta a su sitemap.

Validar su robots.txt

Use el verificador de robots.txt de Google Search Console para validar su archivo. El generador de robots.txt de este sitio construye un robots.txt valido a partir de una interfaz de formulario.

Resumen

robots.txt usa directivas User-agent:, Disallow: y Allow: para guiar (no imponer) el comportamiento de los rastreadores. Los errores comunes incluyen bloquear activos, confundir disallow con noindex y usar rutas con comodines incorrectamente. Siempre validar antes de desplegar.