Presupuesto de rastreo: guía práctica para plataformas grandes

Cómo diagnosticar el presupuesto de rastreo en un sitio grande con logs, Search Console y patrones de URL, y después reducir el desperdicio sin bloquear las páginas importantes.

El presupuesto de rastreo (crawl budget) es el número de páginas que Googlebot está dispuesto a rastrear en tu sitio durante un periodo determinado. En sitios pequeños es prácticamente ilimitado. En plataformas con millones de URL se convierte en un recurso estratégico: el bot lo gasta en filtros, paginación, plantillas vacías y páginas de staging en lugar de rastrear el contenido prioritario. El resultado son retrasos en la indexación de productos nuevos, una cobertura débil del catálogo y pérdida de posiciones.

Adónde va el presupuesto de rastreo: las páginas valiosas compiten con los filtros, los parámetros UTM y la paginación por la atención del bot.
Google distingue oficialmente dos conceptos: el límite de frecuencia de rastreo (crawl rate limit), es decir, con qué frecuencia puede visitar el bot sin sobrecargar el servidor, y la demanda de rastreo (crawl demand), o cuántas páginas quiere rastrear Google según su valor percibido. El presupuesto de rastreo es la intersección de esos dos factores. La optimización tiene impacto real sobre todo en plataformas grandes.
5–10×

Exceso de rastreo

Proporción típica entre URL rastreadas y páginas realmente valiosas en un e-commerce sin optimizar

60–80 %

Perdido en duplicados

Parte del presupuesto que consumen las URL con parámetros y la paginación cuando no hay ninguna medida aplicada

2–4 semanas

Retraso de indexación

Retraso típico hasta que un SKU nuevo aparece en el índice cuando el presupuesto está saturado

>50k

Umbral de problema

Las plataformas con más de 50 000 URL ya notan los efectos de las limitaciones del presupuesto de rastreo

Paso 1: recopilar y analizar los logs del rastreador

Los logs del servidor web son la fuente principal de verdad sobre lo que Googlebot rastrea de verdad. El análisis de logs muestra la frecuencia real de las peticiones, qué secciones ignora el bot o en cuáles se atasca, y qué respuestas HTTP devuelve el servidor. Sin logs, cualquier optimización es una suposición.

Cómo extraer las peticiones de Googlebot de Nginx o Apache

bash
# Filter only Googlebot requests from the last 7 days
grep 'Googlebot' /var/log/nginx/access.log \
  | awk '{print $7}' \
  | sort | uniq -c | sort -rn \
  | head -50

# HTTP status codes seen by Googlebot
grep 'Googlebot' /var/log/nginx/access.log \
  | awk '{print $9}' \
  | sort | uniq -c | sort -rn

# Top URLs returning 404 to Googlebot
grep 'Googlebot' /var/log/nginx/access.log \
  | awk '$9 == "404" {print $7}' \
  | sort | uniq -c | sort -rn | head -30

Para analizar en detalle grandes volúmenes de logs, usa herramientas especializadas: Screaming Frog Log File Analyser, Semrush Log Analyser o una pila ELK (Elasticsearch + Kibana). Agrupan las URL por patrón de forma automática y dibujan la frecuencia de rastreo a lo largo del tiempo.

MétricaQué muestraRango objetivo
Frecuencia de rastreo (peticiones/día)Intensidad de rastreo: cuántas páginas pide Googlebot al díaDepende de la plataforma; vigila la tendencia
Páginas rastreadas al díaURL únicas rastreadas al día: el KPI principal del presupuestoDebería subir tras la optimización
Proporción de 200 / (301+302) / 404 / 500Peso de cada tipo de respuesta HTTP entre todas las peticiones del bot200 > 90 %; 404 < 5 %; 500 ≈ 0 %
% de URL duplicadas en el rastreoProporción de URL con parámetros y duplicadas en el logMenos del 15 % tras la optimización
Páginas nuevas / total rastreadoRelación entre los primeros rastreos y las visitas repetidasBusca aumentar la proporción de páginas nuevas

Paso 2: Google Search Console y análisis de las respuestas del servidor

Google Search Console ofrece datos de rastreo agregados sin necesidad de acceso a los logs del servidor. El informe Estadísticas de rastreo (Crawl Stats) es el punto de partida. Muestra el número medio de peticiones diarias, la velocidad de carga de las páginas según la percibe Googlebot y la distribución de los códigos de respuesta.

  • GSC → Configuración → Estadísticas de rastreo: gráfico de peticiones de rastreo, desglose por tipo de archivo y código de respuesta. Busca picos de 404 o 500 y caídas después de los despliegues.
  • GSC → Indexación → Páginas: número de URL indexadas frente a los motivos de no indexación. «Detectada, actualmente sin indexar» es una señal directa de presupuesto de rastreo escaso.
  • GSC → Inspección de URL: comprobación manual del estado de una página concreta: cuándo se rastreó por última vez y qué vio Googlebot.
  • GSC → Configuración → Frecuencia de rastreo: puedes limitar la frecuencia si el bot sobrecarga el servidor. Normalmente no hace falta; limítala solo si tienes problemas de rendimiento medibles.
«Detectada, actualmente sin indexar» en GSC es la señal más directa de escasez de presupuesto de rastreo. Google sabe que las páginas existen (las encontró por enlaces o en el sitemap), pero no llega a rastrearlas a tiempo. La prioridad inmediata es liberar presupuesto retirando del rastreo las URL basura.

Fuentes de desperdicio del presupuesto de rastreo

En una plataforma grande el bot pierde presupuesto por seis fuentes típicas. Identifica cada una en tus logs y estima su volumen: así sabrás en qué orden optimizar.

Comparación del reparto del presupuesto de rastreo con y sin desperdicio.

URL con parámetros

?sort=price&filter=red&page=3 genera un número exponencial de URL únicas con contenido idéntico o casi idéntico.

Paginación infinita

/catalog?page=N: miles de URL con valor decreciente. El bot puede rastrear sin fin las páginas antiguas del catálogo.

Contenido duplicado

Páginas idénticas en URL distintas: /category/ y /category?utm_source=email, HTTP y HTTPS, www y sin www.

Páginas temporales

Landings de webinars, maquetas de demo, ?preview=1 y borradores: aparecen y desaparecen, pero el bot sigue gastando presupuesto en ellos.

Plantillas vacías

Categorías sin productos, perfiles sin contenido, páginas de etiquetas generadas automáticamente: contenido de baja calidad producido por miles.

Parámetros de sesión

?sessionid=abc123, ?token=xyz: URL únicas por sesión. Para el bot, cada una es una «página nueva».

Parámetros de URL y duplicados: cómo corregirlos

Las URL con parámetros son la mayor fuente de desperdicio en plataformas de e-commerce. No hay una solución única: la correcta depende de la naturaleza del parámetro.

Tipo de parámetroEjemploAcción recomendada
Ordenación?sort=price_ascDisallow en robots.txt o canonical a la página sin parámetro
Filtros sin contenido único?color=red&size=XLCanonical a la página de categoría limpia + noindex mediante meta robots
Paginación?page=5Canonical de las páginas 2 y siguientes a la página 1 (o Disallow para paginación profunda)
Seguimiento / UTM?utm_source=emailCanonical a la URL sin UTM en cada página, o gestión de parámetros en GSC
Sesiones / tokens?sessionid=abcDisallow: /*?sessionid= en robots.txt; corregir la generación de URL en el código
Vista previa / borrador?preview=1&draft=trueDisallow: /*?preview= y /*?draft= en robots.txt
Ejemplo de configuración para canonicalizar parámetros de URL:
text
# robots.txt — blocking parametric URLs
User-agent: *

# Sort and filter parameters
Disallow: /*?sort=
Disallow: /*?order=
Disallow: /*?filter=
Disallow: /*?color=
Disallow: /*?size=

# Pagination deeper than page 3 (Allow/Disallow approach)
Disallow: /*?page=
Allow: /*?page=1
Allow: /*?page=2
Allow: /*?page=3

# Session and tracking parameters
Disallow: /*?sessionid=
Disallow: /*?token=
Disallow: /*?ref=
Disallow: /*?utm_

# Preview and drafts
Disallow: /*?preview=
Disallow: /*?draft=
Para parámetros con contenido parcialmente único (por ejemplo, un filtro por marca con una descripción propia de la marca), canonical es mejor que Disallow: el bot puede visitar la página, leer el canonical y pasar autoridad de enlace a la página principal. Disallow excluye por completo la página del rastreo y, potencialmente, del índice.

Filtros, facetas y paginación

La navegación por facetas es el caso más complejo. Genera una explosión combinatoria de URL: 10 filtros con 5 valores cada uno pueden dar más de un millón de combinaciones. El objetivo es conservar las facetas valiosas (marca + categoría) y bloquear las combinaciones inútiles.

  1. Identifica las facetas valiosas: páginas con mucho tráfico orgánico o contenido SEO propio (por ejemplo, /catalog/nike/ con texto específico de la marca). Mantenlas en el índice con un canonical que apunte a sí misma.
  2. Añade noindex + follow a las combinaciones de poco valor: la página se renderiza (sus enlaces se siguen), pero no entra en el índice. Usa <meta name="robots" content="noindex, follow"> en la plantilla cuando haya más de una faceta activa.
  3. Bloquea con Disallow los parámetros puramente técnicos: ordenación, color y talla. Si no aportan valor SEO, bloquéalos en robots.txt.
  4. Facetas cargadas por AJAX: si las facetas se cargan con JavaScript sin reflejarse en la URL, el bot no ve URL adicionales. Así se resuelve el problema a nivel de arquitectura.

Paginación: canonical frente a Disallow

La estrategia de paginación óptima depende de la escala: hasta 10 páginas, permite el rastreo y añade un canonical que apunte a la página 1 en las páginas 2 y siguientes. Con cientos de páginas de paginación, usa Disallow a partir de la página 3–5. El scroll infinito sin parámetros en la URL lo trata el bot como una sola página, y eso es bueno para el presupuesto.

Páginas temporales: webinars, maquetas y demos

Las páginas temporales son una fuga oculta de presupuesto en plataformas con equipos de marketing activos. Landings de webinars, maquetas de demo, páginas de vista previa para clientes y variantes de tests A/B aparecen rápido y a menudo se quedan para siempre, gastando presupuesto de rastreo sin que nadie lo note.

  • meta robots noindex: añade <meta name="robots" content="noindex, nofollow"> a la plantilla de todas las páginas temporales. El bot la visita, lee la directiva y excluye la URL del índice. Es el método más sencillo si tienes acceso a la plantilla.
  • Cabecera HTTP X-Robots-Tag: si las páginas temporales no tienen plantilla HTML propia (por ejemplo, PDF o archivos generados), usa la cabecera de respuesta HTTP: X-Robots-Tag: noindex, nofollow.
  • Disallow por prefijo de ruta: si las páginas temporales viven en prefijos de ruta previsibles, bloquéalas en robots.txt. No garantiza que salgan del índice si la URL ya está indexada, pero las URL nuevas dejarán de rastrearse.
  • Autenticación HTTP: en páginas de staging y de vista previa, es el único método fiable de aislamiento total. Googlebot no tiene credenciales y no rastreará la página.
Ejemplo de marcado noindex en la etiqueta y en la cabecera HTTP:
text
# robots.txt — patterns for temporary pages
User-agent: *

# Webinars and events
Disallow: /webinars/
Disallow: /events/draft-
Disallow: /landing/test-

# Mockups and previews
Disallow: /_preview/
Disallow: /mockups/
Disallow: /demo/

# A/B tests and experiments
Disallow: /*?variant=
Disallow: /*?experiment=
Disallow: /*?ab_test=

# Template preview parameters
Disallow: /*?preview=
Disallow: /*?draft=
Disallow: /*?revision=
Disallow no saca una página del índice si ya estaba indexada. Para desindexar páginas temporales que ya aparecen en el índice, usa noindex (el bot debe poder acceder para leer la directiva). Cuando la página desaparezca del índice, aplica Disallow o configura la autenticación HTTP.

Índice de sitemaps a gran escala

Con millones de URL, un único sitemap XML no es práctico: está limitado a 50 000 URL y 50 MB. Un Sitemap Index es un archivo de índice que apunta a sitemaps hijos. Permite estructurar prioridades y dirigir el presupuesto allí donde más hace falta.

xml
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <!-- Priority sections — crawled first -->
  <sitemap>
    <loc>https://example.com/sitemap-products.xml</loc>
    <lastmod>2026-05-15</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://example.com/sitemap-categories.xml</loc>
    <lastmod>2026-05-15</lastmod>
  </sitemap>
  <!-- Lower-priority sections -->
  <sitemap>
    <loc>https://example.com/sitemap-blog.xml</loc>
    <lastmod>2026-05-10</lastmod>
  </sitemap>
  <!-- Do NOT include noindex pages or duplicates! -->
</sitemapindex>
Recomendaciones para la estructura del índice de sitemaps:
  • Separa los sitemaps por tipo de contenido: productos, categorías, blog y páginas estáticas, cada uno en su archivo. Así puedes ver en GSC las estadísticas de cada sección por separado.
  • Mantén honesto el lastmod: lastmod indica al bot lo reciente que es el contenido. Pon la fecha del último cambio real, no la de hoy; si no, el bot dejará de fiarse de esa señal.
  • Excluye las URL bloqueadas: las páginas con noindex o Disallow no deben aparecer en el sitemap, porque mandan señales contradictorias al bot.
  • Límite de cada sitemap hijo: cada archivo hijo admite como máximo 50 000 URL o 50 MB (comprimido). Si lo superas, divídelo en partes: sitemap-products-1.xml, sitemap-products-2.xml.
Recomendaciones para la estructura del índice de sitemaps:

Configuración del servidor y limitación de tasa (rate limiting)

El servidor afecta al presupuesto de rastreo en ambos sentidos: las respuestas lentas obligan a Googlebot a reducir la intensidad de rastreo, y los errores 5xx hacen que el bot espere y malgaste tiempo en reintentos. Optimizar el servidor mejora directamente la eficiencia del rastreo.

Código HTTPCómo lo interpreta GooglebotAcción recomendada
200 OKLa página existe; el bot la rastrea e indexaLo normal en las páginas públicas
301/302Redirección: el bot la sigue y gasta presupuesto en ambas URLMinimiza las cadenas de redirecciones; corrige los enlaces rotos
404 Not FoundLa página no existe; el bot deja de rastrear esa URLAceptable en páginas eliminadas; más del 5 % de 404 en los logs de Googlebot es un problema
429 Too Many RequestsLimitación temporal: el bot reduce la frecuencia de rastreoÚsalo solo con carga real del servidor; Googlebot respeta el 429
503 Service UnavailableNo disponibilidad temporal: el bot volverá más tardeRespuesta correcta durante el mantenimiento; no abuses de ella
500 Server ErrorError del servidor: el bot reintenta y gasta presupuestoElimina las causas de los 500; cada 5xx es presupuesto perdido
Ejemplo de configuración de Nginx para gestionar el rastreo:
nginx
# Nginx: return 429 when any crawler sends too many requests
limit_req_zone $http_user_agent zone=crawlers:10m rate=10r/s;

location / {
    limit_req zone=crawlers burst=20 nodelay;
    limit_req_status 429;
    # ... other settings
}
Ejemplo de configuración de Nginx para gestionar el rastreo:
Para controlar la frecuencia de rastreo de Googlebot, usa GSC → Configuración → Frecuencia de rastreo, no Crawl-delay en robots.txt: Google ignora oficialmente Crawl-delay. Crawl-delay sí funciona con Yandex y Bing.

KPI y monitorización

El presupuesto de rastreo requiere monitorización continua: cualquier despliegue puede abrir por accidente miles de URL nuevas con parámetros. Configura un panel semanal y una revisión mensual de estas métricas.

KPI clave del presupuesto de rastreo

Valores objetivo para una plataforma grande optimizada

Proporción de 200 OK entre las peticiones de Googlebot> 90 %
Proporción de 404 entre las peticiones de Googlebot< 5 %
Proporción de URL duplicadas en el rastreo< 15 %
Páginas indexadas / páginas enviadas en el sitemap> 85 %
  • Semanal: compara las peticiones de rastreo en GSC de esta semana y de la anterior. Un pico repentino indica duplicados nuevos introducidos por un despliegue reciente.
  • Mensual: revisa en GSC → Páginas el estado «Detectada, actualmente sin indexar». Si crece sin que cambie el tamaño del sitio, hay un problema de presupuesto de rastreo.
  • Tras cada despliegue importante: rastrea el sitio con Screaming Frog y comprueba el número de URL únicas. Compáralo con la captura anterior.
  • Trimestral: análisis completo de logs de 30 días. Busca nuevos patrones de URL con parámetros que genere el código actualizado.
  • Alertas: configura una notificación si las respuestas 5xx superan el 1 % de todas las peticiones de Googlebot en un mismo día.

Mejoras rápidas y hoja de ruta

Optimizar el presupuesto de rastreo no es una tarea puntual, es un proceso. Divide el trabajo en mejoras rápidas (efecto en 1–2 semanas) y cambios sistémicos (de 1 a 3 meses).

Semana 1Bloquear páginas temporales y parámetros de vista previa

Añade noindex a las plantillas de webinars, maquetas y demos. Añade Disallow para ?preview= y ?draft= en robots.txt.

Semana 2Disallow para parámetros de seguimiento y sesiones

?utm_, ?sessionid= y ?ref= a robots.txt. Canonical para las versiones con UTM en todas las plantillas.

Mes 1Optimización del índice de sitemaps

Divide en sitemaps temáticos. Quita del sitemap las páginas con noindex. Añade un lastmod honesto.

Meses 1–2Canonical y noindex para las facetas

Identifica las combinaciones de facetas valiosas y las inútiles. Aplica noindex + follow a las combinaciones de poco valor.

Meses 2–3Optimización de las respuestas del servidor

Elimina las cadenas de redirecciones. Reduce los 404 según los logs. Optimiza el TTFB de las secciones rastreadas.

ContinuoMonitorización y revisión periódica

Panel de GSC, alertas de 5xx y análisis trimestral de logs. Revisa tras cada despliegue importante.

Lista de mejoras rápidas

  • noindex añadido a todas las plantillas de páginas temporales (webinars, maquetas, demos)
  • Disallow para ?preview=, ?draft=, ?sessionid=, ?utm_ en robots.txt
  • Canonical a URL limpias en todas las páginas con parámetros (ordenación, paginación desde la página 2)
  • Páginas con noindex y Disallow eliminadas del sitemap
  • Índice de sitemaps dividido por sección, con lastmod correcto
  • Cadenas de redirecciones reducidas a un único salto
  • 404 en los logs de Googlebot por debajo del 5 %: enlaces muertos eliminados
  • Panel de monitorización semanal configurado en GSC

Preguntas frecuentes

¿A partir de qué tamaño de sitio empieza a importar el presupuesto de rastreo?
Google recomienda prestar atención cuando el sitio supera el millón de URL. En la práctica, los problemas aparecen antes: entre 50 000 y 100 000 URL con generación activa de páginas con parámetros. Si en GSC crece el número de «Detectada, actualmente sin indexar», toca hacer una auditoría sin importar el tamaño del sitio.
¿Qué pesa más para el rastreo: el sitemap o los enlaces internos?
Los dos importan y se complementan. El sitemap asegura que el bot conozca la existencia de las páginas. Los enlaces internos transmiten PageRank y señalan la importancia relativa. Una página sin enlaces internos y solo con una entrada en el sitemap se rastreará con menos frecuencia que una con cientos de enlaces internos.
¿Ayuda un CDN al presupuesto de rastreo?
Sí, de forma indirecta. Un CDN acelera las respuestas del servidor, lo que permite a Googlebot rastrear más páginas por unidad de tiempo con el mismo límite de frecuencia. Un TTFB rápido es uno de los factores que influyen en la intensidad del rastreo.
¿Cómo afecta canonical al presupuesto de rastreo?
El canonical no bloquea el rastreo de la página: el bot puede seguir visitándola. Pero tras leer el canonical, el bot entiende que la página es un duplicado y reduce la frecuencia de sus nuevos rastreos. El canonical resuelve el problema de duplicados en la indexación, pero no resuelve del todo el problema del rastreo: para eso son más eficaces Disallow o noindex.
¿Puedo acelerar la indexación de páginas nuevas después de optimizar el presupuesto?
Sí. Tras liberar presupuesto, actualiza el sitemap con un lastmod correcto para las páginas nuevas. Usa la Indexing API de Google para enviar URL directamente (oficialmente, para contenido de noticias y ofertas de empleo, aunque en la práctica también ayuda con otros tipos de contenido). Crea enlaces internos desde las secciones con autoridad hacia las páginas nuevas.

Check it with SpiderHead

Free and local: run the audit on your own machine.

Try it