La etiqueta Hreflang (multilingüe)
Cómo indicar a los motores la versión lingüística correcta de una página, con la sintaxis correcta y los errores de reciprocidad más frecuentes.
La etiqueta hreflang indica a los motores de búsqueda qué versión lingüística o geográfica de una página mostrar a un usuario determinado, cuando un mismo contenido existe en varios idiomas o para varios países.
Caso de uso: cuándo se vuelve necesaria la hreflang
En cuanto un sitio ofrece la misma página (o una página equivalente) en varios idiomas, o un mismo idioma adaptado a varios países (francés de Francia frente a francés de Bélgica, por ejemplo), el motor necesita saber cuál mostrar a cada usuario. Sin hreflang, corre el riesgo de mostrar la versión en inglés a un usuario francófono, o de indexar las distintas versiones como contenidos duplicados que compiten entre sí en lugar de complementarse.
Este riesgo de duplicación percibida es el aspecto peor comprendido de la etiqueta: sin hreflang, dos páginas muy parecidas en inglés y en francés pueden interpretarse como dos traducciones redundantes de un mismo contenido en lugar de como dos versiones destinadas a audiencias distintas, lo que puede perjudicar el posicionamiento de ambas en lugar de reforzarlas mutuamente.
Por el contrario, un sitio que solo ofrece un idioma no necesita hreflang en absoluto: añadir esta etiqueta sin contenido multilingüe real no aporta nada y complica innecesariamente el mantenimiento del sitio.
Sintaxis correcta
La declaración se hace generalmente en el <head> de cada página, con un enlace a cada versión lingüística disponible, incluida ella misma:
<head>
<link rel="alternate" hreflang="fr" href="https://ejemplo.com/fr/guia" />
<link rel="alternate" hreflang="en" href="https://ejemplo.com/en/guia" />
<link rel="alternate" hreflang="es" href="https://ejemplo.com/es/guia" />
<link rel="alternate" hreflang="x-default" href="https://ejemplo.com/en/guia" />
</head>
El código de idioma sigue la norma ISO 639-1 (fr, en, es), y puede combinarse con un código de país ISO 3166-1 para dirigirse a una variante regional precisa (fr-BE para el francés de Bélgica, en-US para el inglés estadounidense). La hreflang también puede declararse a través del mapa del sitio XML (sitemap) en lugar de en el <head> de cada página, un enfoque a menudo preferido en sitios con un gran número de páginas multilingües, ya que centraliza todas las declaraciones en un único archivo más fácil de generar y mantener automáticamente.
La reciprocidad: la regla que más se rompe
Cada página que declara una versión alternativa debe ser a su vez declarada de vuelta por esa versión alternativa. Si la página en francés apunta a la página en inglés mediante hreflang, la página en inglés debe apuntar a la página en francés. Un enlace hreflang no recíproco suele ser ignorado por los motores, lo que anula el efecto del marcado sin que se muestre claramente ningún error.
Esta regla se vuelve difícil de mantener manualmente en cuanto un sitio supera los tres o cuatro idiomas: añadir un nuevo idioma implica actualizar la declaración hreflang en todas las páginas existentes de los demás idiomas, no solo en las páginas nuevas creadas. Esta es una de las razones por las que la generación automática mediante un sistema de gestión de contenidos o un sitemap dedicado reduce considerablemente el riesgo de error frente a una declaración manual página por página.
El x-default, demasiado a menudo olvidado
El valor x-default indica qué versión mostrar a los usuarios cuyo idioma o ubicación no corresponde a ninguna de las versiones declaradas explícitamente. Sin él, esos usuarios reciben una elección arbitraria del motor, a veces incoherente con la intención del sitio. El x-default suele corresponder a la versión internacional o en inglés del sitio, pero también puede apuntar a una página de selección de idioma explícita si el sitio no tiene una versión por defecto evidente.
Errores frecuentes
- Enlaces hreflang no recíprocos entre las versiones lingüísticas.
- Códigos de idioma o de país incorrectos (confundir el código de idioma con el código de país, por ejemplo
fr-FRescrito comoFR-fr). - hreflang que apunta a una URL que redirige o devuelve un error 404, en lugar de a la URL final.
- Combinar hreflang con una etiqueta canonical que apunta a una única versión «maestra», lo que contradice la propia intención de la hreflang: cada versión lingüística debe tener su propia canonical, hacia sí misma.
- Olvidar el x-default en un sitio con una audiencia internacional importante.
- Declarar un idioma en hreflang sin que el contenido de la página de destino esté realmente traducido a ese idioma (una página duplicada pero sin traducir, dejada temporalmente en su sitio).
Verificar su implementación
Un despliegue incorrecto de hreflang suele pasar desapercibido visualmente (el sitio funciona con normalidad para un visitante directo), pero puede distorsionar de forma duradera el posicionamiento internacional. Una verificación sistemática de la reciprocidad de los enlaces, en particular tras añadir un nuevo idioma, evita este tipo de error silencioso.
Una prueba sencilla consiste en abrir el código fuente de cada versión lingüística y comprobar, para cada enlace hreflang declarado, que la página de destino declara efectivamente un enlace de vuelta equivalente. En un sitio de gran tamaño, este control resulta más realista con una herramienta de rastreo automatizada que enumere las incoherencias que hacerlo manualmente, página por página.
Para el conjunto de puntos que verificar antes de publicar, consulte la checklist técnica completa, y para la gestión de las URL antiguas durante una reorganización multilingüe, la lección sobre las redirecciones y errores HTTP.