Toolypet
Back to Blog
SEO

Guia Completa de Robots.txt: Controlando los Crawlers de Buscadores

Aprende a escribir el archivo robots.txt y gestionar eficazmente los crawlers de motores de busqueda.

Toolypet Team7 min read
Guia Completa de Robots.txt: Controlando los Crawlers de Buscadores

El rol y limitaciones de robots.txt

robots.txt es un archivo de texto ubicado en el directorio raiz del sitio web que guia a los crawlers de motores de busqueda sobre que paginas rastrear. Forma parte del Protocolo de Exclusion de Robots establecido en 1994, un estandar usado desde los inicios de la web.

https://example.com/robots.txt

Sin embargo, hay un punto importante que aclarar: robots.txt es una recomendacion. Los bots de motores de busqueda bien disenados lo respetan, pero los bots maliciosos o web scrapers pueden ignorarlo. Por lo tanto, robots.txt no debe usarse como herramienta de seguridad. Los datos sensibles deben protegerse con autenticacion y control de acceso.

Como los crawlers procesan robots.txt

Cuando un crawler de motor de busqueda visita un sitio web, lo primero que verifica es robots.txt. El orden de procesamiento es:

  1. Solicitar /robots.txt
  2. Si no existe el archivo -> Permitir rastreo de todas las paginas
  3. Si existe -> Rastrear segun las reglas
  4. Buscar el bloque User-agent que le aplica
  5. Aplicar la regla mas especifica

Punto importante en la coincidencia de reglas: si Allow y Disallow aplican a la misma ruta, la regla mas especifica tiene prioridad. Si tienen la misma especificidad, Allow tiene prioridad.

Guia detallada de sintaxis

Directivas basicas

User-agent: *
Disallow: /admin/
Allow: /admin/public/
Sitemap: https://example.com/sitemap.xml
Crawl-delay: 10
DirectivaDescripcionEjemplo
User-agentEspecifica crawler objetivo (* para todos los bots)User-agent: Googlebot
DisallowRuta a prohibir rastreoDisallow: /private/
AllowRuta a permitir rastreo (excepcion de Disallow)Allow: /private/open/
SitemapURL del sitemap (ruta absoluta)Sitemap: https://...
Crawl-delayIntervalo de rastreo (segundos) - solo algunos bots lo soportanCrawl-delay: 10

Comodines y marcador de fin de ruta

robots.txt soporta coincidencia de patrones limitada:

  • * - Cualquier cadena (0 o mas caracteres)
  • $ - Fin de ruta
# Bloquear todos los archivos .pdf
Disallow: /*.pdf$

# Bloquear URLs con parametros de consulta
Disallow: /*?

# Bloquear parametros especificos
Disallow: /*?sort=
Disallow: /*?filter=

# Bloquear URLs con ID de sesion
Disallow: /*sessionid

# Bloquear todos los archivos PHP en directorio especifico
Disallow: /scripts/*.php$

Nota: Los comodines solo se usan para coincidencia de rutas. No se soportan expresiones regulares.

Principales bots de motores de busqueda y AI

Es util conocer los principales bots que visitan sitios web:

Bots de motores de busqueda

User-agentServicioDescripcion
GooglebotGoogle SearchPara busqueda web
Googlebot-ImageGoogle ImagesPara busqueda de imagenes
BingbotBingBusqueda de Microsoft
YetiNaverBuscador coreano
BaiduspiderBaiduBuscador chino
DuckDuckBotDuckDuckGoBuscador de privacidad

Crawlers de AI (aumento significativo desde 2024)

User-agentServicioDescripcion
GPTBotOpenAIDatos de entrenamiento de ChatGPT
ChatGPT-UserOpenAIFuncion de navegacion de ChatGPT
CCBotCommon CrawlRecoleccion de dataset abierto
anthropic-aiAnthropicDatos de entrenamiento de Claude
Claude-WebAnthropicBusqueda web de Claude
Google-ExtendedGoogleDatos de entrenamiento de Gemini

Para bloquear crawlers de entrenamiento de AI:

# Bloquear crawlers de entrenamiento AI
User-agent: GPTBot
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Google-Extended
Disallow: /

Ejemplos practicos: Configuraciones por situacion

Permitir todo (predeterminado)

User-agent: *
Allow: /

Bloquear todo (entornos de desarrollo/staging)

User-agent: *
Disallow: /

Sitio web general

User-agent: *
Allow: /

# Area de administracion
Disallow: /admin/
Disallow: /wp-admin/
Disallow: /dashboard/

# Area personal de usuario
Disallow: /account/
Disallow: /profile/
Disallow: /my-*/

# Resultados de busqueda (evitar contenido duplicado)
Disallow: /search/
Disallow: /*?q=
Disallow: /*?s=

# Archivos temporales/desarrollo
Disallow: /tmp/
Disallow: /staging/
Disallow: /_*/

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

Sitio de comercio electronico

User-agent: *
Allow: /

# Proceso de compra (innecesario para rastreo)
Disallow: /cart/
Disallow: /checkout/
Disallow: /order/

# Cuenta de usuario
Disallow: /my-account/
Disallow: /wishlist/

# Listas de productos filtradas/ordenadas (evitar duplicados)
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*?color=
Disallow: /*?size=
Disallow: /*&

# Busqueda interna
Disallow: /search/

# Permitir bots de comparacion de precios (opcional)
User-agent: PriceSpider
Allow: /

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

Sitio de blog/medios

User-agent: *
Allow: /

# Paginas de etiqueta/categoria (opcional - si preocupa contenido duplicado)
Disallow: /tag/
Disallow: /category/page/

# Archivo de autores
Disallow: /author/

# Paginas de adjuntos
Disallow: /attachment/

# Acceso directo a archivos multimedia
Allow: /wp-content/uploads/

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

Errores comunes y soluciones

1. Omitir barra diagonal

# Incorrecto - bloquea todas las rutas que comienzan con "admin"
Disallow: admin

# Correcto - solo bloquea directorio /admin/
Disallow: /admin/

2. Error de mayusculas/minusculas

Los nombres de directivas distinguen mayusculas de minusculas:

# Incorrecto
user-agent: *
disallow: /admin/

# Correcto
User-agent: *
Disallow: /admin/

3. Problemas de renderizado por bloquear CSS/JS

Desde 2015, Google renderiza las paginas para entender el contenido. Bloquear CSS y JavaScript puede impedir que Google entienda correctamente la pagina:

# Incorrecto - bloquea recursos de renderizado
Disallow: /css/
Disallow: /js/
Disallow: *.css$
Disallow: *.js$

# Correcto - permitir recursos estaticos
Allow: /css/
Allow: /js/
Allow: /images/

4. Bloquear accidentalmente todo el sitio

# ¡Muy peligroso! Bloquea todo el sitio
User-agent: *
Disallow: /

Si despliegas esta configuracion en produccion, puedes desaparecer de los resultados de busqueda.

robots.txt vs meta robots vs X-Robots-Tag

Los tres metodos tienen diferentes usos y prioridades:

MetodoUbicacionUsoRastreoIndexacion
robots.txtDirectorio raizControl de rastreoOX
meta robotsHTML headControl de indexacionXO
X-Robots-TagCabecera HTTPRecursos no-HTMLXO

Importante: Incluso si bloqueas con robots.txt, la pagina puede aparecer en resultados de busqueda. Si otros sitios enlazan a ella, Google conocera la URL y puede mostrarla solo con la URL sin contenido.

Para eliminar completamente de los resultados de busqueda:

<!-- Agregar al head de la pagina -->
<meta name="robots" content="noindex, nofollow">

Metodos de verificacion de robots.txt

Google Search Console

  1. Acceder a Search Console
  2. Menu izquierdo "Configuracion" -> "robots.txt"
  3. Usar funcion "Prueba en vivo" para verificar si URL esta bloqueada

Verificar desde linea de comandos

# Ver contenido actual de robots.txt
curl https://example.com/robots.txt

# Simular desde perspectiva de bot especifico (requiere Python)
pip install robotexclusionrulesparser
python -c "
import robotexclusionrulesparser as rerp
rp = rerp.RobotExclusionRulesParser()
rp.fetch('https://example.com/robots.txt')
print(rp.is_allowed('Googlebot', '/admin/'))
"

Optimizacion del presupuesto de rastreo

Para sitios grandes, el "presupuesto de rastreo" (Crawl Budget) es importante. Es la cantidad de recursos de rastreo que Google asigna a un sitio. Bloquear paginas innecesarias con robots.txt permite que las paginas importantes sean rastreadas con mas frecuencia.

Paginas que desperdician presupuesto de rastreo:

  • Listas de productos filtradas/ordenadas
  • URLs con ID de sesion
  • Calendarios infinitos
  • Resultados de busqueda interna
  • Paginas de impresion

Generador de Robots.txt de Toolypet

Crea facilmente incluso robots.txt complejos:

  1. Selecciona patrones de rutas a bloquear
  2. Configura bloqueo de bots especificos
  3. Ingresa URL del sitemap
  4. Verifica con vista previa
  5. Descarga archivo completo

¡Usa correctamente robots.txt para utilizar eficientemente el presupuesto de rastreo y asegurar que tu contenido importante se muestre bien en los resultados de busqueda!

SEORobots.txtCrawlerSearch Engine