Registro de comprobaciones

126 comprobaciones. Cada una se puede refutar.

Cada hallazgo de una auditoría sale de una de estas reglas. Las puntuaciones se calculan con ellas de forma determinista; un modelo de lenguaje nunca decide una puntuación. Cada regla indica cómo sabría usted que es errónea, así que un hallazgo es un argumento que puede comprobar, no un veredicto.

Técnico 30 comprobaciones

  1. Una página de contenido indexable lleva noindex

    CríticoPor páginaSEOAEOGEOtechnical.noindex-accident

    Cómo sabríamos que es erróneo: Si estas páginas se excluyen a propósito (entorno de pruebas, utilidad ligera), reclasifíquelo, si no, quitar el noindex debe restaurar la indexación en GSC.

  2. La canónica apunta a una forma de URL distinta de la publicada

    AltoPor páginaSEOtechnical.canonical-inconsistent

    Cómo sabríamos que es erróneo: Alinee la canónica con la forma publicada (la del sitemap); los avisos de duplicado/canónica de GSC para estas URLs deberían desaparecer en semanas.

  3. La página es noindex pero canonicaliza a otra URL

    AltoPor páginaSEOtechnical.canonical-noindex-conflict

    Cómo sabríamos que es erróneo: Revise el destino canónico en la Inspección de URL de GSC: si sigue indexado y sirviéndose, la señal contradictoria se absorbió. Elija una intención (noindex con autocanónica, o indexable con canónica cruzada) y vuelva a inspeccionar.

  4. Las páginas de contenido se sirven sin poder almacenarse en caché (no-store / private)

    AltoTodo el sitioSEOtechnical.content-pages-uncached

    Cómo sabríamos que es erróneo: Active ISR/s-maxage en la ruta; las cabeceras de respuesta pasan a ser cacheables y la tasa de aciertos de la CDN se vuelve observable.

  5. Contenido mixto: recursos http:// en una página https

    AltoPor páginaSEOtechnical.mixed-content

    Cómo sabríamos que es erróneo: La consola del navegador muestra avisos de contenido mixto antes y ninguno después.

  6. La página devuelve 4xx/5xx

    AltoTodo el sitioSEOtechnical.page-error-status

    Cómo sabríamos que es erróneo: Vuelva a descargarla tras la corrección: un estado 200 y la (re)indexación en el informe de cobertura de GSC confirman la resolución.

  7. No se encontró ningún sitemap XML

    AltoTodo el sitioSEOtechnical.sitemap-missing

    Cómo sabríamos que es erróneo: Añada /sitemap.xml (y referéncielo desde robots.txt); el informe de sitemaps de GSC debería aceptarlo y ampliarse el descubrimiento.

  8. Falta la meta viewport (renderizado móvil)

    AltoPor páginaSEOtechnical.viewport-missing

    Cómo sabríamos que es erróneo: La prueba de optimización para móviles falla sin ella y pasa después de añadirla, es una comprobación binaria.

  9. La autorreferencia hreflang no coincide con la canónica de la página

    MedioPor páginaSEOhreflang.canonical-mismatch

    Cómo sabríamos que es erróneo: Cuando la canónica apunta a otro sitio distinto de la fila propia de hreflang, Google descarta el clúster de idiomas. Hágalos idénticos y vuelva a validar en un comprobador de hreflang.

  10. Valores hreflang con códigos inválidos o no canónicos

    MedioPor páginaSEOhreflang.invalid-codes

    Cómo sabríamos que es erróneo: Valide con una herramienta de pruebas de hreflang: Google ignora por completo los códigos inválidos; la forma canónica es lang-REGION (es-ES).

  11. Etiquetas hreflang de retorno rotas (dentro de la muestra rastreada)

    MedioTodo el sitioSEOhreflang.return-tags-broken

    Cómo sabríamos que es erróneo: A→B sin B→A invalida el par para Google; el muestreo del rastreo puede ocultar enlazadores, confírmelo con un rastreo completo de hreflang antes de hacer cambios grandes.

  12. El conjunto hreflang no hace referencia a la propia página

    MedioPor páginaSEOhreflang.self-reference-missing

    Cómo sabríamos que es erróneo: La documentación de hreflang de Google exige que cada página se liste a sí misma; añada la fila propia y vuelva a validar.

  13. Falta la canónica

    MedioPor páginaSEOtechnical.canonical-missing

    Cómo sabríamos que es erróneo: Si GSC no muestra agrupación de URLs duplicadas para estas páginas, el impacto era bajo; aun así es un seguro barato.

  14. Páginas duplicadas byte a byte en URLs distintas

    MedioTodo el sitioSEOtechnical.duplicate-content-pages

    Cómo sabríamos que es erróneo: Consolide con canónica o redirección, o despublique; tras la corrección ningún par de URLs indexables comparte el mismo hash de contenido.

  15. No hay favicon declarado

    MedioTodo el sitioSEOtechnical.favicon-missing

    Cómo sabríamos que es erróneo: Tras añadir el juego de iconos, el favicon debería sustituir al globo genérico en los resultados en cuestión de días (compruébelo con una consulta site:).

  16. HTML mayor que el límite de procesamiento de 2 MB

    MedioPor páginaSEOGEOAEOtechnical.html-size-cap

    Cómo sabríamos que es erróneo: Google procesa aproximadamente los primeros 2 MB de un archivo HTML. Descargue la página y compruebe si su contenido principal y el JSON-LD quedan antes de ese punto: si es así, es solo un problema de peso, no de truncamiento.

  17. robots.txt declara un sitemap que no resuelve

    MedioTodo el sitioSEOtechnical.robots-sitemap-declaration-broken

    Cómo sabríamos que es erróneo: Abra en el navegador cada URL de Sitemap: de robots.txt, un sitemap activo devuelve XML, no un 404 ni una página HTML. Corrija la URL o elimine la línea; el informe de Sitemaps de GSC debería dejar de mostrar un error de descarga.

  18. Páginas rastreadas que faltan en el sitemap

    MedioTodo el sitioSEOtechnical.sitemap-coverage-gap

    Cómo sabríamos que es erróneo: Añada las URLs listadas al sitemap; en GSC debería reducirse su retraso de indexación dependiente del descubrimiento.

  19. El sitemap contiene URLs http://

    MedioTodo el sitioSEOtechnical.sitemap-http-urls

    Cómo sabríamos que es erróneo: Cada entrada http cuesta un salto de redirección al rastrear; cámbielas a https y el salto desaparece.

  20. El sitemap existe pero está vacío o no se puede analizar

    MedioTodo el sitioSEOtechnical.sitemap-invalid

    Cómo sabríamos que es erróneo: Valide el XML; en cuanto se analice con al menos un <url><loc>, este hallazgo desaparece en la siguiente auditoría.

  21. La URL descubierta redirige a otra URL

    MedioTodo el sitioSEOtechnical.sitemap-url-redirects

    Cómo sabríamos que es erróneo: Actualice el sitemap y los enlaces internos a las URLs finales; vuelva a rastrear, cero entradas redirigidas lo confirma.

  22. Conjuntos hreflang sin x-default

    BajoTodo el sitioSEOhreflang.x-default-missing

    Cómo sabríamos que es erróneo: x-default dirige a los usuarios cuyo idioma no coincide; sin él Google elige de forma arbitraria, añádalo y observe las impresiones internacionales.

  23. Faltan etiquetas Open Graph

    BajoPor páginaSEOtechnical.og-tags-missing

    Cómo sabríamos que es erróneo: Comparta la URL en una red social: sin OG, la tarjeta de vista previa se basa en conjeturas.

  24. Sin robots.txt

    BajoTodo el sitioSEOGEOtechnical.robots-missing

    Cómo sabríamos que es erróneo: Sin él los rastreadores asumen permiso total, pero usted pierde el sitio donde declarar sitemaps y su política sobre rastreadores de IA; añada uno y esto se resuelve.

  25. Faltan cabeceras de seguridad (HSTS / nosniff / XFO)

    BajoTodo el sitioSEOtechnical.security-headers-missing

    Cómo sabríamos que es erróneo: No es un factor de posicionamiento en sí; trátelo como higiene de confianza. Si las cabeceras existen en la CDN pero no en el origen, verifique la respuesta publicada.

  26. El sitemap incluye <priority>/<changefreq> (Google los ignora)

    BajoTodo el sitioSEOtechnical.sitemap-deprecated-tags

    Cómo sabríamos que es erróneo: Google documenta que ignora ambos; quitarlos reduce el archivo y elimina señales falsas.

  27. Todos los lastmod del sitemap son idénticos

    BajoTodo el sitioSEOtechnical.sitemap-identical-lastmod

    Cómo sabríamos que es erróneo: Google solo tiene en cuenta un lastmod verificablemente exacto; las marcas uniformes se leen como ruido generado en la compilación.

  28. Los valores <lastmod> del sitemap no son fechas W3C válidas

    BajoTodo el sitioSEOtechnical.sitemap-lastmod-invalid

    Cómo sabríamos que es erróneo: Pase el sitemap por cualquier validador de sitemaps XML (o por el informe de Sitemaps de GSC): un lastmod válido es AAAA-MM-DD o una marca ISO 8601 completa. Si los valores ya son válidos en el archivo publicado, el rastreo tomó una copia antigua.

  29. El sitio mezcla URLs con y sin barra final

    BajoTodo el sitioSEOtechnical.trailing-slash-inconsistent

    Cómo sabríamos que es erróneo: Pida ambas formas de una URL: si una redirige con 301 a la otra, el sitio es consistente a nivel de servidor y esto es cosmético. Si no, ambas formas pueden indexarse como duplicados: elija una y redirija la otra.

On-page 28 comprobaciones

  1. Falta el H1

    AltoPor páginaSEOAEOonpage.h1-missing

    Cómo sabríamos que es erróneo: Si tras añadir H1 en otras páginas el posicionamiento y las citas de IA de estas no cambian, el H1 no era la restricción.

  2. Falta <title>

    AltoPor páginaSEOAEOonpage.title-missing

    Cómo sabríamos que es erróneo: Si las páginas sin título siguen obteniendo snippets y CTR normales, este hallazgo era irrelevante.

  3. Una capa cubre la pantalla móvil al cargar

    AltoPor páginaSEOrender.intrusive-interstitial

    Cómo sabríamos que es erróneo: Cargue la página en una ventana móvil de 375x812 y mire la primera pantalla. Si ninguna capa cubre la mitad antes de interactuar, o la capa es un aviso legal (cookies / RGPD / verificación de edad, que excluimos), este hallazgo es erróneo.

  4. Una imagen de producto generada por IA no lleva IPTC DigitalSourceType

    MedioPor páginaSEOimages.iptc-ai-source-missing

    Cómo sabríamos que es erróneo: Lea el XMP del archivo con exiftool: si DigitalSourceType está presente con un valor IPTC de IA (p. ej. trainedAlgorithmicMedia), este hallazgo es erróneo. Si la imagen no fue generada por IA, la firma del generador que detectamos es incorrecta: envíenos el archivo y retiraremos el patrón.

  5. Las imágenes solo se cargan con JavaScript (sin src en el HTML)

    MedioPor páginaSEOGEOimages.js-lazy-without-src

    Cómo sabríamos que es erróneo: Descargue la página con JavaScript desactivado (curl) y busque <img src>: si las imágenes están, está resuelto. Mover la URL a src y conservar loading=lazy da ambas cosas.

  6. Falta el atributo lang en html

    MedioPor páginaSEOGEOonpage.html-lang-missing

    Cómo sabríamos que es erróneo: Si los motores detectan igualmente el idioma correcto, esto es higiene, pero corregirlo no cuesta nada.

  7. Imágenes sin texto alternativo

    MedioPor páginaSEOonpage.img-alt-missing

    Cómo sabríamos que es erróneo: Si el tráfico de búsqueda de imágenes y las auditorías de accesibilidad no muestran carencias, los alt restantes son decorativos.

  8. Falta la meta descripción

    MedioPor páginaSEOonpage.meta-description-missing

    Cómo sabríamos que es erróneo: Si los snippets de estas páginas se leen bien (extraídos automáticamente), el impacto se limita a perder el control del snippet.

  9. og:url apunta a una página distinta de la publicada

    MedioPor páginaSEOonpage.og-url-mismatch

    Cómo sabríamos que es erróneo: Comparta la URL: la vista previa debe resolver a esta página y no a la de inicio; tras la corrección og:url coincide con la URL canónica.

  10. Títulos duplicados entre páginas

    MedioTodo el sitioSEOonpage.title-duplicate

    Cómo sabríamos que es erróneo: La agrupación tipo 'título duplicado' de GSC desaparece cuando los títulos son únicos; si las páginas apuntan a las mismas consultas a propósito, consolide en lugar de diferenciar.

  11. Título de más de 60 caracteres

    MedioPor páginaSEOonpage.title-too-long

    Cómo sabríamos que es erróneo: Si Google muestra el título completo sin truncar para estas páginas, la longitud no era un problema.

  12. Objetivos táctiles menores de 24x24 px en móvil

    MedioPor páginaSEOrender.touch-targets-small

    Cómo sabríamos que es erróneo: Abra la página a 375px de ancho y mida los elementos listados. Si cada uno mide al menos 24x24 px CSS, o está dentro de una frase (excepción en línea de WCAG 2.5.8, que ya excluimos), este hallazgo es erróneo.

  13. Controles interactivos sin nombre accesible

    MedioPor páginaSEOAEOrender.unnamed-controls

    Cómo sabríamos que es erróneo: Inspeccione los elementos listados en el árbol de accesibilidad (devtools > Accessibility). Si cada uno expone un nombre mediante texto, aria-label, aria-labelledby, alt o title, este hallazgo es erróneo. Los elementos ocultos con aria-hidden ya están excluidos.

  14. Texto alternativo fuera de la banda de 10-125 caracteres

    BajoPor páginaSEOimages.alt-length-band

    Cómo sabríamos que es erróneo: Por debajo de 10 caracteres no aporta significado para la recuperación; por encima de 125 los lectores de pantalla lo truncan. Reescríbalo y confírmelo con las impresiones en búsqueda de imágenes.

  15. Nombres de archivo de imagen por defecto de cámara o sin significado

    BajoPor páginaSEOimages.filename-syntax

    Cómo sabríamos que es erróneo: Los nombres descriptivos en kebab-case son una entrada de relevancia en búsqueda de imágenes; renómbrelos (o sírvalos con un alias de CDN) y observe las impresiones de esos recursos.

  16. IPTC DigitalSourceType existe pero no es un valor de IPTC NewsCodes

    BajoPor páginaSEOimages.iptc-source-type-invalid

    Cómo sabríamos que es erróneo: Compare el valor con el vocabulario IPTC DigitalSourceType NewsCodes. Si el valor está en ese vocabulario y aun así lo marcamos, este hallazgo es erróneo.

  17. Páginas de contenido a más de 3 clics de la página de inicio

    BajoTodo el sitioSEOonpage.crawl-depth-deep

    Cómo sabríamos que es erróneo: La profundidad se mide solo sobre la muestra rastreada, un enlace desde una página no rastreada puede acortar el camino. Verifíquelo con un rastreo completo; si la profundidad es real, enlace la página desde un hub o el menú principal y observe la frecuencia de rastreo en GSC.

  18. El artículo largo no cita ninguna fuente externa

    BajoPor páginaSEOGEOonpage.external-citations-missing

    Cómo sabríamos que es erróneo: Los enlaces salientes a fuentes primarias son una señal de autoridad tanto para personas como para motores. Enlace las fuentes que realmente usó; si en un trimestre no cambia nada para esa página, la falta de fuentes no era la carencia.

  19. Texto de enlace genérico (estilo «haga clic aquí»)

    BajoPor páginaSEOonpage.generic-anchor-text

    Cómo sabríamos que es erróneo: Los textos de enlace descriptivos transmiten relevancia; los genéricos la desperdician. Sustitúyalos y observe en GSC las consultas de las páginas enlazadas.

  20. Varios elementos H1

    BajoPor páginaSEOonpage.h1-multiple

    Cómo sabríamos que es erróneo: Los motores modernos toleran varios H1; trátelo como higiene salvo que la extracción de encabezados se rompa de forma visible.

  21. Nivel de encabezado saltado (p. ej. H2 → H4)

    BajoPor páginaSEOAEOonpage.heading-skip

    Cómo sabríamos que es erróneo: Si los analizadores de esquema (y la extracción de pasajes de IA) siguen segmentando bien la página, el salto es cosmético.

  22. Meta descripciones duplicadas

    BajoTodo el sitioSEOonpage.meta-description-duplicate

    Cómo sabríamos que es erróneo: Descripciones únicas devuelven el control del snippet por página; si los motores lo reescriben igualmente, el impacto es limitado.

  23. Meta descripción fuera de la banda de 120-160 caracteres

    BajoPor páginaSEOonpage.meta-description-length

    Cómo sabríamos que es erróneo: Dentro de la banda Google trunca menos y reescribe con menos frecuencia; compruébelo en el snippet de resultados.

  24. Páginas sin enlaces internos entrantes (dentro de la muestra rastreada)

    BajoTodo el sitioSEOonpage.orphan-pages

    Cómo sabríamos que es erróneo: El muestreo del rastreo puede ocultar enlazadores; verifíquelo con un rastreo completo o con el informe de enlaces internos de GSC, luego añada enlaces contextuales y observe el descubrimiento y la frecuencia de rastreo.

  25. Título de menos de 30 caracteres

    BajoPor páginaSEOonpage.title-too-short

    Cómo sabríamos que es erróneo: La banda de calidad es de 30-60 caracteres; un título más largo y descriptivo debería elevar el CTR en resultados de forma medible.

  26. Sin meta twitter:card

    BajoPor páginaSEOonpage.twitter-card-missing

    Cómo sabríamos que es erróneo: Comparta en X: sin el marcado de tarjeta la vista previa se degrada; con él se muestra una tarjeta de resumen.

  27. URL de más de 100 caracteres

    BajoPor páginaSEOonpage.url-too-long

    Cómo sabríamos que es erróneo: Las URLs largas se truncan en resultados y se copian y enlazan menos; acorte el slug y redirija la antigua con un 301.

Contenido 18 comprobaciones

  1. Posiciona en la primera página pero casi nunca recibe clics

    AltoPor páginaSEOcontent.first-page-no-clicks

    Cómo sabríamos que es erróneo: Abra Search Console para esta URL: si el CTR es normal para sus consultas (los términos navegacionales de marca suelen ser bajos por naturaleza), este hallazgo es erróneo. También lo es si la página posiciona para consultas que no debería perseguir: entonces lo que hay que corregir es el enfoque, no el título.

  2. La entrada del blog no enlaza en el cuerpo a ninguna página de conversión

    AltoPor páginaSEOonpage.body-cta-missing

    Cómo sabríamos que es erróneo: Añada llamadas a la acción al final de estas entradas; si en 4-6 semanas las conversiones asistidas y el flujo de enlaces internos no se mueven, el hallazgo era erróneo.

  3. La página móvil muestra mucho menos contenido que la de escritorio

    AltoPor páginaSEOAEOrender.mobile-content-parity

    Cómo sabríamos que es erróneo: Abra la página a 375px y a 1280px y compare el texto visible. Si la vista móvil lleva el mismo contenido (solo plegado en acordeones o pestañas, que sigue estando en el DOM pero oculto: compruebe si es display:none), este hallazgo es erróneo.

  4. La entrada del blog no muestra autor visible

    MedioPor páginaSEOGEOcontent.byline-missing

    Cómo sabríamos que es erróneo: Indicador de E-E-A-T: añada firmas con nombre y biografía; el contenido anónimo firmado por «nuestros editores» se cita menos en motores de IA.

  5. No hay información de contacto en todo el rastreo (ni tel: ni mailto:)

    MedioTodo el sitioSEOGEOcontent.contact-info-missing

    Cómo sabríamos que es erróneo: Base de confianza (E-E-A-T): un correo o teléfono que funcione en algún lugar del sitio; las directrices de calidad tratan a los operadores ilocalizables como poco fiables.

  6. No se encontró página de privacidad ni de condiciones

    MedioTodo el sitioSEOcontent.legal-pages-missing

    Cómo sabríamos que es erróneo: Publique privacidad y condiciones y enlácelas desde el pie; si las páginas existen y el rastreo no las vio, márquelo como resuelto, esta comprobación solo informa de lo que el rastreo pudo ver.

  7. La entrada del blog no muestra fecha de publicación

    MedioPor páginaSEOGEOcontent.publish-date-missing

    Cómo sabríamos que es erróneo: La actualidad determina la elegibilidad para citas de IA; una fecha legible por máquina (meta/time/esquema) hace fechable la entrada.

  8. Las páginas son sobre todo texto de plantilla compartido con poco contenido propio

    MedioTodo el sitioSEOAEOcontent.template-heavy-pages

    Cómo sabríamos que es erróneo: Añada a cinco páginas 2-3 párrafos que solo puedan aparecer en ellas (cifras concretas, detalle local, notas de primera mano); si en 6-8 semanas las impresiones de sus propias consultas no se mueven, la proporción de plantilla no era el bloqueo.

  9. Página de contenido escaso (<300 palabras)

    MedioPor páginaSEOAEOcontent.thin-content

    Cómo sabríamos que es erróneo: Amplíe o consolide; si la página posiciona y convierte tal cual (página de utilidad), reclasifíquelo como intencionado.

  10. La primera pantalla móvil apenas contiene texto

    MedioPor páginaSEOAEOrender.empty-first-screen

    Cómo sabríamos que es erróneo: Cargue la página a 375x812 y lea la primera pantalla. Si hay texto legible sin desplazarse, este hallazgo es erróneo: compruebe si el texto solo se renderiza tras la hidratación en cliente.

  11. El H1 de la página de inicio no menciona la marca

    BajoTodo el sitioGEOcontent.brand-inconsistent-h1

    Cómo sabríamos que es erróneo: Claridad de entidad: si las respuestas de IA ya atribuyen el sitio a la marca correcta, omítalo.

  12. El contenido práctico no muestra señales de experiencia de primera mano

    BajoPor páginaSEOGEOcontent.first-hand-experience-missing

    Cómo sabríamos que es erróneo: La primera E de E-E-A-T es experiencia: las reseñas y guías que nunca dicen qué se probó realmente se leen como investigación de escritorio. Añada un pasaje concreto de primera mano (qué hizo, qué pasó, qué cifra midió) y revise en 6-8 semanas el posicionamiento para las consultas propias de esa página.

  13. El contenido en inglés es difícil de leer (Flesch por debajo de 30)

    BajoPor páginaSEOcontent.readability-hard

    Cómo sabríamos que es erróneo: Flesch está calibrado solo para inglés, esta comprobación nunca se ejecuta en otros idiomas. Acorte frases y prefiera palabras comunes; si las métricas de interacción no se mueven, la legibilidad no era el problema.

  14. La página comercial no muestra ninguna prueba de clientes

    BajoTodo el sitioSEOcontent.social-proof-missing

    Cómo sabríamos que es erróneo: Reseñas, testimonios o casos de referencia son una señal de confianza tanto para personas como para motores. Añada los reales (con marcado Review/AggregateRating cuando sean genuinos): si en un trimestre la conversión y el posicionamiento no se mueven, la prueba social no era la carencia. Nunca los invente.

  15. Entrada de más de 12 meses sin actualización visible

    BajoPor páginaGEOcontent.stale-content

    Cómo sabríamos que es erróneo: Las páginas que llevan más de 6 meses sin tocar pierden elegibilidad para citas de IA (SE Ranking); una actualización con dateModified debería recuperarla.

  16. Posiciona justo fuera de los puestos que reciben clics

    BajoPor páginaSEOcontent.striking-distance

    Cómo sabríamos que es erróneo: Revise en Search Console las consultas detrás de esta página. Si son irrelevantes para su propósito, subir no ayudaría y esto no es una oportunidad. Si la página ya convierte desde su posición actual, la prioridad es menor de lo que sugiere el número.

  17. Párrafos muy por encima de la pauta de 2-4 frases

    BajoPor páginaAEOcontent.wall-of-text

    Cómo sabríamos que es erróneo: Los párrafos cortos son una señal estructural para la extracción por IA; divídalos y observe las citas a nivel de pasaje.

  18. Contenido por debajo del mínimo de palabras para su tipo de página

    BajoPor páginaSEOcontent.word-count-floor

    Cómo sabríamos que es erróneo: Los mínimos (inicio 500 / servicio 800 / blog 1500) son medianas competitivas, no ley; si la página ya gana su clase de consulta en GSC, reclasifíquelo como brevedad intencionada.

Schema 21 comprobaciones

  1. Al esquema Product le faltan campos obligatorios (name / image / offers)

    AltoPor páginaSEOecom.product-required-fields

    Cómo sabríamos que es erróneo: La ficha de comerciante de Google exige los tres; la prueba de resultados enriquecidos informa de los mismos campos ausentes.

  2. Al esquema LocalBusiness le faltan campos obligatorios (name / address)

    AltoPor páginaSEOlocal.localbusiness-required

    Cómo sabríamos que es erróneo: La documentación de LocalBusiness de Google exige name + PostalAddress; la prueba de resultados enriquecidos informa lo mismo.

  3. Al esquema Article le faltan campos obligatorios (image / datePublished / publisher.logo)

    AltoPor páginaSEOGEOschema.article-required-fields

    Cómo sabríamos que es erróneo: La prueba de resultados enriquecidos lista los campos obligatorios que faltan antes de la corrección y pasa después.

  4. JSON-LD inválido (error de análisis)

    AltoPor páginaSEOGEOschema.jsonld-invalid

    Cómo sabríamos que es erróneo: La prueba de resultados enriquecidos debe pasar tras la corrección; antes informa del mismo fallo de análisis.

  5. Campos de la oferta mal formados (price / currency / availability)

    MedioPor páginaSEOecom.offer-format

    Cómo sabríamos que es erróneo: price debe ser numérico (sin símbolos), priceCurrency en ISO-4217 y availability una URL de enumeración de schema.org, la prueba de resultados enriquecidos señala cada uno.

  6. A aggregateRating le falta ratingValue o reviewCount

    MedioPor páginaSEOlocal.aggregaterating-fields

    Cómo sabríamos que es erróneo: Ambos campos son obligatorios para los resultados con estrellas; la prueba de resultados enriquecidos informa del que falta.

  7. El teléfono del esquema no coincide con el de la página

    MedioPor páginaSEOlocal.phone-mismatch

    Cómo sabríamos que es erróneo: El posicionamiento local depende de un NAP coherente. Haga idénticos el enlace tel: visible y el telephone del esquema; si los dos números son distintos a propósito (ventas y soporte), reclasifíquelo como intencionado.

  8. Las URLs del esquema usan una forma de barra final distinta de la publicada

    MedioPor páginaSEOschema.jsonld-url-slash-mismatch

    Cómo sabríamos que es erróneo: Alinee las URLs del esquema con la forma canónica; en la prueba de resultados enriquecidos las URLs de entidad deben coincidir exactamente con las publicadas.

  9. Problemas de higiene en los datos estructurados (context / URLs relativas / marcadores / fechas mal formadas)

    MedioPor páginaSEOschema.markup-hygiene

    Cómo sabríamos que es erróneo: La prueba de resultados enriquecidos informa exactamente de estas clases de error; un marcado limpio valida en silencio.

  10. La página de inicio no tiene esquema Organization

    MedioTodo el sitioSEOGEOschema.organization-missing

    Cómo sabríamos que es erróneo: Claridad de entidad: una vez que existe Organization (@id, logo, sameAs) y los artículos lo referencian, las señales de entidad tienen una raíz a la que engancharse.

  11. Una página de SaaS usa el esquema Product en lugar de SoftwareApplication

    MedioPor páginaSEOGEOschema.product-on-saas

    Cómo sabríamos que es erróneo: Si la documentación de resultados enriquecidos de software de Google acepta Product explícitamente para este caso, baje la prioridad; si no, el tipo documentado es SoftwareApplication.

  12. La página de contenido no tiene ningún dato estructurado

    MedioPor páginaSEOGEOschema.structured-data-missing

    Cómo sabríamos que es erróneo: La prueba de resultados enriquecidos detecta cero elementos antes y al menos uno después.

  13. La oferta del producto no declara política de envío ni de devolución

    BajoPor páginaSEOecom.merchant-policies-missing

    Cómo sabríamos que es erróneo: Añada shippingDetails y hasMerchantReturnPolicy a la oferta; el informe de fichas de comerciante de Search Console debería dejar de marcarlos como ausentes y las anotaciones de envío y devoluciones pasan a ser elegibles.

  14. El esquema Product omite los campos con los que se emparejan los comercios

    BajoPor páginaSEOecom.product-completeness

    Cómo sabríamos que es erróneo: brand, sku/gtin y description son lo que usan las superficies de compra para emparejar y mostrar un producto. Añada los que realmente tenga; los informes de fichas de comerciante deberían dejar de marcarlos.

  15. Las coordenadas de LocalBusiness tienen menos de 4 decimales

    BajoPor páginaSEOlocal.geo-precision

    Cómo sabríamos que es erróneo: 4-5 decimales ≈ 10 m de precisión; los pines más gruesos sitúan mal el negocio en los mapas, corríjalo y vuelva a comprobar el pin.

  16. priceRange de LocalBusiness no es un rango simbólico breve

    BajoPor páginaSEOlocal.pricerange-format

    Cómo sabríamos que es erróneo: La guía de Google espera un indicador compacto como «$$» o «€€-€€€», no una frase ni una lista de precios. Acórtelo y vuelva a ejecutar la prueba de resultados enriquecidos.

  17. El autor del artículo no es una entidad Person

    BajoPor páginaSEOGEOschema.author-not-a-person

    Cómo sabríamos que es erróneo: Tanto la guía de artículos de Google como la atribución en IA resuelven autores como entidades. Dé a author un objeto Person con nombre (e idealmente url/sameAs); la prueba de resultados enriquecidos debería dejar de informar un autor en texto plano.

  18. Esquema BlogPosting sin datePublished

    BajoPor páginaSEOGEOschema.blogposting-missing-dates

    Cómo sabríamos que es erróneo: La actualidad determina la elegibilidad para citas de IA; las entradas fechadas son extraíbles como fuentes recientes.

  19. Se usan tipos de esquema obsoletos (HowTo / SpecialAnnouncement / …)

    BajoPor páginaSEOschema.deprecated-types

    Cómo sabríamos que es erróneo: Google retiró estos resultados enriquecidos (HowTo 2023, SpecialAnnouncement 2025, FAQ 2026); el marcado no aporta nada.

  20. Los datos estructurados usan Microdata/RDFa en lugar de JSON-LD

    BajoPor páginaSEOAEOschema.microdata-only

    Cómo sabríamos que es erróneo: Pegue la página en la prueba de resultados enriquecidos: si la entidad se detecta y es elegible, el marcado funciona y esto es una preferencia de mantenibilidad, no un defecto. Google recomienda JSON-LD porque sobrevive a cambios de plantilla que rompen los atributos en línea.

  21. El esquema Organization no tiene enlaces sameAs

    BajoTodo el sitioGEOSEOschema.organization-sameas-missing

    Cómo sabríamos que es erróneo: sameAs es la forma en que un motor liga su marca con la entidad que conoce (Wikipedia, LinkedIn, X, Crunchbase). Añada 2-4 URLs de perfil reales; si tras un trimestre las menciones de marca siguen sin resolver a su entidad, la carencia estaba en otra parte.

Rendimiento 6 comprobaciones

  1. La primera imagen (probablemente la de LCP) se carga de forma diferida

    MedioPor páginaSEOimages.hero-image-lazy

    Cómo sabríamos que es erróneo: Diferir la imagen principal retrasa el LCP un viaje de ida y vuelta. Quite loading=lazy de la primera imagen visible (añada fetchpriority=high) y compare el LCP antes y después en una traza o en CrUX.

  2. Imágenes sin width/height (riesgo de CLS)

    MedioPor páginaSEOperformance.img-dimensions-missing

    Cómo sabríamos que es erróneo: Reservar dimensiones elimina los desplazamientos tardíos de diseño; los datos de campo de CLS mejoran tras la corrección.

  3. Un recurso precargado nunca se usa en la página

    MedioPor páginaSEOperformance.wasted-preload

    Cómo sabríamos que es erróneo: La consola de DevTools avisa 'preloaded but not used within a few seconds', reproducible antes, ausente después.

  4. Imágenes de contenido sin decoding=async

    BajoPor páginaSEOimages.decoding-async-missing

    Cómo sabríamos que es erróneo: decoding=async permite que el hilo principal pinte sin esperar a la decodificación; añádalo y verifique en una traza que baja el tiempo de decodificación en el hilo principal.

  5. Una página con muchas imágenes las carga todas de inmediato

    BajoPor páginaSEOimages.lazy-loading-missing

    Cómo sabríamos que es erróneo: Añada loading=lazy a las imágenes por debajo del pliegue; los bytes transferidos en la carga inicial bajan de forma medible.

  6. Imágenes mayoritariamente JPEG/PNG sin entrega moderna ni adaptable

    BajoPor páginaSEOperformance.legacy-image-formats

    Cómo sabríamos que es erróneo: WebP/AVIF o srcset reduce los bytes de imagen entre un 30 y un 70%; el tamaño de transferencia por imagen baja de forma verificable.

AEO 8 comprobaciones

  1. Los encabezados de pregunta son texto de plantilla idéntico en todos los artículos

    MedioTodo el sitioAEOGEOaeo.boilerplate-question-headings

    Cómo sabríamos que es erróneo: Sustituya las preguntas de plantilla por otras específicas en 5 artículos; si en 4-6 semanas las respuestas de IA empiezan a citar esas secciones, el bloqueo era la falta de singularidad, si no, reclasifíquelo como decisión de diseño.

  2. Contenido largo sin listas ni tablas

    MedioPor páginaAEOGEOaeo.no-extractable-structure

    Cómo sabríamos que es erróneo: Las respuestas de IA prefieren bloques extraíbles; añada listas o tablas a sus páginas principales y observe la cuota de citas de esas consultas.

  3. Manejadores de clic en elementos no interactivos (invisibles para agentes)

    BajoPor páginaAEOGEOaeo.div-onclick

    Cómo sabríamos que es erróneo: Los agentes de IA y los lectores de pantalla actúan sobre <a>/<button> reales; un div con onclick es invisible para ambos.

  4. Hay contenido de preguntas frecuentes pero no hay esquema FAQPage

    BajoPor páginaAEOaeo.faq-schema-without-questions

    Cómo sabríamos que es erróneo: Si el bloque de preguntas y respuestas de la página ya obtiene citas de IA sin esquema, el marcado es un refuerzo opcional.

  5. El párrafo inicial entierra la respuesta (BLUF)

    BajoPor páginaAEOGEOaeo.first-answer-too-long

    Cómo sabríamos que es erróneo: El 44% de las citas de IA proviene del primer 30% de una página; adelante una respuesta de 40-60 palabras y observe la cuota de citas.

  6. Campos de formulario sin etiqueta

    BajoPor páginaAEOaeo.inputs-unlabeled

    Cómo sabríamos que es erróneo: Los campos etiquetados son operables por agentes y tecnología asistiva; una auditoría de accesibilidad señala los mismos campos.

  7. Sin punto de referencia <main>/<article>

    BajoPor páginaAEOGEOaeo.no-main-landmark

    Cómo sabríamos que es erróneo: Los puntos de referencia permiten a los extractores aislar el contenido principal del resto; la calidad del descarte de plantilla mejora.

  8. La página de contenido no tiene encabezados en forma de pregunta

    BajoPor páginaAEOaeo.no-question-headings

    Cómo sabríamos que es erróneo: Los encabezados en forma de pregunta se corresponden con patrones de consulta; si estas páginas ya se citan en PAA o en respuestas de IA, la estructura es suficiente.

GEO 15 comprobaciones

  1. Rastreadores de IA bloqueados en robots.txt

    CríticoTodo el sitioGEOAEOgeo.ai-crawler-blocked

    Cómo sabríamos que es erróneo: Si el bloqueo es una decisión deliberada de licencia, reclasifíquelo como política; si no, al desbloquear deben aparecer accesos de rastreadores de IA en los registros.

  2. Contenido invisible para los rastreadores de IA (renderizado en cliente)

    CríticoTodo el sitioGEOAEOSEOgeo.content-invisible-to-ai

    Cómo sabríamos que es erróneo: Descargue la URL con curl: si el contenido de la respuesta no está en el HTML crudo, ningún agente sin JavaScript puede citarlo. SSR/prerender lo corrige de forma medible.

  3. La página de intención comparativa no tiene tabla de comparación

    AltoPor páginaGEOAEOgeo.comparison-table-missing

    Cómo sabríamos que es erróneo: Añada una tabla HTML; si tras 4-6 semanas las respuestas de IA para consultas del tipo 'X vs Y / alternativas a X' siguen sin citar la página, la estructura no era el bloqueo.

  4. Los controles de snippet impiden que los motores citen la página

    AltoPor páginaGEOAEOSEOgeo.snippets-suppressed

    Cómo sabríamos que es erróneo: nosnippet / max-snippet:0 / data-nosnippet indican a los motores que no pueden citar el texto, que es justo lo que necesita una respuesta de IA. Quítelos y observe si la página pasa a ser citable.

  5. La página de intención informativa no responde en el pasaje inicial

    MedioPor páginaGEOAEOgeo.direct-answer-missing

    Cómo sabríamos que es erróneo: Lo que extraen los motores son respuestas adelantadas (primeras 40-60 palabras); mueva la respuesta directa al inicio del texto y vuelva a comprobar las respuestas de IA para esa consulta.

  6. Ninguna sección cae en la banda de pasaje citable (~134-167 palabras)

    BajoPor páginaGEOgeo.citable-passage-band

    Cómo sabríamos que es erróneo: Fusione secciones fragmentadas y divida las monolíticas hacia pasajes de 100-200 palabras; si la citación de IA no se mueve en 4-6 semanas, el tamaño del pasaje no era el bloqueo.

  7. La página de definición no empieza con una frase de definición

    BajoPor páginaGEOAEOgeo.definition-pattern-missing

    Cómo sabríamos que es erróneo: Los motores de respuesta toman la frase que define el término. Reescriba la apertura como «X es …» y compruebe en 4-6 semanas si la página empieza a aparecer en respuestas de definición.

  8. La clave IndexNow de ProvenVisible no está instalada

    BajoTodo el sitioSEOGEOgeo.indexnow-missing

    Cómo sabríamos que es erróneo: Publique el archivo de clave generado y haga un ping: el informe de IndexNow de Bing Webmaster Tools debería mostrar envíos recibidos en días. Si ya usa IndexNow con otra herramienta o sus motores lo ignoran, descarte este hallazgo.

  9. Sin llms.txt

    BajoTodo el sitioGEOgeo.llmstxt-missing

    Cómo sabríamos que es erróneo: Google rechaza públicamente llms.txt como entrada de posicionamiento; su valor se limita a agentes no-Google que lo leen. Si ninguno de sus motores objetivo lo descarga (registros del servidor), omítalo.

  10. La entrada por secciones no tiene encabezados en forma de pregunta

    BajoPor páginaAEOGEOgeo.question-headings-missing

    Cómo sabríamos que es erróneo: Los motores de respuesta con IA emparejan H2/H3 en forma de pregunta con consultas de usuario; reformule 2-3 encabezados como preguntas y observe las citas a nivel de pasaje.

  11. El artículo largo no contiene cifras concretas que citar

    BajoPor páginaGEOAEOgeo.quotable-facts-missing

    Cómo sabríamos que es erróneo: Los motores de respuesta citan números concretos (porcentajes, precios, duraciones, fechas). Añada 2-3 cifras reales con su fuente; si tras 4-6 semanas la página sigue sin aparecer en respuestas, la citabilidad no era el bloqueo.

  12. robots.txt anuncia una licencia RSL inexistente o mal formada

    BajoTodo el sitioGEOgeo.rsl-license-broken

    Cómo sabríamos que es erróneo: Abra la URL de License: en robots.txt: debe devolver un documento XML cuya raíz sea <rsl> en el espacio de nombres https://rslstandard.org/rsl, con al menos un <content> y un <license>. Si lo hace y este hallazgo sigue apareciendo, la comprobación está equivocada.

  13. Su documento de licencia RSL rechaza a los clientes normales

    BajoTodo el sitiogeo.rsl-license-unreadable

    Cómo sabríamos que es erróneo: Descargue la URL de License: con curl (sin cabeceras de navegador). Si devuelve el XML, está resuelto; si devuelve 403 como nos ocurrió a nosotros, los rastreadores para los que se escribió la licencia tampoco pueden leerla.

  14. Su licencia RSL prohíbe el uso de este contenido por IA

    BajoTodo el sitiogeo.rsl-prohibits-ai

    Cómo sabríamos que es erróneo: No es un defecto sino una decisión de licencia: el archivo dice que los motores de respuesta no pueden usar su contenido. Si quiere visibilidad en IA, cambie la línea <prohibits type=…; si no, reclasifique este hallazgo como política.

Esta página se genera desde el registro de comprobaciones en vivo, así que siempre muestra exactamente lo que ejecuta la auditoría.