El escáner reparte 100 puntos entre cinco áreas. Publicamos cada comprobación, lo que vale y cómo se mide, para que puedas verificar el resultado y reproducirlo. Si cambiamos un peso, cambia la versión del motor, que sale en cada informe.
| Área | Puntos |
|---|---|
| Acceso para motores de IA | 30 |
| Datos estructurados | 20 |
| Metadatos e indexación | 20 |
| Contenido citable | 20 |
| Resto del sitio | 10 |
Nota: A desde 85 (bien preparado para la era de la ia); B desde 65 (base sólida con mejoras pendientes); C desde 40 (visibilidad limitada en motores de ia); D por debajo (prácticamente invisible para la ia).
Si un motor no puede entrar en tu web, nada de lo demás importa. Esta categoría mide si los rastreadores tienen permiso y si, en la práctica, tu servidor los deja pasar.
Pedimos /robots.txt en la raíz del dominio. Cuenta si responde 200 con texto (no con la portada en HTML, como hacen muchas SPA).
Evaluamos cada user-agent con la semántica de Google: gana el grupo más específico, y dentro de él la regla más larga. Los bots pesan según su función: los de búsqueda y respuesta (Googlebot, Bingbot, OAI-SearchBot, Claude-SearchBot, PerplexityBot, DuckAssistBot) ×3; los que visitan por encargo del usuario (ChatGPT-User, Claude-User, Perplexity-User) ×2; los de entrenamiento (GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, Meta-ExternalAgent, CCBot) ×1. Bloquear uno de búsqueda es crítico; bloquear solo los de entrenamiento es un aviso, porque es una decisión legítima.
Pedimos tu página tres veces más, identificándonos como GPTBot, ClaudeBot y PerplexityBot (con nuestra firma al final del user-agent). Si el servidor responde 4xx, sirve una página de desafío del CDN o devuelve menos del 30% del texto que nos dio a nosotros, lo marcamos. Si la prueba no se puede completar, damos la mitad de los puntos y lo decimos. Si tu servidor rechaza incluso al escáner, reintentamos una vez presentándonos como navegador para poder analizar la web, y lo señalamos como aviso.
Mitad de los puntos por publicarlo en texto plano; la otra mitad si sigue la propuesta: empieza por un título Markdown y tiene al menos 3 enlaces.
El declarado en robots.txt o, si no hay, /sitemap.xml y /sitemap_index.xml. Cuenta si contiene <urlset> o <sitemapindex>.
| User-agent | Plataforma | Tipo | Peso |
|---|---|---|---|
| Googlebot | Google Search, AI Overviews y AI Mode | Búsqueda y respuestas | ×3 |
| Bingbot | Bing y Microsoft Copilot | Búsqueda y respuestas | ×3 |
| OAI-SearchBot | ChatGPT Search | Búsqueda y respuestas | ×3 |
| Claude-SearchBot | Claude (búsqueda) | Búsqueda y respuestas | ×3 |
| PerplexityBot | Perplexity | Búsqueda y respuestas | ×3 |
| DuckAssistBot | DuckDuckGo (DuckAssist) | Búsqueda y respuestas | ×3 |
| ChatGPT-User | ChatGPT (visitas a petición del usuario) | Visitas por encargo | ×2 |
| Claude-User | Claude (visitas a petición del usuario) | Visitas por encargo | ×2 |
| Perplexity-User | Perplexity (visitas a petición del usuario) | Visitas por encargo | ×2 |
| GPTBot | OpenAI (entrenamiento de modelos) | Entrenamiento | ×1 |
| ClaudeBot | Anthropic (entrenamiento de modelos) | Entrenamiento | ×1 |
| Google-Extended | Gemini (entrenamiento y respuestas de Gemini; no afecta a AI Overviews) | Entrenamiento | ×1 |
| Applebot-Extended | Apple Intelligence (entrenamiento) | Entrenamiento | ×1 |
| Meta-ExternalAgent | Meta AI (entrenamiento) | Entrenamiento | ×1 |
| CCBot | Common Crawl (datasets con los que se entrenan muchos modelos) | Entrenamiento | ×1 |
Los datos estructurados (schema.org en JSON-LD) le dicen a buscadores y modelos quién eres y qué es cada página, sin tener que deducirlo del texto.
Al menos un bloque application/ld+json que sea JSON válido. Un bloque malformado es crítico: los motores lo descartan entero.
Un tipo que identifique quién está detrás: Organization, LocalBusiness, ProfessionalService, Person y similares.
Un punto por cada dato de la entidad: name, url (o @id), logo (o image) y al menos un sameAs hacia perfiles externos.
Un tipo que describa la página: WebSite, WebPage, Article, BlogPosting, FAQPage, Service, Product, BreadcrumbList, HowTo, entre otros.
Metadatos e indexación deciden si la página puede aparecer y cómo se presenta. Un noindex o un nosnippet anulan todo lo demás.
Entre 10 y 70 caracteres: puntos completos. Fuera de rango: 1 punto. Sin título: crítico.
Entre 50 y 170 caracteres: puntos completos. Fuera de rango: 1 punto.
Declarado y apuntando al mismo sitio. Un canonical a otro dominio cede la autoría y se marca.
og:title, og:description y og:image presentes.
Atributo lang en la etiqueta <html>.
Exactamente un H1 fuera de scripts y plantillas.
Sin noindex ni en la meta robots/googlebot ni en la cabecera HTTP X-Robots-Tag (general o dirigida a Googlebot o a un bot de IA).
Sin nosnippet ni max-snippet:0 (crítico: te pueden encontrar pero no citar). max-snippet por debajo de 50 caracteres deja 1 punto; bloques con data-nosnippet, 2.
La mayoría de rastreadores de IA no ejecutan JavaScript y citan fragmentos concretos. Esta categoría mide si tu contenido está en el HTML y en un formato fácil de extraer.
Palabras visibles en el HTML inicial, fuera de scripts, estilos y <head>. 300 o más: puntos completos; entre 150 y 299: la mitad; menos: crítico.
Al menos dos H2/H3.
Al menos un H2/H3/H4 formulado como pregunta (¿…?, «cómo», «qué», «cuánto»…): el formato que mejor encaja con cómo se pregunta a un asistente.
Al menos una lista (2+ elementos) o tabla (2+ filas) fuera de menús, cabecera y pie.
En páginas normales: enlace a «sobre nosotros» (2 puntos) y a contacto (1). En artículos (Article/BlogPosting u og:type article): autor declarado, una fecha de los últimos 18 meses y enlace a «sobre nosotros» o contacto, un punto cada uno.
La URL final, tras redirecciones, se sirve por https.
Una portada impecable no sirve si el resto de la web no se puede leer. Revisamos una muestra para ver si los problemas se repiten.
Elegimos URLs del sitemap y de los enlaces de la página, una por sección (/servicios, /blog, /contacto…). En cada una comprobamos 5 cosas: que responda, que sea indexable, que tenga título, JSON-LD y al menos 150 palabras sin JavaScript. La nota es la proporción de comprobaciones superadas. Si no hay forma de descubrir otras páginas, damos la mitad y lo avisamos.
Cada problema lleva los puntos que recuperarías al arreglarlo y un esfuerzo orientativo (bajo, medio o alto). El resumen ejecutivo del informe elige los tres con más retorno: puntos recuperables, ×1,5 si es crítico, divididos por el esfuerzo (×1; ×1,6; ×2,6). La «puntuación estimada» suma esos tres arreglos a tu nota actual.
Eso es lo que cubre la auditoría GEO. Sobre la versión anterior del motor, lee cómo puntuaba la v1 y qué no medía.
Porque bloquearlos tiene consecuencias distintas. Si bloqueas OAI-SearchBot, PerplexityBot o Googlebot, esas plataformas no pueden leer tu web cuando alguien les pregunta y no pueden citarte. Si bloqueas GPTBot o CCBot, tu contenido no entra en el entrenamiento de los modelos: pierdes algo de presencia en lo que «saben», pero sigues pudiendo aparecer en sus respuestas con búsqueda. Por eso los primeros pesan el triple y su bloqueo es crítico, y el de los segundos es un aviso.
No. Según la documentación de Google, Google-Extended solo decide si tu contenido se usa para entrenar Gemini y para sus respuestas en las apps de Gemini. AI Overviews y AI Mode forman parte de la Búsqueda y dependen de Googlebot. Por eso el escáner evalúa los dos por separado.
Porque pedimos tu página con el user-agent de GPTBot, ClaudeBot y PerplexityBot desde nuestros servidores, no desde los de OpenAI, Anthropic o Perplexity. Si tu firewall verifica los bots por su dirección IP, puede bloquearnos a nosotros y dejar pasar a los reales. Lo avisamos en el propio informe: si sale este hallazgo, compruébalo en el panel de tu CDN.
Porque eso no se puede medir bien con una sola consulta automática: las respuestas cambian según la pregunta, el país, el historial y el modelo. El escáner mide las barreras técnicas, que son deterministas. Medir las citas reales requiere decenas de preguntas repetidas en varios modelos a lo largo del tiempo, y eso es parte de la auditoría GEO.