Cómo medir los rastreadores y los buscadores IA en nuestro sitio web: KPIs importantes

Escrito por:

Guía técnica para identificar bots IA (search vs training), medir coste, frescura y control, crear alertas y ajustar robots.txt/WAF sin romper visibilidad.
Los rastreadores y buscadores IA ya forman parte del tráfico de muchas webs. En esta guía verás cómo identificarlos con fiabilidad, qué KPIs medir (coste, calidad, frescura, control y visibilidad) y cómo convertir esos datos en decisiones operativas con robots.txt, WAF y dashboards.

Contenido

Qué son los rastreadores y los buscadores IA y por qué deberías medirlos

Ya no basta con preguntarse “¿Google me indexa bien?”. La pregunta práctica es doble: ¿qué agentes IA están accediendo a mi web? y ¿con qué propósito? Porque de esa respuesta salen decisiones de coste, seguridad, visibilidad y control editorial.

⚫ Idea clave: un “bot IA” no es un único actor. Hay agentes que rastrean para recopilar contenido (p. ej., entrenamiento) y agentes que rastrean/recuperan para alimentar resultados de búsqueda o respuestas. Cada uno deja señales distintas en tus logs y exige KPIs distintos.

El cambio de paradigma: de “ser indexado” a “ser usado por sistemas IA”

Históricamente medíamos indexación y posicionamiento. Con la llegada de experiencias de búsqueda con IA (y asistentes que citan y enlazan), aparece una capa previa: la relación entre tu contenido y los agentes que lo consumen.

Por ejemplo, OpenAI describe el uso de crawlers con distintos objetivos y ofrece tokens de robots.txt para gestionarlos (como GPTBot y OAI-SearchBot). Esto ya te está diciendo que “IA” no es una sola cosa, y que tu política de acceso puede (y debe) ser granular.

En paralelo, Google explica que Google-Extended funciona como un token de control en robots.txt (sin un user-agent HTTP separado), lo que obliga a medir de forma distinta: no siempre podrás “ver” a Google-Extended como una firma única en tus logs.

Y Apple detalla que Applebot alimenta varias experiencias de búsqueda dentro del ecosistema Apple (Spotlight, Siri, Safari), lo cual refuerza la idea de que “visibilidad” ya no significa lo mismo según el canal.

Rastreadores IA vs buscadores IA: una taxonomía operativa (para poder medir)

Para construir KPIs útiles, te conviene separar el fenómeno en al menos estas tres categorías medible:

Tipo de agente Objetivo típico Señales medibles en tu web Riesgo principal
Rastreador de recopilación (p. ej., para entrenamiento) Extraer y procesar contenido a escala Ráfagas de URLs, patrones repetitivos, alto volumen, impacto en ancho de banda Coste + scraping + exposición de contenido
Rastreador para búsqueda IA (descubrimiento / indexación “para respuestas”) Poder citar, enlazar y resumir en experiencias de búsqueda IA Acceso recurrente a contenidos “citables”, preferencia por páginas públicas y legibles Pérdida de visibilidad si lo bloqueas sin querer
Navegación bajo demanda (fetch triggered por usuario/producto) Resolver una consulta puntual, validar una fuente o extraer un fragmento Requests “espiga” en tiempos concretos, rutas específicas, variabilidad alta Difícil atribución + picos de coste si no hay límites

Qué decisiones reales permite tomar una medición bien montada

Medir “bots IA” no va de curiosidad: va de control. Cuando instrumentas y construyes KPIs, puedes responder con datos a preguntas como:

  • Coste: ¿qué bot (o familia de bots) me está generando más impacto en origin, CPU o ancho de banda?
  • Riesgo: ¿hay crawling encubierto que imita user-agents? ¿están accediendo a rutas sensibles?
  • Política: ¿mis reglas de robots.txt y WAF/CDN se están cumpliendo y son efectivas?
  • Visibilidad: ¿estoy bloqueando sin querer agentes que ayudan a que mi contenido sea citado/enlazado?
  • Calidad operativa: ¿mis respuestas 4xx/5xx están “empujando” a los bots a reintentar y multiplicar el tráfico?

Lo que NO es una estrategia

“Bloquear todo lo que suene a IA” sin medir: suele crear puntos ciegos (y a veces, más tráfico por reintentos).

Lo que SÍ funciona

Definir política por objetivo (entrenamiento vs búsqueda) y medir cumplimiento/impacto con KPIs y umbrales.

Nota importante: robots.txt es un estándar de exclusión voluntario. Los crawlers “respetables” suelen obedecerlo, pero no es un mecanismo de seguridad. Si necesitas garantizar que algo no se accede, la medida correcta es control de acceso real (WAF, autenticación, bloqueo a nivel servidor, etc.).

Traducción a KPIs: si no puedes “forzar” el cumplimiento, necesitas medir cumplimiento (y violaciones), además de medir impacto (coste/riesgo/visibilidad).

Tipos de agentes IA que te visitan (y por qué importa distinguirlos)

Si quieres medir rastreadores y buscadores IA con KPIs que sirvan para tomar decisiones, lo primero es evitar el “cajón desastre” de llamar bot IA a todo. En la práctica, distintos agentes llegan a tu web con objetivos distintos: unos recopilan contenido, otros indexan para experiencias de búsqueda, y otros navegan bajo demanda cuando un usuario hace una consulta.

Crawlers de entrenamiento vs crawlers de búsqueda vs navegación bajo demanda

Esta separación te permite definir KPIs coherentes y, sobre todo, políticas de acceso coherentes. Por ejemplo: puedes querer permitir bots de búsqueda (porque te generan citas/enlaces) y limitar bots de recopilación (porque te generan coste o afectan a tu propiedad intelectual).

Tipo operativo Qué intenta hacer Ejemplos típicos (no exhaustivo) KPIs que te interesan Controles habituales
Recopilación / entrenamiento Descargar contenido a escala para datasets/modelos GPTBot (OpenAI), Applebot-Extended (Apple), meta-externalagent (Meta) Volumen, URLs únicas, ancho de banda, origin hits, % cache miss, coste por bot robots.txt (si obedecen), WAF/CDN, rate limiting, bloqueo por ASN/IP, control de acceso
Búsqueda IA / indexación para respuestas Descubrir y mantener un índice para citar/enlazar OAI-SearchBot (OpenAI), PerplexityBot (Perplexity) Cobertura, frescura, % 2xx/3xx/4xx/5xx, latencia, rutas más citables, “permitido vs bloqueado” Allowlist + verificación (si publican rangos IP), robots.txt, reglas finas por rutas
Navegación bajo demanda Acceder a una URL concreta para responder a una consulta de usuario ChatGPT-User (OpenAI) u otros agentes “user-triggered” según proveedor Picos puntuales, latencia, % bloqueos por protección antibot, éxito de fetch, coste por sesión Protecciones antibot con excepciones controladas, límites por sesión, observabilidad por endpoint
“Tokens” de política (no siempre visibles) Marcar preferencias de uso del contenido (p. ej., entrenamiento/grounding) Google-Extended (token de producto) KPIs de cumplimiento indirecto (política aplicada), cambios en accesos de crawlers relacionados Gestión de robots.txt + verificación por pruebas/control de cambios

Qué señales dejan en tu infraestructura (logs, headers, patrones)

Para medir bien, necesitas señales observables. Algunas son evidentes (user-agent), pero otras son las que te salvan cuando hay falsificación o crawling encubierto (patrones de navegación, IP/ASN, distribución temporal, etc.).

  • User-Agent: útil para una primera clasificación, pero no es prueba definitiva (se puede falsificar).
  • IP/ASN + verificación: algunos operadores publican rangos IP o mecanismos para validar requests. Si existen, son tu mejor “ancla” para diferenciar bot real vs suplantación.
  • Patrón de rastreo: profundidad, repetición, prioridad por plantillas (home/categorías/fichas), y ritmo (constante vs espigas).
  • Secuencia típica: muchos bots piden /robots.txt y luego empiezan a recorrer URLs; otros saltan a URLs “profundas” (a veces por enlaces externos o sitemaps).
  • Headers y fingerprints: Accept, Accept-Language, cache-control, y coherencia de fingerprint (cuando se intenta camuflar como navegador).
  • Respuesta del servidor: un bot “persistente” reintenta más si ve 5xx/timeouts; uno “educado” reduce ritmo o cambia estrategia.

Riesgos típicos por tipo: coste, scraping, exposición de contenido, seguridad

Cuando distingues tipos, también distingues riesgos. Esto es importante porque algunos problemas se resuelven con política editorial (qué permites), otros con arquitectura (caché y límites), y otros con seguridad.

Recopilación/entrenamiento

  • Coste: ancho de banda + origin hits + CPU.
  • Propiedad intelectual: extracción masiva de contenido valioso.
  • Riesgo operacional: picos que degradan UX si no hay límites.

Búsqueda IA

  • Visibilidad: bloquear puede reducir descubrimiento/citas/enlaces.
  • Frescura: si el bot no re-visita, tu contenido “se queda viejo” en respuestas.
  • Calidad técnica: 4xx/5xx y latencias altas empeoran el comportamiento de rastreo.

Bajo demanda

  • Difícil atribución: a veces no hay referer claro o viene “mezclado”.
  • Interacción con antibot: challenges/JS pueden bloquear fetch legítimo.
  • Superficie de ataque: si “parece navegador”, es más fácil camuflar abuso.

Desconocidos / suplantación

  • Scraping encubierto: UA falsos, rotación de IPs, patrones anómalos.
  • Exfiltración: búsqueda de endpoints sensibles, parámetros y rutas “jugosas”.
  • Riesgo legal/compliance: acceso a contenido restringido o datos personales si están mal expuestos.

Consecuencia directa: si mides “bots IA” como un único número, perderás el control. Los KPIs que necesitas dependen del tipo: para unos es coste, para otros es cobertura, para otros es seguridad y para otros es visibilidad.

Mapa de bots IA más frecuentes y cómo identificarlos sin autoengañarte

En esta sección vamos a “bajar a tierra” lo importante: qué agentes IA aparecen con más frecuencia y, sobre todo, cómo identificarlos con distintos niveles de confianza. Porque si te limitas a filtrar por User-Agent, tarde o temprano medirás mal (y tomarás decisiones peores).

🔵 Modelo mental útil: clasifica cada request en tu analítica como (1) declarado, (2) verificado o (3) sospechoso.

Si no puedes verificar, al menos mide comportamiento (patrones) para detectar suplantación.

User-Agent: lo útil y lo que no (spoiler: se falsifica)

El User-Agent es una señal práctica para empezar (y para etiquetar tráfico rápidamente), pero no es una prueba. Cualquiera puede mandar GPTBot/1.3 en el header. Por eso, en tu cuadro de mando deberías separar:

  • Declarado: el request dice ser un bot conocido (por User-Agent).
  • Verificado: además, encaja con rangos IP publicados / verificación del proveedor / “verified bots” del WAF/CDN.
  • Sospechoso: declara ser bot o navegador, pero su comportamiento es anómalo (rotación agresiva de IPs, scraping “a cuchillo”, ignora robots, etc.).

⚫  Consejo operativo: en KPIs, evita el número “Total bots IA”. Ten al menos tres series: IA declarada, IA verificada y IA sospechosa.

Verificación por IP/rangos y señales de “bot verificado” (cuando existan)

La verificación sólida suele venir por una de estas vías:

  1. Rangos IP publicados por el propio proveedor (ideal para allowlist / matching CIDR).
  2. Listas gestionadas por tu WAF/CDN (p. ej., “verified bots” y categorías tipo “AI crawlers”).
  3. Heurística de comportamiento (cuando no hay rangos oficiales): patrón de rastreo, repetición, rutas objetivo, respeto (o no) a robots.txt.

⚫ Regla “anti-autoengaño”:

  • No trates “verificado” como sinónimo de “bueno”. Trátalo como “identidad confirmada”.
  • No trates “no verificado” como sinónimo de “malo”. Trátalo como “identidad incierta”.

Casos habituales: bots de OpenAI, Google, Apple, Perplexity, Anthropic y Meta

Aquí tienes un mapa práctico (no exhaustivo). La idea no es memorizarlo, sino usarlo para construir tu diccionario de agentes (regex + rangos + política) y, a partir de ahí, KPIs consistentes.

Proveedor / familia Agente / token Para qué suele usarse Qué buscar en logs Cómo subir la confianza
OpenAI OAI-SearchBot Búsqueda IA (surfaced/citas/enlaces) Subcadena OAI-SearchBot en UA Matching contra rangos IP publicados + coherencia de patrón
OpenAI GPTBot Recopilación/entrenamiento (según política) Subcadena GPTBot en UA Matching contra rangos IP publicados + volumen/cobertura
Google Google-Extended (token) Control de uso (entrenamiento/grounding) sin afectar Search No esperes un UA “Google-Extended” en HTTP Medir por cambios de comportamiento y por auditoría de robots.txt
Apple Applebot / Applebot-Extended Applebot: búsqueda. Applebot-Extended: control de uso para modelos (no “crawlea” páginas) UA estilo navegador con substring (Applebot/...); y token Applebot-Extended en robots Buscar substring correcto + validar que el patrón coincide con crawler real
Perplexity PerplexityBot Búsqueda IA (citas/enlaces en Perplexity) Subcadena PerplexityBot en UA Matching contra IPs publicadas + alertas de “stealth crawling” si aparece como navegador
Anthropic ClaudeBot, Claude-SearchBot, Claude-User Entrenamiento, búsqueda, y recuperación a petición del usuario (según bot) Subcadenas ClaudeBot / Claude-SearchBot / Claude-User Si no hay IPs oficiales: mezcla de robots.txt + comportamiento + rate limiting
Meta Crawlers de Meta (varios UA) Dependiendo del crawler: previews, scraping/uso interno, etc. Identificación por lista oficial de UA + patrón por producto Apoyarse en lista oficial + “verified bots” si tu WAF/CDN lo ofrece

Cómo identificar sin autoengañarte: método en 4 capas

Una forma robusta de operar (y de explicar KPIs al equipo) es aplicar estas capas en orden:

Capa 1 · Etiqueta rápida

Regex por UA + “familia” (entrenamiento / búsqueda / bajo demanda). Útil para dashboards en horas, no en semanas.

Capa 2 · Verificación

Matching por CIDR/IP list publicada o “verified bots”. Esto convierte “dice ser” en “es”.

Capa 3 · Comportamiento

Secuencia de rastreo, repetición, rutas, velocidad, uso de robots/sitemap, ratio de errores.

Capa 4 · Política

Aplicar allow/limit/block por objetivo y medir cumplimiento (¡KPIs de control!).

Mini-plantilla para tu “diccionario de agentes” (lo que luego alimenta KPIs)

Si quieres que esto sea mantenible, crea una tabla/JSON interno con:

  • Nombre canónico: OAI-SearchBot, GPTBot, PerplexityBot…
  • Familia: entrenamiento / búsqueda / bajo demanda.
  • Regex UA: patrón de substring.
  • Verificación: lista de CIDRs (si existe) o “verified bot provider”.
  • Política: allow / limit / block por rutas.
  • KPIs a emitir: volumen, URLs únicas, coste estimado, errores, cumplimiento, frescura.

⚫ Y un detalle muy importante:

No esperes medir todo con user-agents. Hay tokens de política (como Google-Extended) que no se manifiestan como un UA separado en HTTP, así que tu KPI aquí debe ser “auditoría de política aplicada” + “cambio observable en comportamiento”, no “número de requests con ese UA”.

Instrumentación mínima para medir rastreadores y buscadores IA en tu web

Si intentas medir rastreadores/buscadores IA solo con “lo que veo en Analytics”, te vas a frustrar: muchos bots no ejecutan JavaScript, no aceptan cookies, o ni siquiera pasan por el mismo flujo que un usuario. La medición fiable empieza en logs de infraestructura (edge/CDN/WAF/origin).

⚫ Objetivo de esta sección: que puedas responder con datos a: quién me rastrea, qué está tocando, cuánto me cuesta, si respeta mis reglas y si estoy bloqueando lo que no debería.

Qué fuentes de datos usar: servidor, CDN, WAF, reverse proxy, analytics

No hay “una fuente perfecta”. Lo habitual es combinar 2–4, siendo CDN/WAF + logs de origin la pareja que más valor da para KPIs de bots.

Fuente Qué te aporta Dónde suele fallar KPIs que habilita
CDN/Edge logs Visión global, caché (HIT/MISS), ancho de banda, geografía, ASN Puede ocultar detalle de aplicación si solo ves edge Coste por bot, cache hit rate, picos, rutas calientes
WAF/Bot manager Clasificación (verified/unverified), bloqueos, challenges, reglas Sesgos de clasificación; “verificado” ≠ “bueno” Eficacia de bloqueo, falsos positivos, abuso/scraping
Reverse proxy / Load balancer Latencia real, upstream timings, errores de backend Menos contexto de bot si no enriqueces con ASN/geo TTFB/latencia por bot, 5xx por bot, reintentos
Logs de servidor (origin) Detalle de rutas, status codes, bytes, tiempos, app errors Volumen alto; requiere pipeline (ETL) y retención Cobertura, calidad (2xx/4xx/5xx), coste backend
Analytics (GA4, Matomo, etc.) Impacto en negocio/UX cuando el “agente IA” trae usuarios reales No mide bots que no ejecutan JS; referers pueden ser ambiguos Conversión, engagement, atribución “humana” desde buscadores IA

Qué campos guardar sí o sí (formato de logs recomendado)

Aquí es donde se gana el partido: si guardas los campos adecuados, luego podrás construir casi todos los KPIs (volumen, cobertura, coste, cumplimiento, seguridad) sin rehacer instrumentación.

🔵 “Mínimo viable” (MVT) para bots IA:

  • Cuándo: timestamp + zona horaria
  • Quién: client IP (o hash/pseudónimo), ASN/ISP, país, user-agent, bot/verified flags (si tu WAF/CDN los da)
  • Qué pidió: host, método, path, query (cuidado con PII), status, bytes
  • Cómo fue: latencia/ttfb, cache status (HIT/MISS), origin response time
  • Por qué llegó: referer (cuando exista) + request id (para correlacionar)

Si usas Cloudflare u otro proveedor similar, es especialmente útil capturar etiquetas de: “verified bot / bot score / categoría” y la señal de cache HIT/MISS, porque son el puente entre “qué me rastrea” y “cuánto me cuesta”.

Normalización: cómo unificar bots, rutas, status codes y tiempos

Tu dashboard se romperá si cada fuente llama a lo mismo de forma distinta. La solución es una capa de normalización (en ETL o en tu data warehouse) con un esquema canónico.

1) Normaliza “agente”

  • bot_provider (openai/google/apple/perplexity/unknown)
  • bot_name (oai-searchbot/gptbot/…)
  • bot_family (training/search/on-demand/unknown)
  • bot_trust (declared/verified/suspicious)

2) Normaliza “ruta”

  • url_template (home, categoría, ficha, artículo, búsqueda, api…)
  • path_group (regex para agrupar)
  • is_sensitive (true/false)

3) Normaliza “resultado”

  • status_class (2xx/3xx/4xx/5xx)
  • latency_ms (total)
  • ttfb_ms (si lo tienes)
  • cache_status (HIT/MISS/BYPASS/EXPIRED)

Esta normalización no es “bonita”: es la base de KPIs comparables. Un ejemplo: si un bot dispara 4xx en una plantilla concreta, medir solo “requests totales” oculta el problema. Con url_template + status_class lo ves en segundos.

Ejemplo de “log canónico” en JSON lines (para data warehouse)

No necesitas exactamente esto, pero sí un esquema parecido. Te lo dejo como referencia mental:

{
  "ts":"2026-01-03T10:14:22.431Z",
  "request_id":"a1b2c3d4",
  "host":"www.tudominio.com",
  "method":"GET",
  "path":"/blog/como-medir-bots-ia",
  "query":"",
  "status":200,
  "bytes":48231,
  "ttfb_ms":142,
  "latency_ms":311,
  "cache_status":"HIT",

  "client_ip_hash":"ip_9f1c…",
  "country":"ES",
  "asn":12345,

  "user_agent":"OAI-SearchBot/1.0",
  "bot_provider":"openai",
  "bot_name":"oai-searchbot",
  "bot_family":"search",
  "bot_trust":"verified",

  "waf_action":"allow"
}

Separar datos de usuario, datos de negocio y datos del bot

Esto es más importante de lo que parece: mezclar todo en una sola tabla suele causar problemas de privacidad y también errores de análisis (por ejemplo, comparar sesiones humanas con bots).

  • Dataset A (bots/infra): logs de edge/WAF/origin con el esquema canónico.
  • Dataset B (humano/negocio): analítica (conversiones, engagement, revenue, leads).
  • Dataset C (control/política): versión de robots.txt, reglas WAF/CDN, allowlists y cambios (con fecha/hora).

🔴 Tip de oro: cada vez que cambies robots.txt o reglas de bot/WAF, guarda un “snapshot” versionado. Sin eso, luego no podrás atribuir si un pico o una caída se debe a política o a comportamiento del bot.

Checklist de privacidad: PII, consentimiento y retención

En España/UE (y en general, en cualquier enfoque serio), la observabilidad debe diseñarse con minimización. Esto es doblemente importante cuando logueas queries y parámetros.

  • No guardes query strings completas si pueden contener emails, teléfonos, tokens o IDs personales.
  • Pseudonimiza IPs (hash con salt) si tu caso no requiere IP en claro para seguridad.
  • Define retención (por ejemplo: 30–90 días en caliente + agregado anonimizado a largo plazo).
  • Separa seguridad vs analítica: lo que necesitas para respuesta a incidentes no siempre debe vivir en el mismo entorno que BI.

Y recuerda el punto de base: robots.txt es una directiva para crawlers, no un control de seguridad. Si algo debe ser privado, la medida correcta es control real (auth, restricciones de red, WAF, etc.).

¿Y cómo conecto esto con “buscadores IA” concretos?

La idea es que tu diccionario de agentes (UA + verificación) y tu política (robots/WAF) se apoyen en documentación oficial. Por ejemplo, OpenAI documenta sus crawlers y cómo gestionarlos con robots.txt, y recomienda no bloquear el bot de búsqueda si quieres aparecer en resultados/citas.

Google, por su parte, documenta Google-Extended como token de producto para controlar usos ligados a Gemini (entrenamiento y grounding), y deja claro que no es un user-agent HTTP separado, así que tus KPIs deben apoyarse en auditoría de política + comportamiento.

⚫ Resultado: con esta instrumentación mínima, ya puedes construir KPIs “de verdad”: volumen, cobertura, calidad (errores), coste (cache/origin), cumplimiento (allow/block) y señales de abuso.

KPIs esenciales de rastreo IA: volumen, cobertura, calidad y coste

Con la instrumentación lista, toca lo importante: qué medir. En rastreo IA, casi todo KPI útil cae en cuatro familias: volumen (cuánto), cobertura (qué), calidad (cómo de bien) y coste (a qué precio). La clave es que los KPIs se puedan segmentar por bot_family (training/search/on-demand) y por bot_trust (declared/verified/suspicious).

⚫ Si solo te quedas con 1 idea: mide impacto, no “presencia”. Un bot puede hacer pocas requests pero atacar rutas sensibles; otro puede hacer millones con cache HIT y costarte casi nada.

1) KPIs de volumen: ¿cuánto te rastrean y con qué intensidad?

KPI Cómo calcularlo Para qué sirve Alerta inicial (orientativa)
Requests/día (por bot y total) count(*) por día Ver picos, estacionalidad, impacto global > +200% vs media 14 días
URLs únicas/día count(distinct path_norm) Distinguir “explorar mucho” vs “insistir en pocas URLs” Caída brusca (> -50%) sin cambio de política
Repetición (requests / URL única) requests / urls_unicas Detectar bucles, reintentos, scraping agresivo > 10 (en plantillas “normales”)
Pico RPS (requests/seg) max(count(*) por segundo) Riesgo de degradar UX, saturar origin o disparar costes > umbral de tu infra (define SLO)
Ancho de banda (GB/día) sum(bytes)/1e9 Cuantificar coste directo y presión sobre CDN/origin > +100% vs media 14 días

Interpretación rápida:

  • Requests ↑ y URLs únicas ↑ → el bot está “descubriendo/expandiendo” cobertura.
  • Requests ↑ y URLs únicas ↓ → posible bucle, reintentos por errores, o scraping focalizado.
  • Pico RPS ↑ → casi siempre requiere control (rate limiting / rules) aunque el total diario no parezca enorme.

2) KPIs de cobertura: ¿qué parte de tu web están tocando (y cuál se queda fuera)?

“Cobertura” no significa “más es mejor”. Significa alineación entre lo que el bot rastrea y lo que tú quieres exponer (por estrategia, negocio, privacidad, o coste).

KPI Cómo calcularlo Qué te dice
Coverage por plantilla (url_template) urls_unicas por template Si el bot está entrando donde importa (fichas, categorías, guías…)
Coverage de “high-value set” % de URLs prioritarias vistas en X días Si tus páginas clave están siendo descubiertas/revisitadas
Coverage gap (faltantes) high_value - visited Qué no se está rastreando (y por qué: bloqueos, errores, falta de enlaces)
Acceso a rutas sensibles (is_sensitive) count(*) where is_sensitive=true Señal de riesgo (scraping, enumeración, “hunting” de endpoints)

🔵 Truco que funciona: crea una lista de URLs prioritarias (50–500) y otra de URLs prohibidas. Tus KPIs de cobertura se vuelven útiles el día que puedes decir: “el bot X vio el 82% de lo prioritario en 7 días y tocó 0% de lo prohibido”.

3) KPIs de calidad: ¿qué “salud” tiene el rastreo?

La calidad se mide por la combinación de códigos de estado, latencia y estabilidad. Un rastreo “malo” suele provocar reintentos y repetición (y eso te dispara volumen y coste).

KPI Fórmula Por qué importa Umbral inicial
Error rate (4xx+5xx) (4xx+5xx)/total Señal de rutas rotas, bloqueos mal puestos o scraping > 5% (por bot/familia)
5xx rate 5xx/total Impacta SLO y genera reintentos > 1% sostenido
P95 latencia (ms) percentile(latency_ms, 95) Rastreo lento = menos cobertura y más presión en infra Depende del sitio (define baseline)
Redirect anomalies % 3xx + loops detectados Los loops multiplican requests y confunden bots > 10% 3xx en plantillas no esperadas

Relación causa-efecto típica: si el 5xx rate sube, la repetición suele subir después. Es decir, arreglar calidad suele bajar volumen y coste sin tocar políticas de bloqueo.

4) KPIs de coste: ¿cuánto te cuesta el rastreo IA (de verdad)?

Aquí es donde se gana el control presupuestario. Lo más útil no es “tokens” (eso aplica a LLMs), sino señales de infraestructura: caché, hits a origin, ancho de banda y (si lo tienes) coste unitario.

KPI Cómo calcularlo Acción típica
Cache hit rate (por bot) HIT / (HIT+MISS) Subir caché en plantillas públicas; bajar coste sin bloquear
Origin hit rate MISS / total (o origin_fetches/total) Si sube, revisa TTL, bypass rules y endpoints que fuerzan MISS
Coste proxy por bot (origin_hits * c1) + (GB * c2) Prioriza mitigaciones donde duele (no donde “molesta”)
Top URLs por coste group by path_norm order by origin_hits desc Detecta endpoints caros: búsquedas internas, filtros, APIs, renders dinámicos

Si usas Cloudflare, su documentación deja claro que puedes bloquear bots IA verificados clasificados como AI crawlers (y también cierto tráfico no verificado con comportamiento similar). Eso te permite medir la diferencia entre “coste antes” y “coste después” de activar políticas.

El “pack mínimo” de KPIs por tipo de agente (para no volverte loco)

Training / recopilación

  • Requests/día + pico RPS
  • GB/día + cost proxy
  • Origin hit rate + top URLs por coste
  • Acceso a rutas sensibles

Search / búsqueda IA

  • URLs únicas/día + coverage de high-value set
  • P95 latencia + 5xx rate
  • Frescura (lo veremos en el bloque dedicado)
  • Bloqueos/errores “no intencionados”

On-demand / bajo demanda

  • Picos por minuto + rutas objetivo
  • Bloqueos por antibot/challenges
  • Latencia y tasa de éxito (2xx)
  • Coste por sesión (proxy)

🔴 No mezcles objetivos: si lo que quieres es aparecer en resultados/citas de un buscador IA, no midas “cuánto lo he bloqueado”, sino “qué cobertura y qué calidad de rastreo tiene el agente de búsqueda”. En OpenAI, por ejemplo, se distinguen crawlers como GPTBot y OAI-SearchBot para propósitos distintos. :contentReference[oaicite:1]{index=1}

KPIs de control y política: allow/block y efectividad

Medir rastreadores y buscadores IA sin medir la política es como medir ventas sin medir precios: verás números, pero no sabrás por qué cambian. La política es el conjunto de decisiones que aplicas para permitir, limitar o bloquear el acceso (por bot, por propósito y por rutas). Y los KPIs de control te dicen si esa política se cumple y si está causando daños colaterales.

KPIs de cumplimiento de robots.txt: cuando “permitir/bloquear” no es binario

Un error típico es creer que “he puesto Disallow y ya está”. En realidad, lo medible es: ¿ese bot que dice ser X se comporta como X? y ¿sigue accediendo a rutas que has declarado como bloqueadas?

  • Robots compliance rate (por bot): porcentaje de requests del bot a rutas permitidas frente a rutas disallow (según tu propia tabla de reglas).
  • Disallowed hit count: número absoluto de hits a rutas bloqueadas (idealmente segmentado por verified vs no verificado).
  • Time-to-policy-effect: tiempo desde un cambio en robots.txt hasta que observas cambio de comportamiento (si el crawler obedece).
  • Robots fetch cadence: frecuencia con la que el agente solicita /robots.txt. No es un KPI “de negocio”, pero ayuda a entender cuánto tarda en “enterarse” de cambios.

Lectura útil: si el “disallowed hit count” es alto, normalmente estás ante 1) suplantación, 2) bots que no obedecen, o 3) rutas “prohibidas” que se siguen descubriendo por enlaces/sitemaps. En los tres casos, la respuesta suele ser WAF/CDN + ajustes de arquitectura, no solo robots.

KPIs de WAF/CDN: medir eficacia, falsos positivos y “fricción” accidental

En cuanto pasas de “preferencias” a “control”, entran WAF/CDN: bloqueos, rate limiting, challenges antibot, allowlists y reglas por patrón. Aquí el riesgo es doble: bloquear demasiado (pierdes visibilidad o rompes fetch bajo demanda) o bloquear poco (te comen el coste).

KPI Cómo se calcula Qué te indica Acción típica
Block rate (por bot/familia) blocked_requests / total_requests Intensidad de mitigación real (no “intención”) Ajustar reglas por rutas/plantillas, o por confianza (verified vs sospechoso)
False positive rate (proxy) blocked_verified_search_bots / total_verified_search_bots Si estás rompiendo agentes que te interesa permitir Crear allowlist verificada + excepciones por rutas públicas
Challenge friction challenged_requests / total_requests + tasa de éxito Cuánto “rozamiento” introduces a agentes (incluye fetch bajo demanda) Reducir challenge en rutas informativas, mantenerlo en endpoints caros
Rate-limit effectiveness Antes/después: pico RPS, coste y errores Si el rate limiting está bajando picos sin disparar reintentos Subir/bajar umbral, cambiar ventana, segmentar por bot_trust
Mitigation ROI (cost_before - cost_after) / (impact_on_visibility) Si la mitigación ahorra coste con un daño aceptable Optimizar caché/TTL antes que bloquear, cuando el objetivo es “aparecer”

KPIs de gobernanza: cambios de política, auditoría y trazabilidad

Muchos “misterios” (sube el rastreo, cae la cobertura, aparecen 403…) no se resuelven con más métricas, sino con una práctica simple: versionar la política. Cada cambio en robots.txt o WAF/CDN debería generar un evento auditable.

  • Policy change log completeness: % de cambios que tienen ticket/autor/motivo.
  • Rollback rate: cuántos cambios se revierten (señal de reglas demasiado agresivas).
  • Time-to-detect: tiempo desde un cambio hasta que detectas impacto anómalo (alertas).
# Ejemplo de “evento de política” (estructura mínima)
ts: 2026-01-03T10:30:00Z
actor: security@ / seo@
change: "WAF rule: block AI crawlers on /api/*"
scope: "/api/*"
bots: "training + suspicious"
expected_impact: "↓ origin hits en /api/*, sin impacto en páginas públicas"
rollback_plan: "desactivar regla si verified search bots caen > 3%"

Scorecard mínimo: 8 KPIs de control que casi siempre valen la pena

Para empezar sin liarte con 40 métricas, este “scorecard” suele cubrir el 80% de los casos:

  1. Disallowed hit count (por bot y por rutas sensibles)
  2. Robots compliance rate (en bots que deberían obedecer)
  3. Block rate (por bot_family)
  4. False positive rate (bloqueo de bots de búsqueda verificados que te interesan)
  5. Origin hit rate (por bot; coste real)
  6. Pico RPS (antes/después de mitigaciones)
  7. Top URLs por bloqueos (dónde “se pegan” los bots)
  8. Rollback rate + time-to-detect (salud del proceso)

Un matiz estratégico: “permitir OAI-SearchBot” no es lo mismo que “permitir todo OpenAI”

Si tu objetivo es que tu sitio pueda ser descubierto y citado en experiencias de búsqueda, tu política debería ser granular por propósito. OpenAI, por ejemplo, distingue crawlers y recomienda no bloquear OAI-SearchBot si quieres aparecer en resultados/citas, y explica que para evitar que se muestre algo (más allá del acceso del crawler) pueden aplicarse señales como noindex siempre que el crawler pueda leerlas.

KPIs de frescura y actualización: cómo saber si la IA “se entera” de tus cambios

La “frescura” es el KPI invisible que más duele cuando falla: tú publicas algo nuevo (o corriges algo crítico), pero los rastreadores/buscadores IA tardan en volver… y durante días (o semanas) pueden seguir consumiendo una versión antigua. Medir frescura no es adivinar “cuándo lo usará una IA”, sino medir algo mucho más concreto: cuándo y cómo los agentes vuelven a solicitar tus URLs después de un cambio.

Definición operativa: Frescura = tiempo y consistencia con la que un agente IA (p. ej., un bot de búsqueda) vuelve a acceder a contenido actualizado, con baja tasa de error y sin fricción por tus controles.

Primero: por qué “frescura” depende del tipo de agente

No todos los bots tienen el mismo propósito, y eso afecta a la cadencia de revisita. Por ejemplo, OpenAI distingue entre crawlers con objetivos diferentes (como GPTBot y OAI-SearchBot) y recomienda no bloquear el bot de búsqueda si quieres que tu contenido pueda ser descubierto y citado en resultados.

Y Google documenta Google-Extended como un product token para controlar usos vinculados a Gemini (entrenamiento y grounding), lo que refuerza que “IA” no siempre es un user-agent HTTP con un patrón de rastreo típico.

Qué necesitas para medir frescura (sin magia): un “registro de cambios”

Sin un log de cambios, solo podrás medir “visitas”, no frescura. La base es emitir un evento cada vez que cambie una URL: creación, actualización relevante, borrado, cambio de canonical, etc.

  • Fuente ideal: tu CMS (webhook al publicar/actualizar).
  • Alternativas: comparar diffs de sitemap (con <lastmod>), diffs en Git (si es estático), o logs de deployments.
  • Campo clave: content_change_ts (timestamp exacto) + change_type (new/update/redirect/remove).

⚫ Tip práctico:

No intentes medir frescura de “toda la web” al principio. Define un high-value set (50–500 URLs) y mide frescura ahí. Si lo clavas en ese set, lo escalas después.

KPIs imprescindibles de frescura (con fórmulas)

KPI Cómo calcularlo Qué te revela Alerta inicial (orientativa)
TTFS (Time To First Seen) first_bot_request_ts(url) - content_change_ts(url) Velocidad de “descubrimiento” tras un cambio P95 > 72h en bots “search”
TTR (Time To Recrawl) Δ entre visitas consecutivas (mediana/P95) Cadencia de revisita por plantilla (home, categorías, fichas, blog) Saltos anómalos vs baseline
Fresh coverage (últimos N días) % high_value_urls con ≥1 visita en N días Si lo importante “está vivo” para el bot < 70% (N=7) sin explicación
Post-change error rate (4xx+5xx) en ventana 24–72h tras cambio Si tus cambios generan fricción (403 por WAF, 404 por redirects rotos, 5xx por carga) > 5% en bots “search”
Conditional validation rate (304) % 304 sobre URLs estables (si usas ETag/Last-Modified) Cómo de eficiente es la revisita (menos coste sin perder frescura) Si 304 ≈ 0% en estáticas, revisa headers

Cómo segmentar frescura (donde realmente se vuelve útil)

El KPI “TTFS global” te engaña. La frescura se entiende por segmentos:

  • Por bot_family: search (quieres rapidez), training (quizá te dé igual o lo limitas), on-demand (espigas).
  • Por plantilla: home/categorías/fichas/blog/soporte. (Suelen tener cadencias distintas.)
  • Por valor: high-value set vs long-tail.
  • Por control: allow/limit/block y “verificado vs no verificado”.

🔴 Patrón típico de desastre: actualizas contenido clave y, sin querer, tu WAF/CDN empieza a devolver 403 a un bot de búsqueda verificado → el bot deja de recrawlear → tu “fresh coverage” cae → tus citas/visibilidad se resienten. Por eso medimos post-change error rate.

El KPI que casi nadie mide: “frescura efectiva” en buscadores IA

Una cosa es que el bot visite. Otra es que visite lo correcto (canonical, versión pública, sin bloqueos) y que lo pueda usar para resultados/citas. Aquí entran 3 micro-métricas:

  1. Time-to-canonical: TTFS pero solo cuenta si la visita es a la URL canonical (no a variantes con parámetros).
  2. Renderability rate: % de visitas que reciben HTML legible (no un challenge JS, no un 401, no un “te faltan cookies”).
  3. Stable citation surface: estabilidad de elementos citables (título, encabezados, extractos) después de cambios
    —si reestructuras todo cada semana, la “memoria” de lo que se cita es más frágil.

Acciones que suelen mejorar frescura sin “abrir la compuerta”

Frescura no siempre se arregla permitiendo más rastreo. A menudo se arregla eliminando fricción y mejorando eficiencia:

  • Mejorar estabilidad técnica (bajar 5xx y timeouts post-publicación).
  • Evitar redirects innecesarios y loops (los bots pierden “presupuesto” y tiempo).
  • Definir caché y validación (ETag/Last-Modified) para que la revisita sea barata cuando no hay cambios.
  • Permitir (o exceptuar) rutas públicas de challenges antibot si afectan a bots de búsqueda verificados.
  • Versionar política (robots/WAF) para poder atribuir cambios de frescura a cambios tuyos, no del bot.

Y, si estás usando herramientas de control a nivel CDN/WAF, conviene que el dashboard de frescura se vea junto a métricas de mitigación: soluciones como Cloudflare documentan opciones específicas para bloquear “AI crawlers” (verificados y algunos no verificados), lo que refuerza que frescura y control deben medirse juntos para evitar daños colaterales. :contentReference[oaicite:2]{index=2}

⚫ Resumen mental: Frescura = (TTFS + TTR + fresh coverage) con (post-change error rate bajo). Si uno falla, normalmente el culpable es fricción (errores, bloqueos, redirects) más que “falta de interés del bot”.

KPIs de tráfico desde buscadores IA y asistentes: visibilidad, citas y derivación

Una cosa es que un agente IA rastree tu web. Otra (muy distinta) es que ese ecosistema te devuelva tráfico humano o visibilidad medible (citas, enlaces, menciones). En esta sección vamos a medir lo que importa “de cara a fuera”: derivación (clicks/sesiones),
calidad (engagement y conversiones) y presencia (citas/menciones cuando no hay clic).

⚫ Principio: separa tres planos y nunca los mezcles en un mismo KPI:

(1) crawl (bots accediendo), (2) inclusión/citación (tu dominio aparece en respuestas), (3) tráfico humano (sesiones que llegan desde ahí).

1) Medición de derivación: cómo identificar tráfico “desde IA” con fiabilidad

Para tráfico humano, el punto de partida es el mismo de siempre: source/medium y referer. El problema es que, en experiencias IA, el referer puede variar, y a veces lo que te “confirma” el origen es un UTM.

Señal A · UTMs (ideal)

Identificación explícita en la URL de entrada (p. ej., utm_source=…).
Reduce la ambigüedad y simplifica reporting.

Señal B · Referer (normal)

El navegador trae un referer tipo https://… (chatgpt.com, perplexity.ai, etc.).
Útil, pero no siempre constante.

Señal C · Ninguna (difícil)

Cuando no hay UTM ni referer, solo podrás inferir con modelos (poco recomendable) o con paneles de presencia/citación.

En el caso de ChatGPT, OpenAI indica específicamente que los editores pueden trackear tráfico de referencia y que ChatGPT incluye automáticamente el parámetro utm_source=chatgpt.com en URLs de referencia, lo que permite un seguimiento más claro en herramientas como Google Analytics.

Para Perplexity, su documentación distingue entre PerplexityBot (crawler) y Perplexity-User (acceso bajo demanda), lo cual es útil porque te permite separar mejor “crawl” vs “tráfico/peticiones por usuario” (aunque tu medición de tráfico humano seguirá entrando por analítica del navegador).

2) KPIs de tráfico IA (los que sí sirven)

Una vez identificas la derivación (por UTMs/referer), estos KPIs suelen ser los más accionables:

KPI Definición Por qué importa Segmentos recomendados
Sesiones desde IA Sesiones con utm_source o referer de plataformas IA Base para dimensionar canal ChatGPT / Perplexity / otros; país; dispositivo
Engaged sessions rate % sesiones con engagement real (según tu analítica) Mide calidad del tráfico, no volumen Landing type; intent; contenido vs producto
Conversión directa Conversiones atribuidas a sesiones desde IA Impacto negocio directo Micro vs macro conversiones
Conversión asistida IA aparece en el camino (no necesariamente último click) Canal suele ser “upper/mid funnel” Ventana 7/30 días; tipo de usuario
Landing success rate % sesiones desde IA que aterrizan sin error (no 404, no 5xx, sin bloqueos) En IA, enlaces rotos o bloqueos “matan” la derivación Por plantilla; por cambios recientes (post-change)

🔴 Error típico: celebrar “Sesiones desde IA ↑” sin mirar engagement. En muchas webs, el primer síntoma de tráfico IA “malo” es:
sesiones ↑ pero engagement ↓ y tasa de error ↑.

3) KPIs de presencia/citación: cuando no hay clic (pero sí hay visibilidad)

Aquí entramos en el terreno más nuevo: muchas respuestas IA pueden mencionar o citar tu dominio sin que el usuario haga clic. Google explica cómo funcionan sus AI features (AI Overviews y AI Mode) desde la perspectiva del propietario del sitio, lo que refuerza que “estar incluido” es un concepto diferente a “recibir clic”. {index=2}

Lo práctico es medir la presencia con un panel de consultas objetivo (un “prompt pack”) y registrar: si apareces, cómo apareces y si hay enlace.

⚫ KPIs de presencia (recomendados):

  • Presence rate: % de consultas objetivo donde tu marca/dominio aparece.
  • Citation rate: % donde aparece con enlace (no solo mención).
  • Position-in-answer: si sales “arriba”, “en medio” o “al final” (escala simple 1–3).
  • Answer alignment: si la respuesta es coherente con tu propuesta (útil para marca/autoridad).

Cómo hacerlo sin autoengaño: define un set estable de consultas (50–200), ejecútalas con una cadencia fija (semanal/quincenal) y registra resultados. No te obsesiones con “el dato perfecto”; busca tendencia y comparabilidad.

4) Cómo unir Search Console con “IA”: lo que hay y lo que no hay

Para Google, Search Console sigue siendo la fuente base para medir rendimiento en Search (clics, impresiones y posición), pero con matices cuando entran experiencias IA.

  • Google ha explicado en su documentación cómo se cuentan clics, impresiones y posición en Search Console (definiciones y heurísticas). {index=3}
  • Y se ha informado de actualizaciones para que AI Mode cuente en los totales de Search Console (clics/impresiones/posición), acompañadas de aclaraciones en la documentación de Search Console.

🔵 Traducción a KPI: usa Search Console para el “macro” (tendencias de clic/impresión/posición), y usa tu panel de presencia/citación + UTMs para el “micro” (qué pasa específicamente en experiencias IA y quién te deriva tráfico).

5) Implementación práctica en analítica: canal “AI Referrals” en 30 minutos

Un setup base (sin inventos) suele ser:

  1. Definir reglas de canal (en tu herramienta): agrupa sesiones con utm_source=chatgpt.com como “ChatGPT”. OpenAI indica que ese UTM se añade automáticamente en referencias desde ChatGPT, lo que te lo pone muy fácil. :contentReference[oaicite:5{index=5}
  2. Crear “fuentes IA” por referer: agrupa dominios conocidos (p. ej., perplexity.ai) en “Perplexity”.
  3. Cuadro de mando mínimo: sesiones, engagement, conversiones, landing success rate, top landing pages.
  4. Alertas: caída brusca de sesiones desde IA o subida brusca de errores (404/403) en landings con UTM IA.

⚫ Consejo de diseño de KPIs: tu “North Star” aquí no suele ser “sesiones”. Suele ser conversiones (directas o asistidas) por sesión desde IA o engagement útil por sesión. Lo demás es diagnóstico.

6) Conexión con control: medir tráfico sin romperlo

Este punto enlaza con los bloques anteriores: tus reglas de WAF/CDN pueden cambiar la derivación si bloqueas agentes o flujos relevantes. Por ejemplo, Cloudflare documenta opciones para bloquear “AI bots” (incluidos verificados clasificados como AI crawlers), lo que hace todavía más importante medir “tráfico humano desde IA” por separado, para evitar daños colaterales por políticas demasiado agresivas.

KPIs de seguridad y abuso: scraping, crawling encubierto y consumo ilimitado

Cuando hablamos de “bots IA” en una web real, el riesgo no es solo que te rastreen: es que te rastreen como no deberían (ignorando directivas), te cuesten dinero (picos y bypass de caché) o toquen superficies sensibles (endpoints internos, parámetros, búsquedas, APIs). Y aquí hay una verdad incómoda: la seguridad se mide por comportamiento, no por etiqueta de user-agent.

🔴 Contexto actual: proveedores de infraestructura como Cloudflare han documentado tanto herramientas para bloquear “AI crawlers” verificados/no verificados como casos de crawling encubierto y suplantación de agentes para evadir robots.txt.

Tu modelo de amenaza (simple y útil) para bots IA

Para definir KPIs de seguridad sin perderte, clasifica el tráfico “no humano” en tres cubos:

  1. IA verificada y declarada: identidad confirmada (por rangos IP/verified bot/WAF).
    No es “buena”, pero es atribuible.
  2. IA declarada pero no verificada: dice ser algo (UA), pero no puedes confirmarlo.
    Aquí viven muchos falsos y mucho ruido.
  3. Adversarial / encubierto: intenta parecer navegador, rota UA/IP/ASN, ignora robots, explora rutas sensibles.

A partir de ahí, tus KPIs de seguridad deben responder tres preguntas: (1) ¿Quién?, (2) ¿Qué está intentando? y (3) ¿Cuánto daño/coste genera?

KPIs para detectar crawling encubierto y suplantación

Si hay crawling encubierto, tu problema no es “falta de robots.txt”, sino detección y atribución. Cloudflare, por ejemplo, ha descrito patrones de evasión (cambios de user-agent, rotación de IP/ASN, no consultar robots) en su análisis público de crawling encubierto.

KPI Cómo calcularlo Señal típica Acción
UA churn rate # user-agents distintos / 24h por IP/ASN Rotación agresiva para evadir firmas Rate limit + reglas por comportamiento + fingerprinting WAF
IP/ASN churn # IPs o ASNs / 24h por misma “huella” Botnet / proxy pools Bloqueo por ASN/Geo + challenge adaptativo
Robots skip rate % sesiones bot sin request a /robots.txt Señal de crawler “poco educado” o encubierto Subir exigencia en rutas sensibles, no en contenido público
Declared-vs-verified gap declared_ai - verified_ai (volumen) Mucho “dice ser bot X” sin poder verificar No tomes decisiones de allowlist solo con UA; exige verificación

KPIs de scraping y exfiltración: cuando el objetivo es “llevarse contenido”

El scraping “de verdad” suele tener huellas: alta cobertura en poco tiempo, rutas repetidas, descargas grandes, y foco en páginas “valiosas” (catálogos, comparativas, PDFs, endpoints de búsqueda).

⚫ Heurística práctica:

Si un segmento “no humano” genera URLs únicas muy altas + bytes muy altos + ratio cache MISS alto, no lo trates como “crawl normal”: trátalo como extracción.

  • Download intensity (bytes/min): sum(bytes) por minuto y por agente/segmento.
  • Unique URL sweep rate: URLs únicas / hora (especialmente en directorios de contenido premium).
  • Content hotlist hit rate: accesos a rutas “joya” (ej.: /pdf/, /comparativas/, /docs/).
  • Cache bypass share: % de requests que fuerzan bypass (cabeceras raras, query strings, endpoints dinámicos).

KPIs de probing y enumeración: cuando “buscan puertas”

Muchos abusos empiezan como enumeración: buscar endpoints, parámetros y rutas no enlazadas. Esto no siempre “parece IA”, pero a menudo se mezcla con crawling encubierto.

KPI Definición Qué suele indicar
404 probing rate 404 / total por segmento Enumeración de rutas, wordlists, scanning
Sensitive endpoint hit rate Requests a rutas marcadas is_sensitive Búsqueda de APIs, admin, feeds internos, parámetros
Param entropy score Entropía/variedad de parámetros por minuto Fuzzing, scraping por filtros, intentos de bypass de caché

KPIs de consumo ilimitado: el “ataque económico” (sin necesidad de tumbarte)

En 2026 es muy común que el abuso no busque tirar tu web, sino hacerte pagar: disparar llamadas a endpoints caros (búsquedas internas, render dinámico, filtros con parámetros) para multiplicar origin hits y cómputo.

  • Origin cost spike: origin_hits y origin_time_ms por segmento vs baseline.
  • Expensive endpoint share: % de tráfico “bot/sospechoso” hacia endpoints caros (tu lista priorizada).
  • Retry amplification: si suben timeouts/5xx y sube la repetición, tienes amplificación por reintentos.
  • Mitigation-to-savings: ahorro estimado tras activar reglas (comparativa antes/después).

Aquí las herramientas de WAF/CDN son determinantes: Cloudflare documenta que su opción “Block AI Bots” puede bloquear bots verificados clasificados como AI crawlers y también firmas de bots no verificados similares.

Esto no sustituye a tu estrategia, pero te permite medir con claridad el “antes/después” de mitigaciones.

KPIs de “política violada”: cuando tus directivas se ignoran

Algunos proveedores recomiendan explícitamente permitir ciertos bots para aparecer en resultados (por ejemplo, Perplexity recomienda permitir PerplexityBot y autorizar sus rangos IP publicados si quieres estar en sus resultados).

Pero ese consejo convive con el hecho de que el crawling encubierto existe (y por eso medimos violaciones).

⚫ Define dos listas para medir violación de política:

  • Allow set: rutas públicas que quieres que bots “search” puedan ver sin fricción.
  • Deny set: rutas que NO deben tocar (admin, API interna, parámetros sensibles, staging, etc.).
  • Deny-set hit count: número de requests a “deny set” por bot/segmento.
  • Denied-but-2xx rate: si algo del deny set devuelve 2xx, no es un “problema de bots”, es un problema tuyo (exposición).
  • Robots-policy violation rate: % de requests a rutas disallow por bots que se supone que obedecen.

El KPI compuesto que funciona: “suspiciousness score” (para priorizar)

Para operación diaria, un score compuesto ayuda a priorizar sin mirar 20 gráficos. Un ejemplo sencillo:


suspiciousness =
  0.35 * z(404_rate) +
  0.25 * z(denyset_hits) +
  0.20 * z(ip_asn_churn) +
  0.20 * z(origin_cost)

Donde z(...) es la desviación sobre tu baseline (por ejemplo, media 14 días). Esto te permite alertar por “comportamiento raro” sin depender de si el bot “se llama” de una forma u otra.

Playbook rápido: qué hacer cuando un KPI de abuso salta

  1. Confirma el segmento: ¿verificado, declarado o encubierto?
  2. Localiza el objetivo: ¿scraping de contenido, probing, o consumo ilimitado?
  3. Mitiga donde duele: rate limit y challenges en endpoints caros/sensibles, no en páginas públicas informativas.
  4. Mide daño colateral: vigila “false positive rate” sobre bots de búsqueda verificados y “landing success rate” del tráfico humano.
  5. Versiona la política: registra cambio, objetivo, y umbral de rollback.

Dashboard operativo y ritual de revisión (semanal/mensual)

Con los KPIs ya definidos, el siguiente salto de madurez es que se usen. Y para eso necesitas dos cosas: un dashboard que cuente una historia (no un cementerio de gráficos) y un ritual (revisión con cadencia, responsables y acciones).

⚫ Regla práctica: si un KPI no tiene umbral + dueño + acción, no es un KPI: es un dato.

Cómo debe ser un dashboard “usable” para bots IA

  • Capas: resumen ejecutivo (5–10 números) + diagnóstico (drill-down por bot/familia/plantilla).
  • Comparación: siempre vs baseline (media 14/28 días) y vs “antes/después” de cambios de política.
  • Segmentación obligatoria: bot_family, bot_trust, plantilla (url_template) y acción WAF (allow/block/challenge).
  • Contexto: anotaciones automáticas con “policy change events” (cambios en robots/WAF/CDN).

Arquitectura mínima del panel: 5 pestañas que cubren el 90%

Pestaña Preguntas que responde KPIs “titular” Drill-down recomendado
1) Crawl Health ¿Qué volumen hay y qué tan “sano” es? Requests/día, URLs únicas, repetición, 4xx/5xx rate, P95 latencia Por bot_family, bot_trust, url_template, status_class
2) Cost & Cache ¿Qué me cuesta y dónde? GB/día, cache HIT rate, origin hit rate, top URLs por coste Por plantilla, endpoints caros, query patterns
3) Policy & Control ¿Mis reglas funcionan? ¿Hay daños colaterales? Block rate, disallowed hit count, false positive proxy, rollback rate Allow vs block por bot/familia/ruta + eventos de cambio
4) Freshness ¿Se enteran de mis cambios? ¿Con qué velocidad? TTFS P50/P95, fresh coverage (N=7), post-change error rate Por plantilla + high-value set + cambios recientes
5) Visibility & Referrals ¿Me citan? ¿Me traen tráfico? ¿Ese tráfico vale? Sesiones desde IA, engagement, conversión directa/asistida, presence/citation rate Por plataforma IA, landing page, intent, país, dispositivo

Alertas: 9 señales que conviene automatizar desde el día 1

Las alertas no deben ser “ruido”. Deben dispararse cuando hay probabilidad real de coste, pérdida de visibilidad o un incidente de seguridad.

  • Spike de volumen: requests/día > +200% vs media 14 días (por bot_family).
  • Pico de RPS: supera umbral de infra durante > 5 min.
  • Origin hit rate ↑: +30% vs baseline en plantillas públicas (señal de bypass/caché mal).
  • 5xx rate ↑: > 1% sostenido (por bot/familia o por plantilla).
  • Repetición ↑: requests/URL única > 10 en rutas que deberían ser “baratas”.
  • Deny-set hits: cualquier subida significativa en rutas sensibles.
  • Post-change 403/404: tras publicar/cambiar, sube el error rate en high-value set.
  • Fresh coverage ↓: cae > 20 puntos en N=7 sin cambio planificado.
  • AI referrals con landings rotas: 404/403 en sesiones con UTMs IA por encima de umbral.

Qué mirar cada semana (operación)

La revisión semanal es para mantener estabilidad: coste controlado, frescura razonable y sin abusos.

Si solo puedes hacer 30 minutos, sigue este orden:

  1. Incidentes y picos: ¿hubo alertas? ¿qué bot_family las disparó?Salida esperada: 1–3 acciones claras (p. ej., ajustar rate limit en endpoint caro, corregir 5xx, revisar bypass de caché).
  2. Coste: top bots por origin hits y top URLs por coste.Salida esperada: una mejora por eficiencia (caché/TTL/headers) antes de bloquear a ciegas.
  3. Calidad: 4xx/5xx rate + redirects anómalos.Salida esperada: arreglar causas que amplifican reintentos.
  4. Frescura: TTFS P95 y post-change error rate del high-value set.Salida esperada: detectar “bloqueos accidentales” o fricción post-publicación.
  5. Seguridad: deny-set hits, 404 probing rate, ASN/IP churn.Salida esperada: mitigación por comportamiento, no por nombre.

Qué mirar cada mes (estrategia y negocio)

La revisión mensual es para responder: “¿qué política nos conviene?” y “¿qué retorno (o riesgo) tiene permitir/bloquear?”

1) Política por propósito

  • ¿Qué bots “search” nos interesa permitir?
  • ¿Qué bots “training” limitamos o bloqueamos?
  • ¿Dónde ponemos la frontera (rutas públicas vs sensibles)?

2) ROI de mitigación

  • Coste antes/después (origin hits + GB)
  • Impacto en frescura (TTFS, coverage)
  • Impacto en tráfico humano desde IA

3) Plan editorial “AI-ready”

  • High-value set: ¿qué URLs “merecen” frescura alta?
  • Estabilidad de URLs/redirects (evitar roturas)
  • Mejoras de legibilidad/citación (estructura, extractos)

Umbrales y playbooks: plantilla de “KPI → decisión”

Para que esto sea operable, usa una matriz simple. (Sí, es aburrida. Y por eso funciona.)

KPI Umbral Diagnóstico probable Acción (playbook) Dueño
Origin hit rate ↑ +30% vs baseline Bypass de caché, TTL corto, endpoints dinámicos Revisar caché/headers; limitar endpoints caros por patrón Infra
Post-change 403 ↑ > 5% en 72h WAF bloquea bots “search” o fetch bajo demanda Allowlist verificada en rutas públicas; rollback si cae frescura Sec/Infra
Deny-set hits ↑ +X vs baseline Probing/enumeración/exfiltración Rate limit + challenge en deny-set; bloquear por comportamiento/ASN Seguridad

⚫ Consejo final: en bots y buscadores IA, el “éxito” rara vez es un solo número. Suele ser un equilibrio: frescura suficiente + coste controlado + riesgo bajo, sin cargarte la derivación humana.

Pack de implementación: plantillas, listas y tablas para medir bots IA sin reinventar la rueda

Aquí tienes un “kit” práctico para que tu medición sea mantenible: diccionario de agentes, listas allow/deny, matriz KPI→acción, registro de cambios y ejemplos de políticas (robots.txt + WAF/CDN). La idea es que puedas copiar/pegar esta estructura en tu stack (BigQuery, Snowflake, Elastic, Datadog, Grafana, etc.) y empezar a sacar KPIs fiables.

⚫ Objetivo del pack: que cada métrica tenga “dueño + umbral + playbook”. Si no, se queda en reporting bonito pero inoperable.

1) Diccionario de agentes (tabla “source of truth”)

Este diccionario es el corazón de todo: normaliza nombres, familias y nivel de confianza. Por ejemplo, OpenAI distingue explícitamente OAI-SearchBot (búsqueda) y GPTBot (entrenamiento), y permite gestionarlos por separado en robots.txt.

Campo Ejemplo Notas
bot_provider openai Proveedor/operador
bot_name oai-searchbot Nombre canónico interno
bot_family search training / search / on-demand / unknown
ua_regex .*OAI-SearchBot.* Etiqueta rápida (Capa 1)
verify_method ip_range ip_range / reverse_dns / waf_verified / none
verify_source openai.com/searchbot.json Guarda URL o referencia del origen (cambio controlado)
policy_default allow_public_limit_costly Tu decisión por defecto (se ajusta por rutas)

2) Listas allow/deny (rutas) + “endpoints caros”

Para KPIs de control y seguridad, define tres listas sencillas. Son feísimas. Funcionan.

Allow set (público)

  • / (home)
  • /blog/
  • /guias/
  • /categorias/
  • /producto/* (si aplica)

Deny set (sensibles)

  • /admin, /wp-admin
  • /api/ (interna)
  • /staging/, *.dev
  • /?s= (búsqueda interna, si es cara)
  • /*?token=*, /*?email=* (si existe riesgo de PII)

Expensive endpoints

  • /search (búsqueda con filtros)
  • /feed (si genera carga)
  • /api/catalog
  • /render (SSR pesado)
  • /*?filter=* (combinatoria alta)

3) Matriz “KPI → umbral → decisión” (plantilla de gobernanza)

Esto convierte KPIs en decisiones. Úsala tal cual, aunque al principio parezca “burocracia”.

KPI Segmento Umbral Diagnóstico Acción Dueño
TTFS P95 (high-value) search + verified > 72h Fricción (403/challenge), 5xx, redirects, enlazado Revisar WAF/caché/errores en plantillas clave SEO+Infra
Origin hit rate training + suspicious +30% vs baseline Consumo económico / bypass caché Rate limit en endpoints caros + ajustar TTL/headers Infra+Sec
Deny-set hits unknown/suspicious ↑ significativo Probing / enumeración / scraping Challenge/bloqueo por comportamiento + revisión de exposición Sec

4) Registro de cambios (CMS + robots.txt + WAF/CDN)

Para medir frescura y para explicar “por qué cambió el crawling”, necesitas un log de cambios versionado.

{
  "ts":"2026-01-03T10:30:00Z",
  "actor":"seo@kdosd.com",
  "change_type":"robots_txt_update",
  "scope":"User-agent: OAI-SearchBot",
  "details":"Allow /blog/ ; Disallow /api/",
  "expected_impact":"Mejora cobertura en contenidos + reduce coste en endpoints caros",
  "rollback_condition":"Si TTFS P95 sube > 30% o si 403 post-change > 5% en high-value",
  "ticket":"SEC-1234"
}

5) Ejemplos de políticas (robots.txt) con foco IA

Estos ejemplos no son “la verdad universal”, son un punto de partida para pensar por propósito. En OpenAI, por ejemplo, se puede permitir búsqueda (OAI-SearchBot) y desactivar entrenamiento (GPTBot).

# Ejemplo A: permitir bot de búsqueda de OpenAI pero bloquear entrenamiento
User-agent: OAI-SearchBot
Allow: /

User-agent: GPTBot
Disallow: /

Google-Extended es un token de producto (no un user-agent HTTP en requests), y se usa para controlar usos ligados a Gemini (entrenamiento y grounding) sin afectar a la inclusión en Google Search.

# Ejemplo B: controlar Google-Extended por rutas (no afecta a Google Search)
User-agent: Google-Extended
Disallow: /privado/
Allow: /

Apple indica que Applebot alimenta experiencias de búsqueda en el ecosistema Apple, y que el token Applebot-Extended permite optar fuera del uso para entrenar modelos fundacionales; además aclara que Applebot-Extended no “crawlea” páginas, sino que define cómo se usa lo que Applebot ya rastrea.

# Ejemplo C: permitir Applebot (búsqueda), pero optar fuera de uso para entrenamiento (Applebot-Extended)
User-agent: Applebot
Allow: /

User-agent: Applebot-Extended
Disallow: /

6) Plantilla de canalización de analítica: “AI Referrals”

Para la parte de tráfico humano, el setup más limpio es apoyarte en UTMs. OpenAI explica que, cuando tu contenido se muestra en resultados de ChatGPT, los enlaces de referencia pueden incluir automáticamente utm_source=chatgpt.com, facilitando el tracking en analítica.

🔵 Reglas de canal (ejemplo conceptual):

  • ChatGPT: utm_source=chatgpt.com OR referer contiene chatgpt.com
  • Perplexity: referer contiene perplexity.ai OR utm_source=perplexity
  • Otros IA: grupo “AI Referrals (Other)” para ir incorporando fuentes nuevas con control

7) Checklist final de implementación (para cerrar el círculo)

  1. Logs: edge/WAF/origin con timestamp, UA, status, bytes, latencia, cache HIT/MISS y (si es posible) ASN.
  2. Normalización: bot_provider/bot_name/bot_family/bot_trust + url_template + status_class.
  3. Diccionario: UA regex + método de verificación + política default por propósito.
  4. Listas: allow set, deny set, expensive endpoints.
  5. KPIs: volumen, cobertura, calidad, coste, control, frescura, seguridad, tráfico humano.
  6. Alertas: picos, 5xx, origin hit spikes, deny-set hits, post-change errors.
  7. Ritual: revisión semanal (operación) + mensual (política y ROI).

Recomendaciones prácticas para equilibrar visibilidad, coste y control (según tu tipo de web)

Llegados aquí, ya tienes KPIs y plantillas. Ahora toca lo difícil: tomar decisiones. Porque con rastreadores y buscadores IA casi nunca hay una “configuración perfecta”: hay un equilibrio entre visibilidad (que te citen/enlacen), coste (que no te drenen la infraestructura) y control (que no accedan a lo que no deben).

⚫ Idea guía: define una política por propósito (search vs training vs on-demand) y aplícala por superficie (rutas públicas vs caras vs sensibles). Medir = poder ajustar sin ir a ciegas.

1) Define tu “postura” según modelo de negocio (no según opinión)

La política correcta cambia mucho según cómo monetizas. Un medio que vive de publicidad, un ecommerce y una web de documentación no compiten en el mismo tablero.

Tipo de web Objetivo IA más común Política típica (search / training) KPIs que mandan
Medio / blog de autoridad Citas/enlaces + tráfico de referencia Search: allow público · Training: limit o mixto Presence/citation rate, AI referrals, frescura (TTFS), post-change errors
Ecommerce Descubrimiento de catálogo + tráfico cualificado Search: allow en fichas/categorías · Training: limit Cobertura high-value set, coste por endpoint (filtros), cache hit rate, errores 4xx/5xx
SaaS / producto Soporte + docs citables + leads Search: allow docs públicas · Training: limit + proteger app Frescura en docs, deny-set hits (app), WAF false positives, conversión asistida
Contenido premium / paywall Visibilidad “teaser” + protección del valor Search: allow teasers · Training: block premium Deny-set hits en premium, coste por scraping, presencia con extractos, cumplimiento de política

2) Separa superficies: público, caro y sensible (y trata cada una distinto)

En la práctica, casi todas las webs pueden dividirse en tres superficies:

  • Público: contenido que quieres que se descubra (artículos, categorías, fichas, docs).
  • Caro: endpoints que consumen recursos (búsqueda interna, filtros, APIs, SSR pesado).
  • Sensible: admin, staging, endpoints internos, datos personales, rutas con tokens/IDs.

Público (prioridad: visibilidad)

  • Evita challenges/JS antibot que impidan “renderability”.
  • Optimiza caché para bots (HIT alto) y estabilidad (bajo 5xx).
  • Mide TTFS y post-change error rate.

Caro (prioridad: coste)

  • Rate limiting por comportamiento y por rutas.
  • Cachea resultados si tiene sentido; limita combinatoria de filtros.
  • Mide origin hit rate, top URLs por coste y pico RPS.

Sensible (prioridad: control)

  • Control real: auth, IP allowlist interna, WAF estricto.
  • No dependas de robots.txt para proteger.
  • Mide deny-set hits y 404 probing rate.

3) Diseña políticas granulares por “search vs training”

Esto es donde la mayoría de sitios ganan control sin destruir visibilidad: permitir bots de búsqueda (si te interesan las citas/enlaces) y restringir bots de entrenamiento si el coste o la protección de contenido lo requiere.

Ejemplo: OpenAI documenta crawlers distintos (como GPTBot y OAI-SearchBot) y cómo gestionarlos por separado. Google indica que Google-Extended es un token de control para usos vinculados a Gemini y que no afecta a Google Search.

🔵 Heurística rápida:

• Si tu “valor” está en ser citado y atraer usuarios → prioriza search.

• Si tu “valor” está en contenido premium o coste alto → limita training y blinda endpoints caros/sensibles.

4) La métrica que te dice si estás “auto-saboteándote”

Un fallo común es bloquear a lo loco y no enterarse hasta que cae la visibilidad o se rompe la frescura. El KPI compuesto que más rápido lo delata suele ser:

  • Fresh coverage (search + verified) ↓
  • Post-change 403 ↑ en URLs públicas
  • AI referrals ↓ (cuando existan UTMs/referer)

Y aquí viene un detalle práctico que ayuda mucho a atribuir tráfico: OpenAI indica que los enlaces de referencia desde ChatGPT pueden incluir automáticamente utm_source=chatgpt.com, lo que facilita crear un canal de analítica “AI Referrals”.

5) Tres playbooks por escenario (lo que haría “mañana”)

Playbook A · Quiero máxima visibilidad (medio/docus)

  1. Allow explícito para bots de búsqueda en rutas públicas.
  2. Eliminar fricción: minimizar challenges en contenido público.
  3. Mejorar frescura: TTFS + post-change errors con alertas.
  4. Tracking: canal “AI Referrals” (UTM/referer) + panel de presencia/citación.

Playbook B · Me duele el coste (ecommerce con filtros / SSR)

  1. Lista “expensive endpoints” y rate limiting por patrón (no por nombre).
  2. Optimizar caché/TTL en público para subir HIT y bajar origin.
  3. Bloquear/limitar “training” si el coste lo justifica, manteniendo “search” en fichas/categorías.
  4. KPIs obligatorios: origin hit rate, top URLs por coste, pico RPS, repetición.

Playbook C · Me preocupa scraping/abuso (contenido premium)

  1. Deny-set real con controles reales (auth/WAF), no solo robots.
  2. Detectar encubiertos: IP/ASN churn + 404 probing + deny-set hits.
  3. Permitir “teaser” público (si interesa) y bloquear premium (training) con reglas claras.
  4. Alertas y respuesta: suspiciousness score + rollback plan.

6) Checklist de “decisión permitir/bloquear” basada en KPIs (sin debates eternos)

Para evitar discusiones circulares, esta tabla ayuda a decidir de forma consistente:

Señal Qué significa Decisión típica
Search bot verificado con TTFS alto + 403 post-change Fricción accidental en rutas públicas Permitir/exceptuar en público + arreglar WAF/caché
Training/sospechoso con origin hit rate alto en endpoints caros Consumo económico / scraping Limitar/bloquear en endpoints caros + rate limit
Deny-set hits + 404 probing + churn IP/ASN Enumeración / abuso encubierto Bloquear por comportamiento + endurecer superficie sensible

Plan de acción en 30 días para medir y tomar control

Este plan está pensado para que en un mes pases de “no sé qué me está rastreando” a tener: observabilidad (logs normalizados), KPIs (volumen/cobertura/calidad/coste/frescura/control/seguridad), alertas (picos, errores, abuso) y una política granular (search vs training) sin romper nada.

⚫ Principio del plan: primero “mide”, luego “limita”, y solo después “bloquea”.
En bots IA es fácil bloquear rápido y descubrir tarde que te has cargado la frescura o la derivación.

Semana 1: logging y clasificación (poner el suelo)

Objetivo: tener un dataset “bots/infra” que puedas consultar por bot/familia/ruta.

  1. Activar/centralizar logs: edge/CDN + WAF + origin (mínimo: timestamp, UA, status, bytes, latencia, cache HIT/MISS).
  2. Normalización v1: crear campos canónicos:
    bot_provider, bot_name, bot_family, bot_trust, url_template, status_class.
  3. Diccionario inicial de agentes: 10–30 entradas (OpenAI, Google, Apple, Perplexity, Anthropic, Meta + unknown).
    OpenAI documenta sus crawlers (como GPTBot y OAI-SearchBot) y su gestión por robots.txt, lo que ayuda a separar propósitos.
  4. Listas base: allow set (público), deny set (sensibles), expensive endpoints (caros).
  5. Baseline: calcula 14 días de medias para requests, URLs únicas, 4xx/5xx, origin hit rate y GB/día.

Semana 2: KPIs base + alertas (hacerlo operable)

Objetivo: tener un dashboard mínimo con alertas útiles.

  1. KPIs de volumen y calidad: requests/día, URLs únicas/día, repetición, pico RPS, 4xx+5xx rate, 5xx rate, P95 latencia.
  2. KPIs de coste: GB/día, cache hit rate, origin hit rate, top URLs por coste, top endpoints caros.
  3. KPIs de control v1: block rate (si hay WAF), disallowed hit count (según reglas internas).
  4. Alertas v1: picos de volumen (+200%), 5xx > 1%, origin hit rate +30%, deny-set hits ↑.
  5. Canal “AI Referrals”: reglas en analítica por UTMs/referers. OpenAI indica que enlaces de referencia desde ChatGPT
    pueden incluir automáticamente utm_source=chatgpt.com, lo que facilita el tracking.

🔴 Antipatrones (semana 2):
no actives 10 reglas de bloqueo a la vez. Primero mide qué cambia. Si no, tu baseline deja de servir.

Semana 3: control (robots/WAF/CDN) y pruebas (sin romper visibilidad)

Objetivo: aplicar políticas granulares por propósito y medir su efecto.

  1. Robots.txt “por propósito”: separar search vs training cuando el proveedor lo permita.
    (Ej.: OpenAI permite gestionar OAI-SearchBot y GPTBot por separado).
  2. WAF/CDN en endpoints caros: rate limiting y challenges en “expensive endpoints” (no en público).
  3. Allowlist verificada: si tienes bots de búsqueda “verificados” que te interesan, reduce fricción en rutas públicas.
  4. Prueba A/B temporal: activa una mitigación pequeña 48–72h y mide:
    coste (origin hits), frescura (TTFS en high-value), errores (403 post-change) y referrals humanos.
  5. Registro de cambios: versiona cada cambio (robots/WAF) con un “rollback plan”. Sin esto, no atribuyes.

Semana 4: panel de visibilidad y optimización continua (cerrar el círculo)

Objetivo: medir presencia/citación + frescura “de verdad” y establecer ritual semanal/mensual.

  1. High-value set definitivo: 50–500 URLs y su clasificación por plantilla (docs/blog/fichas).
  2. Registro de cambios de contenido: webhook del CMS o diff de sitemap (lastmod) para alimentar content_change_ts.
  3. KPIs de frescura: TTFS P50/P95, fresh coverage (N=7), post-change error rate.
  4. Panel de presencia/citación: set de 50–200 consultas objetivo y seguimiento semanal de presence/citation rate.
  5. Ritual: revisión semanal (operación) + mensual (política/ROI), con dueños y playbooks.

🔵 Resultado al día 30: puedes contestar (con datos) a:
“¿qué bots IA me cuestan dinero?”, “¿cuáles me interesan por visibilidad?”, “¿qué rutas debo proteger?”,
“¿se enteran de mis cambios?”, “¿me llega tráfico útil desde IA?”.

FAQs sobre KPIs de rastreadores y buscadores IA

Nota: estas FAQs están pensadas para resolver dudas reales de implementación. No son “teoría”: muchas se basan en diferencias documentadas entre bots (search vs training) y en cómo se controlan con robots.txt y WAF/CDN.

¿Puedo medir rastreadores IA solo con Google Analytics (GA4)?

No de forma fiable. GA4 (y la mayoría de analíticas client-side) dependen de JavaScript y de una sesión de navegador. Muchos bots IA no ejecutan JS, no aceptan cookies y no pasan por el mismo flujo que un usuario. Para medir rastreo IA necesitas logs de infraestructura (CDN/WAF/origin), y GA4 solo te sirve para el tráfico humano de referencia cuando hay clic.

¿Cómo distingo “búsqueda IA” de “entrenamiento IA” en mi medición?

Separándolo por propósito, no por intuición. Algunos proveedores ya separan bots: OpenAI documenta crawlers distintos, como OAI-SearchBot (búsqueda) y GPTBot (recopilación/entrenamiento), gestionables por separado en robots.txt. Eso te permite construir KPIs por familia: search (cobertura/frescura) y training (coste/abuso).

¿Bloquear bots de entrenamiento mejora mi SEO?

No necesariamente. “SEO” clásico depende sobre todo de Google Search, y Google indica que Google-Extended es un token para controlar usos vinculados a Gemini (entrenamiento y grounding) sin afectar a la inclusión en Search. Es decir: puedes controlar el uso IA sin “cargarte” tu SEO en Google… pero eso no aplica automáticamente a todos los proveedores. Por eso es clave medir: el efecto puede ser neutro, positivo (menos coste) o negativo (si bloqueas bots de búsqueda que te interesan).

¿Qué KPI me dice que estoy bloqueando “lo que no debería”?

Normalmente una combinación de: post-change 403 (sube tras publicar/cambiar), TTFS P95 (empeora en bots de búsqueda) y
fresh coverage (cae en tu high-value set). Si además cae el tráfico con UTMs/referers de IA, tienes evidencia de daño colateral.

¿Robots.txt es suficiente para controlar bots IA?

No como mecanismo de seguridad. robots.txt es una directiva voluntaria para crawlers; puede ayudar a gestionar comportamiento de bots “respetables”, pero no impide accesos adversariales. Google, por ejemplo, deja claro que no debes usar robots como método de protección y que para contenido sensible necesitas controles reales. Para seguridad necesitas WAF/CDN, autenticación, restricciones de red y políticas de acceso.

¿Qué hago si un bot “dice ser” un crawler conocido, pero no se comporta como tal?

Trátalo como sospechoso. El user-agent se falsifica. Sube el nivel de confianza solo si puedes verificar (rango IP publicado, “verified bots” del WAF/CDN, etc.). Si no puedes, opera por comportamiento: rate limiting, challenges y bloqueo en endpoints caros/sensibles.

¿Cómo mido si un bot respeta mi robots.txt?

Con KPIs de cumplimiento: disallowed hit count y robots compliance rate, calculados contra tu propia tabla de reglas. Si un bot “respetable” sigue tocando rutas disallow, suele ser suplantación o mala atribución; si es “encubierto”, robots no te sirve y debes aplicar control real.

¿Cómo mido la “frescura” si no sé cuándo un buscador IA actualiza sus resultados?

No intentes medir “actualización del resultado” (eso es opaco). Mide lo que sí controlas: TTFS (tiempo desde cambio hasta primera visita del bot) y fresh coverage (visita en los últimos N días), junto a post-change error rate. Eso te dice si el ecosistema puede enterarse de tus cambios sin fricción.

¿Qué hago si tengo picos de coste por bots IA?

Primero identifica si el pico viene de caché MISS y de endpoints caros. Las mitigaciones típicas son: mejorar caché/TTL para contenido público, rate limiting por patrón en endpoints caros y, si procede, restringir bots de entrenamiento. Herramientas de infraestructura como Cloudflare han documentado opciones para bloquear “AI bots” y facilitar mitigación por categoría, lo cual te permite medir ahorro antes/después.

¿Cómo mido tráfico desde ChatGPT u otras IA si casi no hay clics?

Separa “citas” de “clics”. Para clics, usa UTMs y referers: OpenAI indica que los enlaces de referencia desde ChatGPT pueden incluir automáticamente utm_source=chatgpt.com, lo que te permite crear un canal “AI Referrals”. Para presencia sin clic, usa un panel de consultas objetivo y mide presence rate y citation rate semanalmente.

¿Qué métricas mínimas deberían ver SEO, Infra y Seguridad?

Un “mínimo común” por equipo:

  • SEO: coverage high-value (search), TTFS/fresh coverage, post-change errors, presence/citation rate, AI referrals.
  • Infra: GB/día, cache hit rate, origin hit rate, top URLs por coste, pico RPS, P95 latencia.
  • Seguridad: deny-set hits, 404 probing rate, IP/ASN churn, suspiciousness score, cambios de política/rollback.

¿Cada cuánto debo revisar estos KPIs?

Operación: semanal (picos, coste, errores, abuso). Estrategia: mensual (política por propósito, ROI de mitigación, impacto en visibilidad/derivación). Y siempre que cambies robots.txt o reglas del WAF/CDN, revisa 48–72h después (especialmente post-change errors y TTFS en high-value set).

Fuentes y documentación oficial recomendada

Para mantener este sistema de KPIs actualizado (porque cambian bots, user-agents, rangos IP y políticas),
estas son las referencias más útiles para revisar cada cierto tiempo: