GEO-Score
ServiciosSobre nosotrosAprenderClasificaciónInformesPreciosBlog

GEO-Score

La mejor herramienta de análisis GEO

Prueba tu contenido para motores de búsqueda con IA como ChatGPT, Perplexity y Claude. Obtén información práctica para mejorar tu visibilidad.

Recibe consejos de contenido GEO

Recursos

  • Base de conocimiento
  • ¿Qué es GEO?
  • Blog GEO
  • Verificador de puntuación GEO
  • Clasificación
  • Glosario de IA
  • Casos de estudio
  • GEO Insights
  • Informes

Herramientas GEO

  • Auditoría GEO completa del sitio web
  • Análisis GEO
  • Verificador de visibilidad en IA
  • Calculadora de ROI
  • Validador de Schema
  • Comprobador SEO de Perplexity
  • Comprobador SEO de ChatGPT
  • Comprobador del Modo IA de Google
  • Comprobador de crawlers de IA
  • Comprobador de agent readiness
  • Generador de llms.txt
  • Herramienta de query fan-out
  • AI Bot Log Analyzer
  • Comparación con la competencia
  • Servicios profesionales
  • Todas las herramientas

Analiza tu

  • Publicaciones de blog
  • Páginas de producto
  • Páginas de aterrizaje
  • Páginas de inicio
  • Páginas de servicios

GEO-Score

  • Sobre nosotros
  • Política de privacidad
  • Términos y condiciones
  • Contacto
  • Marca blanca
  • Construye tu éxito

Sigue a GEO-Score

Guías de búsqueda con IA

Optimización para búsqueda con IAPerplexity SEOChatGPT SEOLLM SEOVerificador de visibilidad en IATodas las guías →
Cumple con el RGPDDatos alojados en la UEHecho en los Países Bajos
KVK: 61855111BTW: NL004509498B76© 2026 GEO-score.onlineGEO-Score forma parte de Be-Found.
Potencia tu blog con Bloffee
  1. Inicio
  2. Guías
  3. Bots de IA en los logs

GEO técnico

Encuentra bots de IA en tus logs (y comprueba que son reales)

Tu analítica no ve los rastreadores de IA. Los logs de tu servidor sí. Aquí tienes comandos para copiar, las listas oficiales de IP y una lista de privacidad.

Actualizado y verificado el 19 de octubre de 2026

¿Prefieres no usar la línea de comandos?

Pega tu log en nuestro AI Bot Log Analyzer gratuito. Funciona en tu navegador, así que tu log nunca se sube.

Abrir el AI Bot Log Analyzer

Por qué tu analítica no muestra bots de IA

Herramientas como Google Analytics cuentan las visitas con un pequeño script que se ejecuta en el navegador. Un rastreador que solo descarga tu HTML nunca ejecuta ese script, así que nunca aparece.

Tu servidor web anota cada petición, de personas y de bots. Ese registro es tu log de acceso.

Los logs responden a tres preguntas: qué bots te visitan, qué páginas piden y si reciben la página o un error.

Dónde encontrar tus logs

  • nginx: el formato estándar “combined” ya tiene todo lo necesario. En Debian y Ubuntu el archivo suele estar en /var/log/nginx/access.log.
  • Apache: usa también el formato combined. El formato “common” no tiene user agent, así que con él no verás bots. Añade %{User-agent}i a tu LogFormat.
  • ¿Estás detrás de una CDN o un proxy? Entonces el primer campo puede mostrar la IP de tu proxy en cada petición. Configura primero la opción de IP real de tu servidor (o registra la IP reenviada del cliente); si no, todas las comprobaciones de IP de abajo fallarán.
  • ¿No tienes acceso a los logs en bruto? Mira el panel de tu hosting o pon una CDN delante de tu web. Más abajo te lo contamos.

Fuentes

  • Documentación del módulo de logs de nginx (se abre en una pestaña nueva)
  • Documentación de logs de Apache (se abre en una pestaña nueva)

Lee una línea del log

Aquí tienes una línea en formato combined, con una IP inventada. Cada parte responde a una pregunta.

Ejemplo de línea de log (formato combined)
203.0.113.7 - - [19/Oct/2026:08:01:02 +0000] "GET /pricing HTTP/1.1" 200 5123 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot"
  • Dirección IP: de dónde vino la petición. Es la que comprobarás con las listas oficiales.
  • Hora: cuándo pasó.
  • Petición: el método y la página. Aquí GET /pricing.
  • Código de estado: 200 es servida, 301/302 redirigida, 403 bloqueada, 404 no encontrada, 5xx error del servidor.
  • Bytes: cuánto se devolvió.
  • User agent: quién dice ser el visitante. Aquí GPTBot. Cualquiera puede escribirlo, así que por sí solo no prueba nada.

Los bots de IA que debes buscar

Esta lista sale de la documentación de cada empresa, comprobada el 19 de octubre de 2026.

Rastreadores y fetchers de IA, con sus listas oficiales de IP
User agentEmpresaQué haceSigue robots.txtLista de IP
OAI-SearchBotOpenAIÍndice de búsquedaSíOAI-SearchBot JSON (se abre en una pestaña nueva)
GPTBotOpenAIEntrenamientoSíGPTBot JSON (se abre en una pestaña nueva)
ChatGPT-UserOpenAIPetición de usuarioEn parteChatGPT-User JSON (se abre en una pestaña nueva)
Claude-SearchBotAnthropicÍndice de búsquedaSíClaude-SearchBot JSON (se abre en una pestaña nueva)
ClaudeBotAnthropicEntrenamientoSíClaudeBot JSON (se abre en una pestaña nueva)
Claude-UserAnthropicPetición de usuarioSíClaude-User JSON (se abre en una pestaña nueva)
PerplexityBotPerplexityÍndice de búsquedaSíPerplexityBot JSON (se abre en una pestaña nueva)
Perplexity-UserPerplexityPetición de usuarioNoPerplexity-User JSON (se abre en una pestaña nueva)
GooglebotGoogleBuscadorSíGooglebot JSON (se abre en una pestaña nueva)
Google-AgentGooglePetición de usuarioNoGoogle-Agent JSON (se abre en una pestaña nueva)Google-Agent JSON (se abre en una pestaña nueva)Google-Agent JSON (se abre en una pestaña nueva)
bingbotMicrosoftBuscadorSíbingbot JSON (se abre en una pestaña nueva)
ApplebotAppleBuscadorSíApplebot JSON (se abre en una pestaña nueva)
meta-externalagentMetaEntrenamientoSíNo publicada
meta-webindexerMetaÍndice de búsquedaSíNo publicada
meta-externalfetcherMetaPetición de usuarioEn parteNo publicada
AmazonbotAmazonEntrenamientoSíNo publicada
Amzn-SearchBotAmazonÍndice de búsquedaSíNo publicada
Amzn-UserAmazonPetición de usuarioEn parteNo publicada
DuckAssistBotDuckDuckGoÍndice de búsquedaSíDuckAssistBot JSON (se abre en una pestaña nueva)
MistralAI-UserMistral AIPetición de usuarioSíNo publicada
MistralAI-IndexMistral AIÍndice de búsquedaNo indicadoNo publicada
MistralAI-TrainingMistral AIEntrenamientoSíNo publicada
CCBotCommon CrawlEntrenamientoSíCCBot JSON (se abre en una pestaña nueva)

Google-Extended y Applebot-Extended son tokens de robots.txt, no rastreadores. Nunca aparecen en un log.

Anthropic no publica cadenas de user agent completas. En los logs se ven así: “compatible; Claude-User/1.0; +claudebot@anthropic.com”.

Comandos para copiar

Funcionan con un log en formato combined. Los probamos el 19 de octubre de 2026 con grep y awk en macOS. Cambia access.log por tu archivo.

Contar peticiones por bot de IA
grep -oE 'GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Perplexity-User|meta-externalagent|Amazonbot|Applebot|DuckAssistBot|MistralAI-User|CCBot' access.log | sort | uniq -c | sort -rn
Códigos de estado por bot
awk -F'"' '{ split($3,a," "); if (match($6,/GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Perplexity-User/)) print substr($6,RSTART,RLENGTH), a[1] }' access.log | sort | uniq -c
Páginas más pedidas por un bot
grep 'OAI-SearchBot' access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
Solo errores (4xx y 5xx) de bots de IA
awk -F'"' '$6 ~ /GPTBot|OAI-SearchBot|ChatGPT-User|ClaudeBot|Claude-User|Claude-SearchBot|PerplexityBot|Perplexity-User/ { split($3,a," "); if (a[1] >= 400) print a[1], $2 }' access.log
Buscar en logs antiguos comprimidos
zgrep -c 'GPTBot' /var/log/nginx/access.log.*.gz

Comprueba cada IP de bot con Python

Este script descarga las listas oficiales de IP e imprime VERIFIED o NOT IN LIST para cada línea de bot. Solo usa la biblioteca estándar de Python.

verify_bots.py
# Usage: python3 verify_bots.py access.log
import ipaddress, json, re, sys, urllib.request

LISTS = {
    "GPTBot": "https://openai.com/gptbot.json",
    "OAI-SearchBot": "https://openai.com/searchbot.json",
    "ChatGPT-User": "https://openai.com/chatgpt-user.json",
    "ClaudeBot": "https://claude.com/crawling/bots.json",
    "Claude-User": "https://claude.com/crawling/bots.json",
    "Claude-SearchBot": "https://claude.com/crawling/bots.json",
    "PerplexityBot": "https://www.perplexity.com/perplexitybot.json",
    "Perplexity-User": "https://www.perplexity.com/perplexity-user.json",
    "Googlebot": "https://developers.google.com/static/crawling/ipranges/common-crawlers.json",
    "bingbot": "https://www.bing.com/toolbox/bingbot.json",
}
cache = {}

def networks(url):
    if url not in cache:
        req = urllib.request.Request(url, headers={"User-Agent": "log-check/1.0"})
        data = json.load(urllib.request.urlopen(req, timeout=20))
        cache[url] = [ipaddress.ip_network(p.get("ipv4Prefix") or p.get("ipv6Prefix"))
                      for p in data["prefixes"]]
    return cache[url]

bot = re.compile("|".join(sorted(map(re.escape, LISTS), key=len, reverse=True)))
for line in open(sys.argv[1], errors="replace"):
    ua = line.split('"')[5] if line.count('"') >= 6 else line
    match = bot.search(ua)
    if not match:
        continue
    try:
        ip = ipaddress.ip_address(line.split()[0])
    except ValueError:
        continue
    ok = any(ip in net for net in networks(LISTS[match.group(0)]))
    print("VERIFIED   " if ok else "NOT IN LIST", match.group(0), ip)

¿Es de verdad GPTBot? Comprueba la IP

Un user agent es solo texto. Cualquiera puede enviar “GPTBot”. La propia Perplexity recomienda combinar el user agent con una verificación de IP.

Opción 1: las listas oficiales de IP

OpenAI, Anthropic, Perplexity, Google, Microsoft (Bing), Apple, DuckDuckGo y Common Crawl publican listas JSON con los rangos de IP de sus bots. Si la IP está en la lista, la petición vino de la red de esa empresa. Los enlaces están en la tabla de arriba.

Opción 2: DNS inverso

Google: busca el nombre de host de la IP. Debe terminar en googlebot.com, google.com o googleusercontent.com, y al buscar ese nombre debes obtener la misma IP. Con Bing es igual, con nombres que terminan en search.msn.com.

Comprobación de DNS inverso para Googlebot
host 66.249.66.1
# 1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com.
host crawl-66-249-66-1.googlebot.com
# crawl-66-249-66-1.googlebot.com has address 66.249.66.1  ← same IP: real Googlebot

“No está en la lista” no siempre significa falso. Las listas cambian, y el archivo JSON de Bing se generó por última vez en enero de 2024. Tómalo como “revisar”, no como prueba.

Anthropic advierte que bloquear por IP puede no funcionar bien ni garantizar una exclusión duradera. Usa robots.txt para darte de baja.

Fuentes

  • Google: verificar Googlebot (se abre en una pestaña nueva)
  • Bing: verificar bingbot (se abre en una pestaña nueva)
  • Perplexity: bots (se abre en una pestaña nueva)

Qué te dicen los números

  • Entrenamiento, búsqueda y peticiones de usuario son cosas distintas. GPTBot y ClaudeBot recogen datos de entrenamiento. OAI-SearchBot, Claude-SearchBot y PerplexityBot crean índices de búsqueda. ChatGPT-User, Claude-User y Perplexity-User piden una página porque alguien pregunta por ella en ese momento.
  • Muchas respuestas 403 o 5xx significan que bloqueas o rompes el acceso de la IA. Revisa tu firewall, la configuración de bots de tu CDN y tu robots.txt.
  • Las peticiones a robots.txt y llms.txt muestran qué bots leen tus reglas. OpenAI dice que OAI-SearchBot y GPTBot pueden añadir una marca de robots.txt a su user agent cuando piden ese archivo.
  • Las peticiones de usuario pueden saltarse robots.txt. Según OpenAI, las reglas de robots.txt pueden no aplicarse a ChatGPT-User, y según Perplexity, Perplexity-User suele ignorarlas.
  • Una visita no es una cita. Significa que un bot leyó tu página, no que una respuesta de IA vaya a citarla.
  • Configura robots.txt para rastreadores de IA
  • Cómo conseguir que la IA cite tus páginas

¿Sin acceso al servidor? Usa tu CDN

AI Crawl Control de Cloudflare (antes AI Audit) muestra qué servicios de IA rastrean tu web y qué rastreadores ignoran tus reglas. Según Cloudflare, está disponible en todos los planes.

Cloudflare Logpush puede exportar logs de peticiones con campos como ClientIP, ClientRequestUserAgent, ClientRequestPath y EdgeResponseStatus. Nuestro analizador también lee esas líneas JSON.

Fuentes

  • Cloudflare AI Crawl Control (se abre en una pestaña nueva)
  • Campos de Cloudflare Logpush (se abre en una pestaña nueva)

Logs y privacidad (RGPD)

Las direcciones IP pueden ser datos personales. El Tribunal de Justicia de la UE lo dijo sobre las IP dinámicas en el caso Breyer (C-582/14, 19 de octubre de 2016), y el considerando 30 del RGPD nombra las direcciones IP como identificadores en línea.

Las IP de los bots son de empresas, pero el mismo log también guarda las IP de tus visitantes. Un enfoque práctico:

  • Separa primero las líneas de bots y trabaja con ellas.
  • Guarda los logs en bruto solo el tiempo necesario, por ejemplo para seguridad. El RGPD no fija un número de días; dice que no guardes datos personales más tiempo del necesario.
  • Guarda totales (bot, día, página, estado, verificado o no) en lugar de IP.
  • Acorta o aplica un hash a la IP una vez comprobada.
  • No subas logs en bruto a una herramienta externa sin un contrato de encargo de tratamiento. Nuestro analizador funciona en tu navegador, así que no se sube nada.

Esto es información general, no asesoramiento jurídico.

Fuentes

  • TJUE, asunto C-582/14 (Breyer) (se abre en una pestaña nueva)
  • RGPD, considerando 30 (se abre en una pestaña nueva)

Preguntas frecuentes

¿Cómo sé si ChatGPT visita mi web?

Busca en tu log de acceso OAI-SearchBot (búsqueda de ChatGPT), ChatGPT-User (petición de un usuario) y GPTBot (entrenamiento). Luego compara las IP con las listas de OpenAI.

¿Por qué Google Analytics no muestra GPTBot?

Google Analytics cuenta las visitas con un script en el navegador. Los rastreadores que solo descargan tu HTML no lo ejecutan.

¿Cómo sé si una petición de GPTBot es real?

Compara su IP con openai.com/gptbot.json. Si no está en la lista, trata la petición como no verificada.

¿Qué bots ignoran robots.txt?

Según su propia documentación: los bots que piden una página porque un usuario lo pidió. OpenAI dice que robots.txt puede no aplicarse a ChatGPT-User, Perplexity dice que Perplexity-User suele ignorarlo, y Google dice lo mismo de sus fetchers activados por usuarios.

¿Qué significan los errores 403 para bots de IA?

Tu servidor, firewall o CDN rechazó la petición. Si quieres aparecer en la búsqueda con IA, busca la regla que bloquea al bot y cámbiala.

¿Puedo registrar direcciones IP?

Normalmente sí, con un fin claro como la seguridad, pero las IP pueden ser datos personales. Guarda los logs poco tiempo, almacena totales en lugar de IP y menciona el registro en tu política de privacidad. Esto no es asesoramiento jurídico.

Sigue aprendiendo

  • AI Bot Log Analyzer gratuito (funciona en tu navegador)
  • Configura robots.txt para rastreadores de IA
  • Referencia: user agents de bots de IA
  • La guía de llms.txt
  • Generador de robots.txt para bots de IA
  • Sigue las visitas de herramientas de IA

Haz que los bots encuentren algo que valga la pena

Rastreado no es citado. Mira cómo leen tu página las herramientas de IA, en 22 puntos.

Analizar mi página