Comprobador de hreflang

Comprueba hreflang en una sola URL o en un conjunto de páginas: códigos de idioma y de región, autorreferencia, duplicados, x-default, enlaces de retorno y alternativas que redirigen, fallan o llevan noindex.

Qué hace

En todo el conjunto

Los enlaces de retorno y su confirmación requieren todas las páginas del conjunto, porque comparan lo que la página A dice sobre la página B con lo que la página B responde. Estas comprobaciones se hacen con datos de rastreo, como una exportación Screaming Frog All Hreflang, y no con una sola página. También revisan las URL de destino de las alternativas: si cada una responde con 200, si es indexable y si es su propia URL canónica.

  • Enlaces de retorno que faltan y pares sin confirmar
  • Alternativas que redirigen, devuelven 4xx o 5xx, o llevan noindex
  • Alternativas que no son la versión canónica de la página
  • Alternativas a las que no apunta ningún enlace interno

Una sola URL

hreflang-check descarga una página, sigue sus redirecciones y lee los enlaces alternativos de su HTML. Valida cada código de idioma, de script y de región, detecta los valores duplicados y comprueba que la página se incluya a sí misma y que exista un x-default. No solicita las alternativas, así que sirve como primera revisión rápida antes de ejecutar un rastreo completo.

  • Códigos de idioma, script y región comprobados contra ISO 639-1, ISO 15924 e ISO 3166-1
  • Autorreferencia y valores duplicados
  • Presencia de x-default
  • Una página 4xx o 5xx se notifica como error, no como resultado limpio

Ubicación

Un enlace hreflang solo cuenta si el analizador lo lee dentro del head. Un rastreo nativo compara la posición de cada enlace alternativo y marca los que acaban en el body, a menudo por una etiqueta rota antes de ellos en el head. Arreglar esa etiqueta corrige la anotación.

  • Los enlaces alternativos fuera del head se notifican
  • Las mayúsculas no importan: en-us y en-US son el mismo valor
  • Se detectan errores frecuentes como en-UK

Tres pasos, un análisis guardado

  1. Comprueba una URL en directo

    hreflang-check descarga la página, sigue las redirecciones y lee los enlaces alternativos de su HTML. Comprueba los códigos, la autorreferencia, los duplicados y x-default.

  2. Comprueba el conjunto con un rastreo

    Los enlaces de retorno, los destinos rotos o con redirección y los destinos con noindex necesitan todas las páginas del conjunto. Se ejecutan sobre una exportación Screaming Frog All Hreflang con seohead sf run, no sobre una sola página.

  3. Corrige los pares y vuelve a comprobar

    Cada incidencia indica la página y la alternativa a la que se refiere. Corrige la anotación en el sitio y vuelve a ejecutar la comprobación.

Comprobaciones de esta función

ComprobaciónQué significaGravedadEvidencia
HREFLANG_MISSING_RETURN_LINKOtra página indica esta URL en su hreflang, pero esta página no apunta de vueltaImportantPágina de origen y la alternativa que no tiene el enlace recíproco (rastreo)
HREFLANG_BROKEN_TARGETUna URL alternativa responde con un estado 3xx, 4xx o 5xxImportantURL de destino y su código de estado (rastreo)
HREFLANG_NOINDEX_TARGETUna URL alternativa lleva una directiva noindexImportantURL de destino y la señal noindex (rastreo)
HREFLANG_INVALID_CODEUn valor de idioma o de región no es un código válido de ISO 639-1, ISO 15924 o ISO 3166-1, por ejemplo en-UKImportantEl valor hreflang tal cual y la página donde aparece (URL única: 'malformed hreflang code')
HREFLANG_MISSING_SELF_REFERENCELa página tiene alternativas, pero ninguna es su propia URLImportantLa URL de la página y su lista de alternativas (URL única: 'page does not self-reference')
HREFLANG_MULTIPLE_ENTRIESEl mismo valor de idioma y región aparece más de una vez en una páginaImportantEl valor repetido y sus href (URL única: 'duplicate hreflang')
HREFLANG_MISSING_XDEFAULTEl conjunto no tiene una alternativa de reserva x-default para los usuarios cuyo idioma no coincide con ninguna alternativaTipLa página y su lista de alternativas (URL única: 'no x-default alternate')
También en el registro de comprobaciones
HREFLANG_ERRORHREFLANG_INCONSISTENT_CONFIRMATIONHREFLANG_NOT_CANONICALHREFLANG_UNLINKED_TARGETHREFLANG_OUTSIDE_HEAD

Un solo comando

bash
seohead hreflang-check --url https://example.com/en/

Primero, instala SpiderHead: guía de instalación. Cada comando también funciona como herramienta MCP para agentes de IA.

Qué necesitas

  • Una URL de página para hreflang-check
  • Un rastreo o una exportación Screaming Frog All Hreflang para las comprobaciones de todo el conjunto
  • Sin claves de API

Límites

  • La comprobación de una sola URL no solicita las alternativas, así que no ve sus códigos de estado, su noindex ni sus enlaces de retorno
  • Solo lee los elementos link del HTML, no el hreflang de los sitemaps ni el de las cabeceras HTTP Link
  • Las comprobaciones del conjunto están documentadas con exportaciones de hreflang de Screaming Frog; un escaneo nativo no conserva los datos de hreflang
  • Un código válido no demuestra que la página esté en ese idioma

Preguntas

¿La comprobación de una sola URL revisa todas las alternativas?
No. Lee los enlaces alternativos de la propia página y comprueba sus códigos, sus duplicados, x-default y la autorreferencia de la página. No solicita cada alternativa, así que los destinos rotos, con redirección o con noindex, y los enlaces de retorno que faltan, requieren un rastreo.
¿Cambia algo en mi sitio?
No. La comprobación envía solo peticiones GET de lectura. No se escribe nada en el sitio.
¿Qué códigos de idioma se consideran válidos?
Un código de idioma de ISO 639-1, opcionalmente seguido de un script de ISO 15924 y, después, de una región de ISO 3166-1 alfa-2 o de UN M.49. Los códigos no distinguen mayúsculas de minúsculas, así que en-us y en-US son el mismo valor. en-UK se rechaza, porque el código de país es GB.
¿Lee hreflang de los sitemaps o de las cabeceras HTTP?
La comprobación de una sola URL lee solo los elementos link de la respuesta HTML. Este comando no lee el hreflang declarado en un sitemap ni en una cabecera HTTP Link.
¿Qué pasa si la página devuelve un error?
La comprobación indica el estado HTTP y señala que no hay anotaciones que revisar. Una página 4xx o 5xx nunca aparece como resultado limpio.
¿Es un error que falte x-default?
Es la incidencia más leve. x-default sirve de reserva para los usuarios cuyo idioma no coincide con ninguna alternativa. Es útil, pero no obligatorio, así que el registro de comprobaciones lo clasifica como aviso, por debajo de los problemas que rompen la anotación.

Pruébalo en tu propio sitio