Todos los Artículos
SEO

Hreflang Guía 2026: 5 Errores que Hunden el SEO

Febrero 17, 2026  ·  17 min de lectura

Por qué importa hreflang en los sitios internacionales

Hreflang es un atributo HTML que indica a los buscadores qué versión de idioma y región de una página mostrar a los usuarios de cada país. Sin él, Google puede mostrar tu página en inglés a usuarios franceses, o tu página en alemán a usuarios austriacos que buscan contenido para la Suiza germanohablante. Las páginas regionales casi idénticas también pueden agruparse como duplicados, y en los resultados aparece solo una de ellas.

Para las empresas que operan en varios mercados europeos, una implementación correcta de hreflang no es opcional. Decide qué versión de tus páginas aparece en los resultados locales, y de eso dependen la tasa de clics, la experiencia de usuario y las conversiones. También es fácil equivocarse. En 2023 Ahrefs revisó 374.756 dominios que usan hreflang. El 67% tenía al menos un problema de hreflang, y la falta de x-default por sí sola aparecía en el 56,3% de ellos.

Cómo implementar hreflang: la checklist paso a paso

Si de esta guía te llevas un solo proceso, que sea este. Sigue los once pasos en orden cada vez que añadas una nueva versión local o audites un conjunto existente.

  1. Mapea cada URL local. Reúne cada página con sus variantes de idioma o de país en un solo lugar, por ejemplo una tabla o el CMS. Una página que solo existe en algunos idiomas lista solo las variantes que existen.
  2. Elige los códigos. Usa un código de idioma ISO 639-1 y añade un código de región ISO 3166-1 Alpha 2 solo cuando el contenido cambia de un país a otro: en, en-GB, de-AT. El idioma va siempre primero, así que un código de región por sí solo no es válido.
  3. Elige un solo método. Usa elementos link en el head, cabeceras HTTP o el sitemap XML. Google considera equivalentes los tres métodos, así que con uno basta, y queda un solo lugar que mantener sin errores.
  4. Añade una etiqueta autorreferencial. Cada página se lista a sí misma con su propio código, en el mismo conjunto que sus páginas hermanas.
  5. Añade una etiqueta por cada página hermana. Cada página del clúster lleva el mismo conjunto completo de variantes.
  6. Comprueba la reciprocidad. Si la página inglesa apunta a la italiana, la página italiana debe apuntar de vuelta. Google ignora las etiquetas entre dos páginas que no se apuntan entre sí.
  7. Añade x-default. Apúntalo a una página de selección de idioma o a tu versión de respaldo, para los usuarios cuyo idioma no coincide con ninguna de tus variantes.
  8. Haz que cada versión local sea su propia canonical. Una canonical que apunta a otra versión local le dice a Google que descarte la página, y hreflang no puede anular eso.
  9. Usa URLs absolutas que respondan 200. Escribe la URL https completa y actualiza hreflang en el mismo despliegue que cualquier redirección, para que ninguna etiqueta apunte a un 301 o a un 404.
  10. Alinea html lang con el código hreflang. Google no usa html lang para detectar el idioma de una página, pero las herramientas de auditoría señalan la diferencia, y los navegadores y lectores de pantalla dependen de ese valor.
  11. Valida y luego monitoriza. Rastrea todo el conjunto de versiones locales, revisa algunas URLs con Inspección de URLs y repite el rastreo después de cada despliegue.

El orden importa. La mayoría de las implementaciones rotas que auditamos fallan en el paso 6 (un enlace de retorno que falta) o en el paso 8 (una canonical que anula en silencio la anotación hreflang), y los dos fallos pasan desapercibidos hasta que el tráfico hacia un mercado secundario empieza a caer.

Los tres métodos de implementación

Hay tres formas de implementar hreflang: elementos link en el head de la página, cabeceras HTTP y sitemaps XML. Google las considera equivalentes, así que elige la que tu stack pueda mantener sin errores.

Los elementos link HTML son el método más común. Añades un conjunto de etiquetas link en el head de cada página, una por cada variante de idioma o región, incluida una etiqueta autorreferencial. Es sencillo en sitios pequeños, pero se vuelve difícil de manejar cuando tienes decenas de variantes de idioma.

Las cabeceras HTTP se usan para recursos que no son HTML (los PDF, por ejemplo) y resultan útiles cuando no puedes modificar el head HTML. Llevan la misma información que el método HTML, en las cabeceras de la respuesta del servidor.

Los sitemaps XML son el mejor enfoque para sitios grandes con muchas variantes de idioma. Indicas las anotaciones hreflang en el sitemap con el elemento xhtml:link dentro de cada entrada de URL. Así la lógica de hreflang queda en un solo lugar, la auditoría es más fácil y las páginas HTML no pesan más. Para sitios con 5 o más variantes de idioma, recomendamos claramente el sitemap.

Así se comparan los tres métodos:

MétodoDónde vaIdeal paraCuidado con
Elementos link HTMLEn el head de cada páginaSitios pequeños con menos de cinco variantes localesCada página necesita el conjunto completo de etiquetas, así que se vuelve difícil de manejar cuando hay muchas variantes
Cabeceras HTTPEn las cabeceras de la respuesta del servidorArchivos que no son HTML, como los PDF, o páginas en las que no puedes editar el headSe configura en el servidor y no en la página, así que la auditoría es más difícil
Sitemap XMLEn el elemento xhtml:link dentro de cada entrada de URL del sitemapSitios grandes con cinco o más variantes de idiomaNecesita un generador de sitemap que sepa qué páginas son traducciones unas de otras

Ejemplos de código hreflang para copiar

Cada ejemplo de abajo está completo. Cambia las URLs y los códigos por los tuyos y mantén la estructura.

Etiquetas en el head con variantes regionales y un selector x-default

Una tienda con páginas separadas para Reino Unido, Estados Unidos, Alemania y Austria, una sola página en francés para todos los francohablantes y un selector de país en la raíz:

<!-- Las mismas seis líneas van en las seis URLs, incluida la página selectora -->
<link rel="alternate" hreflang="en-GB" href="https://example.com/uk/" />
<link rel="alternate" hreflang="en-US" href="https://example.com/us/" />
<link rel="alternate" hreflang="de-DE" href="https://example.com/de/" />
<link rel="alternate" hreflang="de-AT" href="https://example.com/at/" />
<link rel="alternate" hreflang="fr" href="https://example.com/fr/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />

La página francesa usa el código simple fr porque sirve a todos los francohablantes. Las cuatro páginas regionales usan idioma más región porque sus precios y envíos cambian de un país a otro. El selector de la raíz es el x-default.

Sitemap XML con hreflang y x-default

El mismo producto en tres idiomas del ejemplo práctico de más abajo, declarado en el sitemap en lugar del head. Fíjate en el namespace xmlns:xhtml del elemento raíz:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://example.com/products/widget/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://example.com/products/widget/" />
    <xhtml:link rel="alternate" hreflang="it" href="https://example.com/it/products/widget/" />
    <xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/products/widget/" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/products/widget/" />
  </url>
  <url>
    <loc>https://example.com/it/products/widget/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://example.com/products/widget/" />
    <xhtml:link rel="alternate" hreflang="it" href="https://example.com/it/products/widget/" />
    <xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/products/widget/" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/products/widget/" />
  </url>
  <url>
    <loc>https://example.com/es/products/widget/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://example.com/products/widget/" />
    <xhtml:link rel="alternate" hreflang="it" href="https://example.com/it/products/widget/" />
    <xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/products/widget/" />
    <xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/products/widget/" />
  </url>
</urlset>

Cada entrada <url> lista todas las variantes, incluida ella misma. Envía el archivo en Search Console, en la sección Sitemaps. Si pasas de las etiquetas en el head al sitemap, quita las etiquetas del head en el mismo despliegue, para que las dos fuentes no puedan divergir.

Cabecera HTTP Link para un PDF

Un PDF no tiene head, así que sus versiones alternativas viajan en la respuesta. El servidor envía la misma cabecera Link para los tres archivos (mostrada en una línea, tal como se envía):

HTTP/1.1 200 OK
Content-Type: application/pdf
Link: <https://example.com/docs/guide.pdf>; rel="alternate"; hreflang="en", <https://example.com/it/docs/guida.pdf>; rel="alternate"; hreflang="it", <https://example.com/es/docs/guia.pdf>; rel="alternate"; hreflang="es"

Comprueba qué envía de verdad el servidor con:

curl -sI https://example.com/it/docs/guida.pdf | grep -i '^link:'

Un ejemplo práctico: una URL, tres idiomas

La teoría se entiende mejor con un caso concreto. Supón que gestionas un e-commerce con páginas de producto en inglés (internacional), italiano y español. La estructura de URLs es esta:

  • https://example.com/products/widget/ (en, x-default)
  • https://example.com/it/products/widget/ (it)
  • https://example.com/es/products/widget/ (es)

Cada una de esas tres URLs debe llevar un conjunto completo y recíproco de anotaciones hreflang. Esto es lo que debe contener el head de la página inglesa:

<link rel="alternate" hreflang="en"
      href="https://example.com/products/widget/" />
<link rel="alternate" hreflang="it"
      href="https://example.com/it/products/widget/" />
<link rel="alternate" hreflang="es"
      href="https://example.com/es/products/widget/" />
<link rel="alternate" hreflang="x-default"
      href="https://example.com/products/widget/" />

La página italiana (/it/products/widget/) debe contener las mismas cuatro etiquetas, con las mismas cuatro URLs, sin cambios. Lo mismo vale para la página española. Las tres páginas llevan el conjunto completo; lo único que cambia entre ellas es su canonical, que cada página apunta a sí misma. Si la página italiana pierde la etiqueta hacia la española, Google ignora el hreflang entre esas dos páginas. Los demás pares siguen funcionando, y ningún informe de Search Console avisa del par roto.

En este ejemplo, el x-default y la página inglesa comparten la misma URL, un patrón común en sitios sin una página dedicada a elegir el idioma. Si tienes una página selectora en /products/, apunta ahí el x-default. Fíjate también en que los códigos de idioma son valores ISO 639-1 simples (en, it, es) y no códigos con región. Añade un calificador de región (en-GB, es-MX) solo cuando sirves contenido distinto a usuarios de países distintos que hablan el mismo idioma; si no, el código simple cubre a todos los hablantes de ese idioma.

Hreflang y etiquetas canonical

Las dos etiquetas hacen trabajos distintos. La canonical elige una URL para indexar dentro de un grupo de duplicados. Hreflang enlaza páginas equivalentes en idiomas o regiones distintos. Funcionan juntas solo cuando cada página local es su propia canonical.

  • Da a cada página local una canonical autorreferencial.
  • Nunca apuntes la canonical de una versión local a otra. La página italiana no apunta su canonical a la página inglesa.
  • Lista en hreflang solo URLs canonical. Una URL con parámetros de seguimiento, otra barra final o una redirección es lo que las herramientas de auditoría señalan como "hreflang to non-canonical".
  • En páginas paginadas o filtradas, una página 2 con canonical autorreferencial lleva hreflang hacia la página 2 de los otros idiomas. Si la página 2 apunta su canonical a la página 1, déjala sin hreflang.

Mal. La página italiana indica la página inglesa como su canonical, así que Google la trata como un duplicado de la página inglesa y el hreflang que lleva no tiene efecto:

<!-- En https://example.com/it/products/widget/ -->
<link rel="canonical" href="https://example.com/products/widget/" />
<link rel="alternate" hreflang="en" href="https://example.com/products/widget/" />
<link rel="alternate" hreflang="it" href="https://example.com/it/products/widget/" />
<link rel="alternate" hreflang="es" href="https://example.com/es/products/widget/" />

Bien. La página italiana es su propia canonical y lista todas las variantes:

<!-- En https://example.com/it/products/widget/ -->
<link rel="canonical" href="https://example.com/it/products/widget/" />
<link rel="alternate" hreflang="en" href="https://example.com/products/widget/" />
<link rel="alternate" hreflang="it" href="https://example.com/it/products/widget/" />
<link rel="alternate" hreflang="es" href="https://example.com/es/products/widget/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/products/widget/" />

Para confirmar el resultado, revisa la URL italiana con Inspección de URLs en Search Console. La canonical seleccionada por Google debe ser la propia URL italiana. Las páginas regionales del mismo idioma que son casi copias, como en-GB y en-US con el mismo texto, pueden acabar igualmente bajo una sola canonical, así que dales diferencias locales reales: precio, moneda, envíos y datos de contacto.

Errores comunes de hreflang y cómo corregirlos

Herramientas de auditoría como Ahrefs Site Audit, Semrush y Screaming Frog describen los problemas de hreflang con palabras un poco distintas. La primera columna muestra el nombre en inglés que verás más a menudo en los informes. Donde el estudio de Ahrefs de 2023 sobre 374.756 dominios midió un problema, el porcentaje de dominios afectados está en la segunda columna.

Error tal como lo llaman las herramientas de auditoríaQué significaCómo corregirlo
Missing return links (no return tags)La página A apunta a la página B, pero B no apunta de vuelta. Ahrefs lo encontró en el 15,3% de los dominios.Genera el conjunto de etiquetas de cada página desde un único mapa de versiones locales, para que las dos páginas impriman la misma lista.
Missing self-referencing hreflangLa página lista a sus hermanas pero no a sí misma. Google pide que cada versión de idioma se liste a sí misma. Ahrefs encontró esta omisión en el 18% de los dominios.Añade la URL de la propia página con su propio código. Cuesta una línea y quita el aviso.
x-default hreflang annotation missingNo hay respaldo para los usuarios cuyo idioma no coincide con ninguna variante. Es el problema más común en los datos de Ahrefs, en el 56,3% de los dominios.Añade un x-default que apunte a un selector de idioma o a tu versión de respaldo, con el mismo valor en cada página.
Hreflang to non-canonicalUna URL del conjunto tiene una canonical que apunta a otra URL, a menudo una variante con parámetros o con otra barra final. Encontrado en el 8% de los dominios.Lista solo URLs canonical. Corrige la canonical o el hreflang para que nombren la misma URL.
Hreflang to redirect or broken page (non-200 hreflang URLs)Una etiqueta apunta a una URL 3xx, 4xx o 5xx, así que Google no puede leer ahí un enlace de retorno. Encontrado en el 16,9% de los dominios.Apunta cada etiqueta a la URL final que responde 200 y actualiza hreflang en el mismo despliegue que cualquier redirección.
Invalid language or region codeValores como "eng" (tres letras), "ua" para el ucraniano, "la" para Latinoamérica, o un código de país sin idioma. Encontrado en el 4,6% de los dominios.Usa un código de idioma ISO 639-1 y luego, si hace falta, una región ISO 3166-1 Alpha 2: en-GB, pt-BR, de-AT. Google tolera en-UK, pero el valor ISO es en-GB.
Hreflang and HTML lang mismatchLa página dice lang="it" en su etiqueta html pero se declara como en. Encontrado en el 3,2% de los dominios. Google ignora html lang para detectar el idioma, pero la diferencia suele indicar que una plantilla imprime la versión local equivocada.Toma los dos valores de la misma variable de idioma en la plantilla.
Hreflang conflicts within page source codeLa página da dos URLs distintas para un mismo código, o dos métodos dan valores distintos.Deja una sola entrada por código en cada página. Si usas dos métodos, haz que sus valores sean idénticos, o elimina uno.
Relative hreflang URLsEl href es /it/ en lugar de una URL completa. Google pide URLs completas.Escribe https://example.com/it/ entero.
Hreflang tags outside the headLos elementos link están en el body, o un elemento no válido más arriba en el head cierra el head antes de que Google llegue a ellos.Imprime las etiquetas al principio del head, antes de scripts o widgets que insertan elementos del body.
Hreflang to a page missing in that localeLa etiqueta apunta a una versión local que no existe, que suele devolver un 404 o redirigir a la página de inicio.Lista solo las variantes que existen. Google permite omitir algunos idiomas en algunas páginas.

Error 1: enlaces de retorno ausentes

Las anotaciones hreflang deben ser bidireccionales: si la página A declara la página B como su variante francesa, la página B debe declarar la página A como su variante inglesa. Si falta cualquiera de las dos direcciones, Google ignora las dos anotaciones. Ahrefs encontró enlaces de retorno ausentes en el 15,3% de los dominios que revisó.

Parece sencillo, pero a gran escala se complica. Con 10 variantes de idioma, cada página necesita 10 etiquetas hreflang (incluida la autorreferencial), y las 10 páginas deben tener anotaciones coherentes. Son 100 anotaciones que deben estar perfectamente sincronizadas en 10 páginas distintas. Una anotación que falta rompe el enlace entre ese par de páginas, y un fallo en la plantilla lo rompe en todas las páginas a la vez.

La solución es generar las anotaciones hreflang de forma programática desde una única fuente de verdad, normalmente una base de datos o un CMS que sabe qué páginas son traducciones unas de otras. No mantengas nunca a mano las etiquetas hreflang en las páginas localizadas.

Errores 2 y 3: códigos de idioma equivocados y x-default ausente

Error 2: códigos de idioma y región equivocados. Hreflang usa códigos de idioma ISO 639-1 y, si hace falta, códigos de región ISO 3166-1 Alpha 2. Los errores comunes son "ua" para el ucraniano (ua es el código del país; el código del idioma es "uk"), "la" para Latinoamérica (LA es el código de país de Laos) y los códigos de idioma de tres letras, que Google no admite. El inglés británico es "en-GB", porque GB es el código de región ISO. Google también acepta "en-UK", ya que UK es un código reservado, pero en-GB es la opción segura. Los códigos de escritura son válidos: "zh-Hans" y "zh-Hant" marcan el chino simplificado y el tradicional, mientras que "zh-CN" marca el chino para usuarios en China. Elige el que corresponde a cómo divides el contenido.

En los proyectos europeos, presta atención a las variantes regionales: "pt" (portugués) es distinto de "pt-BR" (portugués de Brasil). "en-GB" y "en-US" son variantes distintas. Si sirves contenido distinto a usuarios austriacos ("de-AT") y alemanes ("de-DE"), necesitas anotaciones hreflang separadas para cada uno.

Error 3: etiqueta x-default ausente. El valor hreflang x-default indica a los buscadores qué página mostrar cuando ninguna otra variante coincide con el idioma o la región del usuario. Sin él, Google elige por su cuenta, y puede que no sea lo que quieres. Incluye siempre un x-default que apunte a tu página de selección de idioma o a tu versión en inglés como respaldo.

Errores 4 y 5: conflictos con la canonical y páginas que no dan 200

Error 4: conflictos entre canonical y hreflang. Si una página tiene una etiqueta canonical que apunta a una URL distinta de la que indica la anotación hreflang, Google sigue la canonical e ignora el hreflang. Cada página citada en tus anotaciones hreflang debe tener una canonical autorreferencial. Si tu página francesa en /fr/product/ tiene una canonical que apunta a /en/product/, la anotación hreflang de la página francesa se ignora en silencio.

Error 5: hreflang que apunta a páginas que no dan 200. Cada URL de tus anotaciones hreflang debe responder con el código de estado HTTP 200. Si una URL responde con una redirección 301, un 404 o un error 500, Google no puede leer ahí un enlace de retorno, así que las anotaciones que apuntan a esa URL se ignoran. Pasa a menudo durante migraciones o cambios en la estructura de URLs, cuando las URLs antiguas se redirigen pero las anotaciones hreflang no se actualizan al mismo tiempo.

Para detectar estos problemas, configura una monitorización automática. Search Console no tiene informe de errores de hreflang desde que Google retiró el informe International Targeting en septiembre de 2022. Rastreadores como Screaming Frog, Sitebulb o Ahrefs Site Audit revisan cada anotación en cada rastreo, así que lanza uno después de cada despliegue que toque URLs o plantillas.

Cómo validar tu implementación de hreflang

Poner las etiquetas en la página es solo la mitad del trabajo. Tienes que confirmar que Google las lee y que nada se rompe después. Google retiró el informe International Targeting de Search Console el 22 de septiembre de 2022, y ningún informe de hreflang lo ha sustituido. Hoy la validación combina un rastreador, una revisión del código fuente y los informes de Search Console que siguen existiendo.

Un rastreador dedicado a hreflang. Herramientas como Screaming Frog (Configuration > Spider > Crawl linked XML sitemaps and hreflang), Sitebulb y JetOctopus siguen las relaciones hreflang en todo tu conjunto de versiones locales en una sola pasada. Muestran enlaces recíprocos rotos, URLs que no coinciden entre páginas emparejadas y etiquetas que apuntan a redirecciones o 404, todo en una sola exportación. Para cualquier sitio con más de dos o tres variantes locales, un rastreo es la única forma realista de encontrar los errores sistemáticos.

Una comprobación rápida con curl para una URL. Cuando quieres verificar una sola página justo después del despliegue, puedes leer el head HTML en bruto sin un rastreo completo:

curl -s "https://example.com/products/widget/" | grep -i hreflang

El comando imprime cada elemento link hreflang del código fuente de la página. Comprueba que el número coincide con las variantes locales que esperas (x-default incluido) y que cada URL es absoluta y no relativa. Google pide URLs completas, y las herramientas de auditoría señalan las relativas.

Search Console, paso a paso. Estos informes no listan errores de hreflang, pero muestran si Google conservó cada página local y la sirvió en el mercado correcto:

  1. Inspección de URLs. Revisa una URL por cada versión local. En Indexación de páginas, la canonical seleccionada por Google debe coincidir con la declarada por el usuario, y las dos deben ser la URL que has revisado.
  2. Informe Páginas. En Indexación, abre Páginas y busca URLs locales entre los duplicados en los que Google eligió una canonical distinta de la declarada (en la interfaz en inglés, "Duplicate, Google chose different canonical than user"). Una carpeta local en esa lista significa que Google la ha agrupado con otra versión.
  3. Informe Sitemaps. Si usas el método del sitemap, comprueba que el estado no muestra errores y que el número de URLs descubiertas coincide con el de URLs locales que enviaste.
  4. Informe Rendimiento. Filtra por país y luego mira la pestaña Páginas. Las impresiones desde Italia deben llegar a las URLs italianas, y así con cada mercado.

Preguntas frecuentes sobre hreflang

¿Cómo se implementan correctamente las etiquetas hreflang?

Declara hreflang en un solo lugar por página (elementos link en el head, cabeceras HTTP o entradas del sitemap XML) y mantén ese método de forma coherente. Cada variante hace referencia a todas las demás, incluida ella misma, y cada referencia tiene que ser recíproca. Ahrefs encontró autorreferencias ausentes en el 18% de los dominios y enlaces de retorno ausentes en el 15,3%.

¿Dónde van las etiquetas hreflang: head HTML, cabecera HTTP o sitemap?

El head HTML encaja con sitios de menos de cinco variantes locales. Las cabeceras HTTP sirven para archivos que no son HTML, como los PDF, o cuando no puedes editar el head. El método del sitemap es el mejor a gran escala, cuando tienes cientos de páginas por idioma y quieres que las páginas pesen poco. Google considera equivalentes los tres métodos, y usar más de uno no aporta nada. Si usas dos, sus valores deben coincidir, porque los valores en conflicto son un error frecuente en las auditorías.

¿Qué significa x-default?

x-default es el valor hreflang de respaldo. Indica a los buscadores qué página servir cuando ningún idioma o región coincide con el usuario, y suele apuntar a un selector de idioma o a la versión principal en inglés. Si lo omites, Google adivina, y a menudo aparece la versión equivocada en las regiones sin mapear.

¿Por qué no funciona mi hreflang?

Los cinco sospechosos habituales: un enlace no recíproco, un código ISO equivocado (ua en lugar de uk para el ucraniano), una canonical que apunta a otra versión local, valores en conflicto entre dos métodos de declaración, o hreflang que apunta a una URL que da 404 o redirige. Search Console no tiene informe de hreflang desde 2022, así que usa un rastreador como Screaming Frog y revisa la canonical seleccionada por Google en Inspección de URLs antes de concluir que Google ignora las etiquetas.

¿Qué diferencia hay entre hreflang y canonical?

La canonical le dice a Google qué URL indexar dentro de un grupo de duplicados. Hreflang le dice a Google qué página equivalente mostrar a cada idioma o región. Usa las dos: cada página local es canonical de sí misma y lista a todas sus hermanas en hreflang. Una canonical que apunta a otra versión local anula el hreflang de esa página.

¿Y si una página solo existe en algunos idiomas?

Lista solo las variantes que existen. Google acepta un conjunto distinto en cada página, así que una página solo en inglés e italiano lleva en, it y x-default, mientras que una página en los tres idiomas lleva los cuatro valores. No tapes el hueco apuntando el idioma que falta a la página de inicio o a un 404.

¿Cómo mantengo hreflang correcto cuando el CMS genera las URLs localizadas de forma dinámica?

Genera las etiquetas desde el mismo mapa de versiones locales que construye las URLs, al renderizar o en el proceso que genera el sitemap. Cuando lanzas una nueva versión local, el mapa recibe una entrada más y cada página del clúster imprime la nueva etiqueta en el siguiente renderizado o en la siguiente generación del sitemap. Rastrea el sitio después de cada lanzamiento para encontrar las páginas que el mapa se saltó.

Tenemos ocho mercados y ninguna estrategia de hreflang. ¿Por dónde empezamos?

Decide, mercado por mercado, si necesitas una URL por idioma o una por país. Divide por país solo donde cambian los precios, los envíos, las condiciones legales o la oferta. Después construye el mapa de versiones locales, elige un método (el sitemap escala mejor para catálogos grandes), publícalo en una plantilla, rastréalo y extiéndelo al resto. La checklist de once pasos de arriba cubre los detalles.

¿Ayuda hreflang con el contenido duplicado entre sitios de distintos países?

Sí, pero de una forma concreta. Hreflang no suprime las señales de contenido duplicado como lo hace una canonical. Le dice a Google que dos páginas parecidas están pensadas para públicos distintos, así que deben tratarse como resultados separados y dirigidos, no como copias que compiten entre sí. Si el contenido es casi idéntico entre versiones locales y solo cambian la moneda o el formato de las fechas, sigues necesitando las anotaciones, pero pregúntate con honestidad si esas páginas responden a necesidades distintas. Una diferenciación mínima con hreflang es mejor que nada, y una localización real envía señales más fuertes.

¿Cuántas etiquetas hreflang puede tener una página?

Google no documenta un límite. Cada variante añade un elemento link a cada página del clúster, así que el head crece con cada idioma que lanzas. A partir de cinco variantes locales, pasa al método del sitemap, que no añade peso a la página.

¿Necesito hreflang si mis páginas están en el mismo idioma pero apuntan a países distintos?

Sí. Si sirves contenido distinto, por ejemplo, a usuarios británicos y australianos de habla inglesa (precios, disponibilidad de productos o condiciones legales distintos), hreflang con códigos de región (en-GB y en-AU) le dice a Google que muestre cada variante al público correcto. Sin él, Google elige la versión que considera con más autoridad y puede mostrarla en todas partes. Las páginas que solo cambian en la ortografía de "colour" probablemente no compensan el trabajo extra; las que tienen precios, envíos o avisos legales distintos sí.

Parte de nuestra guía completa: International SEO →

Este artículo forma parte de nuestro knowledge hub sobre international seo. Lee la guía completa para un marco estratégico completo.

Artículos Relacionados

Casos de Estudio Relacionados

Lecturas relacionadas

Lecturas relacionadas

Lecturas relacionadas

Lecturas relacionadas

Lecturas relacionadas

¿Listo para poner en práctica estas estrategias?

Nuestro equipo ayuda a las empresas a implementar los marcos y estrategias tratados en este artículo.

Contáctanos