Un sitio web multilingüe sin hreflang es un sitio web que deja que Google decida qué versión mostrar a cada audiencia. Google a menudo se equivoca y, como resultado, solo aparecerá una página en la búsqueda. Un hreflang configurado correctamente elimina esta incertidumbre.
Esto se debe a que si las páginas en diferentes idiomas contienen lo mismo, Google simplemente verá duplicación y mostrará solo una de ellas en la búsqueda. Las metaetiquetas hreflang le permiten especificar el idioma y la región para cada página, asegurando que el usuario vea la versión correcta.
Qué es hreflang y por qué es necesario
hreflang es un atributo HTML que le indica a Google qué páginas son traducciones entre sí y para qué idioma y región está destinada cada versión.
Sin hreflang, Google puede:
- Mostrar la versión rusa a usuarios de Alemania
- Considerar las traducciones como contenido duplicado
- No mostrar las versiones de idioma en los resultados regionales correspondientes
Con hreflang, Google sabe: esta es la página en alemán para Alemania, esta en francés para Francia, esta en inglés para todos los demás. Con él, puedes especificar diferentes versiones para un mismo idioma, pero para diferentes regiones. También puedes especificar varios idiomas para un país, por ejemplo, inglés y francés para Canadá (en-CA y fr-CA). Esto es necesario para una correcta localización: por ejemplo, en Canadá, incluso en francés, los precios se mostrarán en dólares canadienses, mientras que en Francia, en euros. Esta distinción es fundamental para la correcta visualización del contenido a los usuarios.
Cómo se ve hreflang
El atributo se añade a la sección <head> de cada página:
<link rel="alternate" hreflang="en" href="https://mysite.com/en/about/" />
<link rel="alternate" hreflang="de" href="https://mysite.com/de/about/" />Partes clave:
- rel="alternate" — indica que es una versión alternativa
- hreflang="ru" — código de idioma según ISO 639-1
- href — URL completa de la versión (incluyendo protocolo y dominio)
- hreflang="x-default" — versión predeterminada si ninguna otra coincide
Códigos de idiomas y regiones
Formato del atributo: idioma o idioma-PAÍS.
Solo idioma: hreflang="en" — para todos los usuarios de habla inglesa, independientemente del país.
Idioma + país: hreflang="en-US" — para el idioma inglés en EE. UU., hreflang="en-GB" — para el Reino Unido.
Cuándo usar el país: si tienes contenido diferente para un mismo idioma en distintos países. Por ejemplo, precios en dólares para EE. UU. y en libras para el Reino Unido, estas son versiones diferentes y hreflang diferentes.
Si el contenido es el mismo para todos los hablantes del idioma, basta con el código del idioma sin el país.
Reciprocidad: la regla que se incumple con mayor frecuencia
Cada página debe contener hreflang para todas las versiones de idioma, incluida ella misma. Esta es una regla crítica: si tienes tres idiomas, cada página en cada uno de ellos debe enlazar a las tres versiones. Esto crea un ecosistema cerrado, permitiendo a Google ver todas las variantes y comprender su interconexión.
Correcto: en la página rusa hay enlaces a la alemana, a la inglesa y a sí misma. En la alemana, a la rusa, a la inglesa y a sí misma. En la inglesa, a la rusa, a la alemana y a sí misma.
Incorrecto: en las versiones rusa y alemana hay enlaces a la inglesa, pero en la inglesa no hay enlaces de respuesta. Google considera esta implementación incorrecta y puede ignorarla.
<!-- Ejemplo de un conjunto hreflang correcto -->
<link rel="alternate" hreflang="de" href="https://mysite.com/de/about/" />
<link rel="alternate" hreflang="ru" href="https://mysite.com/ru/about/" />
<link rel="alternate" hreflang="en" href="https://mysite.com/en/about/" />
<link rel="alternate" hreflang="x-default" href="https://mysite.com/en/about/" />x-default: versión para el resto
hreflang="x-default" es un valor especial para la página que se muestra a los usuarios cuando ninguna otra versión es adecuada. Por lo general, es la versión en el idioma principal del sitio (normalmente, ruso o inglés).
Si tiene versiones en ruso y kazajo sin una versión en inglés, x-default se puede especificar para una de ellas, o no usarse en absoluto. No es un atributo obligatorio, pero Google lo recomienda.
Opciones de implementación
Además de las etiquetas en <head>, hreflang se puede especificar:
A través de encabezados HTTP. Para PDF y otros recursos que no son páginas HTML, esta es la única opción.
A través del mapa del sitio. En lugar de atributos en cada página, un solo sitemap en el que se añaden variantes de la misma página en otros idiomas para cada enlace. Conveniente para sitios web grandes.
Las tres opciones son equivalentes para Google: elija la que sea más fácil de mantener. Por cierto, Multify añade automáticamente las metaetiquetas necesarias tanto al código HTML de las páginas como al mapa del sitio.
Errores comunes
Según un estudio de Ahrefs (374.756 dominios), el 67% de los sitios web que utilizan hreflang tienen al menos un error de implementación.
Error 1: No hay enlaces recíprocos
Este es el error más común. Compruebe: ¿cada página de cada versión contiene hreflang para todas las demás versiones? Si no, los motores de búsqueda pueden interpretar incorrectamente la estructura de su sitio.
Error 2: URL incorrecta
hreflang requiere una URL absoluta con protocolo: https://mysite.com/en/about/, no /en/about/. Las rutas relativas no funcionan.
La coherencia también es importante: si la URL canónica tiene una barra al final (/about/), entonces hreflang también debe tener una barra. Si no, sin ella.
Error 3: Versión inexistente
En hreflang se especifica un enlace a una página que no existe. Por ejemplo, no todos los productos están traducidos, pero los atributos están escritos para todos. Google detectará un 404 y notará la inconsistencia.
Si una página no tiene traducción, no especifique hreflang para una versión inexistente. Es mejor no especificar nada que especificar incorrectamente.
Error 4: Duplicación en una página
Dos atributos con el mismo hreflang en una página. Esto ocurre con el mantenimiento manual del marcado o con conflictos de plugins. Google toma el primero y el segundo lo ignora.
Error 5: Código de idioma incorrecto
hreflang="kk" es el código correcto para el idioma kazajo (según la lista ISO 639-1). No se puede usar kz, ya que es un código de región, no de idioma. De manera similar para el armenio: hy es el código de idioma correcto, y am es el código de región. Recuerde que hreflang requiere códigos de idioma, o más bien, a diferencia de formatos como ru-RU, que pueden ser confusos.
Error 6: hreflang en una redirección 301
Si una página con hreflang redirige a otra, Google sigue la redirección y pierde el atributo. hreflang debe estar en la página final, no en la intermedia.
Cómo verificar
Herramienta de prueba de Hreflang. Muestra errores: páginas con atributos incorrectos, enlaces de retorno faltantes. Es una buena herramienta, pero la desventaja es que las páginas deben cargarse manualmente.
Screaming Frog o Ahrefs. Escaneo de todo el sitio. Screaming Frog escanea hasta 500 URL de forma gratuita y muestra todos los atributos hreflang con verificación de reciprocidad.
Además de las herramientas de verificación, es importante comprender que el SEO técnico requiere un enfoque integral. La optimización de hreflang es solo una parte del trabajo para configurar una estructura de sitio multilingüe.
hreflang y Tilda
Tilda no añade hreflang por sí misma. Las opciones son, de hecho, limitadas:
Manualmente a través de un bloque HTML. Añadir etiquetas <link> al bloque de código. Actualizar manualmente al cambiar la estructura del sitio. No apto para páginas dinámicas de catálogo o blog. Para sitios pequeños, es aceptable.
A través de Multify. El proxy genera hreflang automáticamente para todas las páginas de todas las versiones de idioma, incluyendo páginas de productos y artículos de blog. Al añadir un idioma, los atributos aparecen inmediatamente en todas partes. La reciprocidad se mantiene automáticamente.
Con el soporte manual de hreflang en un sitio con 50 páginas y 3 idiomas, esto significa 150 conjuntos de atributos. Cada adición de una página o idioma requiere una actualización en todas las versiones. Esto es lo que la automatización cubre por completo.
