¿Confías ciegamente en que Google respeta tu robots.txt? Error. He visto casos donde Google ignoraba alegremente las directivas y rastreaba contenido que explícitamente le habíamos prohibido.
A veces nos confiamos y configuramos robots.txt perfecto, el cliente se queda tranquilo, y a las dos semanas vemos en los logs que Googlebot sigue rastreando exactamente lo que le dijimos que no tocara.
El robots.txt es una sugerencia educada, no una ley. Google puede decidir ignorarlo si considera que hay razones válidas. Los logs del servidor son la única forma de saber si realmente te está haciendo caso.
Hoy vamos a comparar lo que dice tu robots.txt con lo que realmente hace Google según tus logs. Te enseño a pillar a Google con las manos en la masa cuando desobedece tus directivas.
📃 Documentación oficial de Google sobre robots.txt

La verdad sobre robots.txt que nadie te cuenta
Primero, desmitifiquemos el robots.txt. No es un muro infranqueable. Es más bien una señal de «por favor, no entres», pero Google puede entrar si quiere, de hecho cualquier otro crawler (malicioso) se lo saltará alegremente.
Cuándo Google ignora tu robots.txt:
- Detecta contenido duplicado masivo y quiere verificar si realmente es spam
- Encuentra enlaces externos apuntando a páginas que bloqueaste
- Sospecha de contenido malicioso que podría afectar a los usuarios
- Hay errores de sintaxis en tu robots.txt que lo vuelven inválido
El método para pillar a Google desobedeciendo
💡Veremos los ejemplos con el comando GREP (de Linux), puedes usar el similar en Windows findstr o herramientas online como esta, o descargar alguna más potente como powegrep.
Paso 1: Mapea tus directivas (5 minutos)
Antes de revisar logs, necesitas tener claro qué le estás pidiendo a Google:
# Ejemplo de robots.txt típico
User-agent: *
Disallow: /admin/
Disallow: /wp-content/plugins/
Disallow: /*?*utm_
Disallow: /buscar/
Allow: /wp-content/uploads/
Sitemap: https://tudominio.com/sitemap.xml
Haz una lista mental:
- ✅ Permitido:
/wp-content/uploads/
, contenido general - ❌ Prohibido:
/admin/
,/wp-content/plugins/
, parámetros UTM, búsquedas
💡 Puedes probar nuestra herramienta de checker robots tool
Paso 2: Filtra logs por Googlebot (2 minutos)
grep "Googlebot" access.log > googlebot_activity.log
O busca «Googlebot» en tu editor de texto favorito si no usas terminal.
💡 Puedes probar nuestra herramienta de analizador de logs
Paso 3: Busca violaciones directas (5 minutos)
Ahora viene lo divertido. Busca en los logs de Googlebot las rutas que prohibiste:
Para buscar violaciones de /admin/
:
Busca: "GET /admin/" + "Googlebot"
Para buscar violaciones de parámetros UTM:
Busca: "utm_" + "Googlebot"
Si encuentras coincidencias, Google está desobedeciendo.
Paso 4: Analiza la frecuencia (5 minutos)
No te alarmes si ves 1-2 violaciones esporádicas. Preocúpate si:
- Google rastrea diariamente URLs bloqueadas
- El volumen de violaciones es superior al 10% del rastreo total
- Rastrea sistemáticamente el mismo tipo de contenido prohibido
Los 5 casos más comunes de desobediencia

1. Enlaces internos contradictorios
El problema: Tu robots.txt dice Disallow: /privado/
pero tienes enlaces internos a esas páginas.
En los logs verás:
"GET /privado/documento-secreto.html HTTP/1.1" 200 - "Googlebot/2.1"
Por qué pasa: Google prioriza la estructura de enlaces sobre robots.txt. Si enlazas algo, Google asume que es importante.
Solución: Elimina enlaces internos o usa nofollow
en enlaces a contenido bloqueado.
2. Sitemaps que contradicen robots.txt
El error típico: Bloqueas /categoria-privada/
en robots.txt pero la incluyes en el sitemap.
Síntoma en logs: Google rastrea esas URLs porque las encuentra en el sitemap, ignorando la prohibición.
La fix rápida: Sincroniza sitemap con robots.txt. Si está bloqueado, no va en el sitemap.
3. Sintaxis incorrecta en robots.txt
Errores que rompen todo:
# MAL - falta la barra final
Disallow: /admin
# BIEN - con barra
Disallow: /admin/
# MAL - caracteres raros
Disallow: /búsqueda/
# BIEN - sin acentos
Disallow: /busqueda/
En logs: Si tu sintaxis está rota, Google puede ignorar completamente el robots.txt.
Verificación: Usa Search Console > Configuración > robots.txt para validar sintaxis.
4. Directivas demasiado permisivas
El problema sutil:
Disallow: /admin
Esto solo bloquea /admin
exacto, no /admin/
, /admin.php
, o /admin-panel/
.
En logs verás: Google rastreando /admin/login.php
, /admin-dashboard/
, etc.
Solución: Usa wildcards correctamente:
Disallow: /admin*
5. Google detecta contenido importante bloqueado
El caso más frustrante: Bloqueas contenido que Google considera valioso para los usuarios.
Ejemplo real: Un sitio bloqueó /ofertas/
pensando que era contenido thin. Google siguió rastreando porque había enlaces externos de calidad apuntando a esas páginas.
En logs: Rastreo persistente de URLs bloqueadas que tienen autoridad externa.
Herramientas para automatizar la verificación
Opción básica: Comandos de terminal
bash
# Encuentra todas las violaciones de /admin/
grep "GET /admin/" googlebot_activity.log
# Cuenta violaciones por día
grep "GET /admin/" access.log | cut -d' ' -f4 | cut -d: -f1 | sort | uniq -c
# Busca parámetros UTM ignorados
grep "utm_" googlebot_activity.log | wc -l
Opción pro: Script Python simple
python
import re
def check_robots_violations(log_file, blocked_patterns):
violations = []
with open(log_file, 'r') as f:
for line in f:
if 'Googlebot' in line:
for pattern in blocked_patterns:
if pattern in line:
violations.append(line.strip())
return violations
# Uso
blocked = ['/admin/', '/wp-content/plugins/', 'utm_']
violations = check_robots_violations('googlebot.log', blocked)
print(f"Encontradas {len(violations)} violaciones")
Qué hacer cuando Google desobedece
Si son violaciones esporádicas (1-5 por semana)
No hagas nada. Es normal que Google pruebe ocasionalmente contenido bloqueado.
Si son violaciones sistemáticas (diarias)
1. Revisa tu robots.txt:
- Sintaxis correcta
- Directivas específicas (usa
/admin/
no/admin
) - Sin contradicciones con sitemaps
2. Elimina señales contradictorias:
- Enlaces internos a contenido bloqueado
- URLs bloqueadas en sitemaps
- Menciones en Search Console
3. Usa métodos más fuertes:
noindex
en lugar deDisallow
- Autenticación real para contenido privado
- Eliminación física de archivos innecesarios
Si Google rastrea contenido sensible
Protocolo de emergencia:
- Bloquea a nivel servidor (htaccess, configuración servidor)
- Elimina enlaces internos inmediatamente
- Usa herramientas de eliminación en Search Console
- Implementa autenticación para contenido realmente privado
El test definitivo: el experimento de 30 días
Para verificar si Google respeta tus directivas:
Semana 1: Establece baseline
- Documenta patrones actuales de rastreo
- Identifica violaciones existentes
Semana 2-3: Implementa cambios
- Corrige sintaxis robots.txt
- Elimina contradicciones
- Limpia enlaces internos
Semana 4: Mide resultados
- Compara logs antes/después
- Cuantifica reducción de violaciones
- Documenta cambios en crawl budget
Los límites del robots.txt
Robots.txt NO puede:
- Bloquear contenido ya indexado (usa
noindex
) - Impedir acceso a hackers (no es seguridad)
- Funcionar para todos los bots (algunos lo ignoran)
- Garantizar privacidad (contenido público sigue siendo público)
Robots.txt SÍ puede:
- Optimizar crawl budget
- Reducir carga del servidor
- Guiar el rastreo hacia contenido importante
- Bloquear contenido duplicado o thin
La regla de oro: verifica siempre
No importa lo perfecto que creas que es tu robots.txt. Los logs son la única fuente de verdad sobre el comportamiento real de Google.
Revisa mensualmente:
- ¿Google respeta las directivas principales?
- ¿Las violaciones están aumentando o disminuyendo?
- ¿El crawl budget se distribuye como esperas?
He visto webs perfectamente optimizadas arruinadas por un robots.txt que Google ignoraba sistemáticamente. Y al revés: webs mediocres que mejoraron drásticamente cuando sincronizaron robots.txt con el comportamiento real de Googlebot.
La pregunta que deberías hacerte: ¿Google hace lo que le pides, o hace lo que quiere?
Los logs tienen la respuesta.