Log file analysis: que esta haciendo realmente Googlebot
Search Console muestra lo que Google quiere contarte. Los logs del servidor muestran lo que realmente hace. Esa diferencia paga el sueldo del SEO senior.
Search Console reporta 18 mil paginas rastreadas por dia. Tu log de Nginx muestra 47 mil hits de Googlebot, de los cuales 31 mil van a URLs que pensabas haber retirado en 2023. Bienvenido a la parte del SEO que nadie pone en el pitch deck. El analisis de logs es la unica fuente que muestra lo que el crawler hizo de verdad, en que orden, con que frecuencia y con que status code. El resto es narrativa. Antes de cualquier auditoria seria, dejo los dashboards bonitos y abro un .gz de 8GB en la terminal.
El punto de partida es simple: 30 dias de logs crudos, filtro por user-agent de Googlebot validado por reverse DNS (host 66.249.x.x debe resolver a googlebot.com), y agregacion por URL, status code y timestamp. Herramientas como Screaming Frog Log File Analyser aguantan hasta 5M de lineas; por encima, BigQuery o un pipeline con DuckDB sale mas barato. Si todavia no corres BigQuery + GSC: consultas que tu agencia no ejecuta junto, estas dejando la mitad de la senal en la mesa. Se complementan: GSC dice que query, el log dice que URL priorizo el bot.
El primer hallazgo suele ser incomodo. En un e-commerce que audite el mes pasado, el 62% del crawl iba a URLs con parametros de filtro (?color=azul&talla=M) que no debian existir en el indice. Eso es Crawl budget: cuando preocuparse y como medirlo quemado en paginas sin valor de busqueda. La correccion fue quirurgica: canonical apuntando a la categoria limpia, parametros en robots.txt y revision del sitemap. En 21 dias, el crawl de PDPs reales subio 34%. Nada de esto aparece en el reporte de cobertura hasta que el dano ya esta hecho.
Los status codes cuentan la historia que nadie quiere leer. Si el 12% de las requests de Googlebot devuelven 304, todo va bien - significa que tu Last-Modified funciona. Si el 8% devuelven 301, es aceptable. Por encima del 15% de redirects encadenados estas sangrando equity como discuto en Redirects 301 vs 302: impacto real en el ranking. Y cuando aparecen 5xx esporadicos correlacionados con horarios pico, el problema no es SEO, es infra - pero el impacto pega en ranking dos semanas despues. Grafica status code por hora y los patrones saltan.
La frecuencia de crawl por tipo de pagina es la senal mas subutilizada. Categorias rastreadas cada 6 horas, PDPs cada 3 dias, posts de blog cada 11 dias - ese delta importa. Si un cluster que consideras estrategico esta siendo visitado una vez al mes, tienes problema de Interlinking inteligente: el mapa de autoridad interna y probablemente de Topical authority: como construir clusters que rankean. Cruzarlo con Content decay: como identificar posts que estan perdiendo trafico revela que URLs perdieron atencion del bot antes de perder trafico, lo que da una ventana de 30-60 dias para actuar.
Tres queries que corro en todo proyecto nuevo. Primera: top 100 URLs por hits de Googlebot que devuelven 404 - solo eso ya paga la consultoria. Segunda: URLs en el sitemap que no recibieron crawl en 60 dias - candidatas a poda o reescritura segun Reescribir o rehacer: la decision basada en datos de SERP. Tercera: URLs con crawl alto pero cero impresiones en GSC - casi siempre paginas tecnicas filtrando autoridad. Documenta, prioriza por impacto estimado, y ataca en sprints de dos semanas. Nada de planilla de 400 lineas que nadie ejecuta.
Takeaway practico: agenda una extraccion mensual de logs, manten un historial de 13 meses (para comparar year-over-year sin ruido estacional), y crea alertas para tres metricas - tasa de 5xx de Googlebot por encima de 2%, caida de 20% en hits hacia URLs estrategicas, y aparicion de nuevos clusters de URLs no deseadas en el top 50 de crawl. El analisis de logs no es un proyecto puntual, es instrumentacion continua. Quien lo trata como auditoria anual descubre el problema seis meses despues de que el trafico cae.