La técnica más infravalorada para diagnosticar problemas GEO en PYME B2B es revisar los logs del servidor en busca de visitas de crawlers IA (OAI-SearchBot, ClaudeBot, PerplexityBot, GPTBot, Google-Extended). Si el bot no aparece, no puede citar tu marca — punto. El log file analysis cuesta cero, es 100% accionable y revela en 30 minutos información que herramientas comerciales de €500/mes no detectan. Esta guía te enseña paso a paso cómo acceder a tus logs, qué buscar y qué hacer con el resultado, por tipo de stack (WordPress, Shopify, Webflow, Next.js/Vercel, server custom).
Por qué log file analysis es la primera verificación que deberías hacer
La observación tactical Citora — confirmada repetidamente en 22 audits PYME B2B España 2025-2026: si el bot no rastrea, no te cita. Punto.
La lógica es trivial pero la mayoría de PYME B2B nunca lo verifica: para que ChatGPT cite tu marca, OAI-SearchBot tiene que haber accedido a tu site. Para que Claude te cite, ClaudeBot tiene que haber rastreado tus páginas. Para que Perplexity te recomiende, PerplexityBot tiene que haber pasado por tus URLs estratégicas.
Si esos bots no aparecen en tus logs de servidor, NO existes para esos motores. Y la pregunta correcta es por qué — robots.txt mal configurado, Cloudflare WAF bloqueando, rate limiting, errores 4xx/5xx que ahuyentan al crawler.
Qué es un log file y dónde está
Un log de servidor (server log) es un archivo de texto donde el servidor web registra todas las peticiones HTTP que recibe. Cada línea tiene típicamente:
- IP del cliente
- Timestamp
- Método HTTP (GET/POST)
- URL solicitada
- Código de respuesta (200, 404, etc.)
- Bytes servidos
- Referrer (de dónde venía)
- User-Agent (qué tipo de cliente — esto es lo que importa para identificar bots IA)
Formato típico (Apache combined log):
40.77.167.21 - - [22/May/2026:14:32:11 +0000] "GET /blog/geo-pyme-b2b HTTP/1.1" 200 5847 "-" "Mozilla/5.0 (compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot)"
Cómo acceder a tus logs según stack
WordPress en hosting compartido (SiteGround, Hostinger, IONOS, Raiola)
- Panel del hosting (cPanel típicamente)
- Sección "Logs" / "Métricas" / "Estadísticas"
- Buscar "Raw Access Logs" o "Logs sin procesar"
- Descargar archivos del último mes (.gz)
WordPress en VPS / dedicado (Nginx o Apache)
Acceso SSH al servidor:
# Nginx
tail -f /var/log/nginx/access.log
# Apache
tail -f /var/log/apache2/access.log
Shopify
Shopify no expone server logs directamente al merchant. Para ver crawlers necesitas un app — instalar SEO Bot Crawler Insights (gratuita) o similar. Alternativa: Google Search Console + integraciones de monitoring de Shopify para crawl stats.
Next.js en Vercel
Vercel guarda logs de cada request en el dashboard:
- Vercel Dashboard → tu proyecto → "Logs"
- Filtrar por header
User-Agent contiene OAI-SearchBot o ClaudeBot
- Para análisis serio, configurar Log Drain a Datadog, Better Stack, Axiom u otro tooling de análisis
Webflow
Webflow no expone logs. Necesitas Cloudflare delante (si lo tienes) o el dashboard nativo de Webflow para algunas estadísticas básicas. Para crawlers IA, monitorización indirecta vía Bing Webmaster Tools y Google Search Console.
Squarespace / Wix
No exponen logs. Saltarse este paso o migrar stack si GEO es prioridad estratégica para tu PYME.
User-Agents que debes buscar (lista canónica 2026)
| User-Agent | Operador | Importancia GEO |
OAI-SearchBot | OpenAI | Crítica — define ChatGPT search |
ChatGPT-User | OpenAI | Alta — fetch on-demand del usuario |
GPTBot | OpenAI | Media — training del modelo base |
ClaudeBot | Anthropic | Crítica — define Claude |
anthropic-ai | Anthropic | Media — variante histórica |
PerplexityBot | Perplexity | Crítica — define Perplexity |
Google-Extended | Google | Alta — Gemini training |
GoogleOther | Google | Media — crawls misceláneos |
Applebot-Extended | Apple | Media — Apple Intelligence |
CCBot | Common Crawl | Alta — corpus base múltiples LLMs |
Bytespider | ByteDance | Bloquear (ver guía) |
Suponiendo logs accesibles vía SSH o descargados localmente:
¿Cuántas peticiones de OAI-SearchBot en último mes?
grep -c "OAI-SearchBot" access.log
¿Qué URLs ha rastreado OAI-SearchBot?
grep "OAI-SearchBot" access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -30
¿Qué códigos de respuesta recibe? (200 OK / 403 bloqueado / 404 no encontrado)
grep "OAI-SearchBot" access.log | awk '{print $9}' | sort | uniq -c
¿Visitan los crawlers IA tus páginas críticas?
grep -E "OAI-SearchBot|ClaudeBot|PerplexityBot" access.log | grep -E "/about|/servicios|/productos" | awk '{print $7}' | sort | uniq -c
¿Distribución temporal de crawls IA en último mes?
grep -E "OAI-SearchBot|ClaudeBot|PerplexityBot" access.log | awk '{print $4}' | cut -d: -f1 | sort | uniq -c
Qué patrones buscar — diagnóstico por escenario
Escenario A — Cero apariciones de bots IA en últimos 30 días
Diagnóstico probable: robots.txt o WAF bloqueando + el motor IA dejó de intentar. Acciones:
- Verificar robots.txt explícitamente Allow OAI-SearchBot/ClaudeBot/PerplexityBot
- Verificar Cloudflare WAF — "Bot Fight Mode" debe estar OFF o Verified Bots allowlist debe incluir estos User-Agents
- Una vez corregido, el bot puede tardar 2-6 semanas en volver a probar — paciencia
Escenario B — Bots IA acceden pero solo a la home, no a blog/landings
Diagnóstico probable: estructura de internal linking pobre. El bot llega a la home pero no encuentra paths hacia las páginas profundas. Acciones:
- Sitemap.xml completo y referenciado en robots.txt
- Internal links desde home a páginas pillar críticas
- Asegurar páginas críticas tienen
<link rel="canonical"> apuntando a la URL correcta
Escenario C — Bots IA acceden pero reciben 403 / 429 / 500
Diagnóstico probable: WAF agresivo o rate limiting. Acciones:
- Identificar IP del bot en logs (las IPs de OpenAI están publicadas en openai.com/searchbot.json y similar para los demás)
- Whitelistear esas IPs en WAF
- Subir umbral de rate limiting para User-Agents identificados como bot legítimo
Escenario D — Bots IA crawlean mucho pero la marca sigue invisible en ChatGPT
Diagnóstico probable: el bot accede pero el contenido no tiene densidad factual / schema / entidad consolidada para ser citable. Acciones: ver nuestras guías sobre schema JSON-LD, E-E-A-T para GEO, y los 6 cimientos de entidad.
Frecuencia de revisión recomendada
| Etapa | Cadencia log file analysis | Qué buscar |
| Baseline GEO (mes 0) | Una vez | ¿Qué bots IA están entrando ya? |
| Onboarding cambios robots.txt / WAF | Semanal × 4 semanas | ¿Empiezan a aparecer bots nuevos? |
| Estado normal | Mensual | Frecuencia, errores, páginas tocadas |
| Drop inexplicable Visibility Score | Inmediato | ¿Bots dejaron de venir? |
| Publicación contenido pillar nuevo | 2 semanas después | ¿Crawlers IA llegaron al nuevo post? |
Herramientas opcionales si los comandos te resultan complejos
Si no tienes acceso CLI o prefieres UI:
- Screaming Frog Log File Analyser — desktop app, importa logs de cualquier formato, filtra por User-Agent, muestra timelines. Versión gratuita hasta 1.000 líneas.
- JetOctopus — SaaS con log file analyzer integrado. Pricing desde €100/mes.
- Datadog / Better Stack / Axiom — para stacks Next.js/Vercel/Node moderno, configurar Log Drain y filtrar dashboard por User-Agent. Free tier suele cubrir PYME B2B.
- Cloudflare Analytics — si tienes Cloudflare delante, dashboard nativo muestra bots conocidos con identificación. Gratuito en plan free.
Caso real — PYME B2B SaaS, marzo 2026
Cliente: SaaS RegTech B2B, €3M ARR. Visibility Score inicial 4/100 — invisible en los 4 LLMs. Cliente convencido de que el problema era "contenido insuficiente".
Log file analysis 30 minutos:
- OAI-SearchBot: 0 visitas en últimos 90 días
- ClaudeBot: 0 visitas en últimos 90 días
- PerplexityBot: 3 visitas en 90 días, todas 403
- Google-Extended: 0 visitas en últimos 90 días
Diagnóstico: Cloudflare Bot Fight Mode activado por defecto desde 2024 sin allowlist explícito. Los crawlers IA llevaban 18 meses bloqueados completamente. Cliente no tenía problema de contenido — tenía problema de acceso.
Fix de 2 horas: Cloudflare Verified Bots allowlist con 13 User-Agents IA principales. Logs sem 4 después: OAI-SearchBot 47 peticiones, ClaudeBot 22, PerplexityBot 31. Visibility Score sem 12: 23/100 (+19) sin tocar contenido nuevo.
El "ROI" del log file analysis fue infinito — 2 horas de trabajo técnico desbloqueando una estrategia GEO que llevaba 18 meses muerta sin que nadie supiera por qué.
Preguntas frecuentes
¿Cuánto tiempo guarda mi hosting los logs?
Variable: SiteGround/IONOS típicamente 30-90 días. VPS según configuración (puedes ajustarla, default 30-180 días). Vercel guarda 24 horas en free tier, 30 días en Pro, ilimitado con Log Drain. Si quieres análisis histórico, configurar retención larga + export semanal.
¿Cómo distingo un bot IA legítimo de un scraper falso que pone User-Agent OAI-SearchBot?
Cross-check IP con la lista oficial publicada por OpenAI en openai.com/searchbot.json. Anthropic publica IPs de ClaudeBot. Perplexity también. Si el User-Agent dice OAI-SearchBot pero la IP no está en la lista, es scraper o pentester — bloquéalo.
¿Los crawlers IA respetan robots.txt o lo ignoran?
OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended respetan robots.txt según documentación oficial. Common Crawl también. Bytespider y crawlers menos documentados son inconsistentes. Si quieres bloquear bots maliciosos que ignoran robots.txt, usa WAF / firewall a nivel red.
¿Necesito hacer log analysis si ya uso Google Search Console?
Sí. Google Search Console solo muestra crawlers Google (Googlebot, Google-Extended). NO muestra OAI-SearchBot, ClaudeBot, PerplexityBot. Los logs de tu servidor son la única fuente que ve los 4 motores IA en paralelo.
¿Cuánto tarda OAI-SearchBot en aparecer si lo desbloqueo hoy?
2-6 semanas típicamente. El crawler tiene memoria — si tu site lo rechazó muchas veces, deja de probar y pasa a baja prioridad de retry. Una vez vuelve a aparecer, indexación completa en 4-8 semanas más.
¿Es seguro mostrar User-Agent de crawler en mi log público?
Sí. El User-Agent es información pública declarada por el cliente HTTP. No revela datos sensibles. Lo que sí debes proteger es la IP del cliente si tu log es público (es PII en algunos contextos GDPR).
Siguiente paso
Si llevas meses con Visibility Score bajo y no sabes por qué, dedica 30 minutos a tus logs. Es la verificación más rentable que existe. Si tras hacerlo no sabes interpretar los datos, audit gratuito de Citora incluye revisión de accesibilidad de crawlers IA + recomendaciones específicas por stack.