InicioHerramientasGenerador de hreflang
Generador de hreflang y validador
Indica las versiones de idioma o de país de una página y la herramienta genera un conjunto recíproco completo en tres formatos: etiquetas para el <head>, sitemap XML y cabecera HTTP. La pestaña de validación encuentra errores en el marcado existente: es_MX en lugar de es-MX, un país sin idioma, URL relativas, duplicados.
—
HTML: en el <head> de cada versión
Sitemap XML
Cabecera HTTP: para PDF y otros archivos que no son HTML
Elige un solo método. Para Google, etiquetas, sitemap y cabecera son equivalentes; no hace falta duplicar el marcado, y las discrepancias entre métodos solo confunden a los buscadores.
—
| Línea | hreflang | URL | Estado |
|---|
Todo se calcula en tu navegador: nada de lo que escribes se envía a ningún sitio.
Cómo usarla
- Describe la estructuraEscribe el dominio, la ruta de la página y dónde están las versiones: subcarpetas o subdominios. Elige un conjunto de idiomas o añade filas a mano.
- Revisa códigos y URLLa herramienta marca es_MX, países sin idioma, duplicados y URL relativas, y sugiere el valor correcto.
- Copia un formatoLas etiquetas van en el <head> de cada versión, el sitemap en tu archivo de sitemap y la cabecera HTTP para PDF y otros archivos. El conjunto es idéntico en todas las versiones.
- Valida una página publicadaPega su HTML en «Validar una página»: la herramienta extrae los enlaces, encuentra errores y pasa un conjunto corregido al generador.
Qué es hreflang y para qué sirve
hreflang indica a los buscadores que una página tiene versiones en otros idiomas o para otros países. Google usa estos enlaces para mostrar a cada usuario la versión adecuada: a alguien en México, /mx/precios con precios en pesos; a alguien en España, /es/precios en euros. No es un factor de posicionamiento como tal: ayuda a elegir qué URL mostrar.
Google admite tres métodos de marcado equivalentes:
El valor del atributo es un código de idioma ISO 639-1, opcionalmente seguido de un código de país ISO 3166-1 alfa-2 tras un guion: es, es-MX, es-AR. El valor especial x-default marca la página para todos los demás: un selector de idioma o la versión principal.
Un sitio en un solo idioma y para un solo mercado no necesita hreflang. Hace falta cuando la misma página existe en varias variantes: traducciones, versiones regionales con precios y monedas distintos, o sitios en español para varios países con textos adaptados.
Cómo implementar hreflang correctamente
Reciprocidad y autorreferencia
La regla clave de la documentación de Google: los enlaces deben ser recíprocos. Si la versión mexicana apunta a la española, la española debe apuntar de vuelta a la mexicana; si no, el marcado puede ignorarse. Además, cada versión se incluye a sí misma. Lo más sencillo es poner el mismo conjunto completo en todas las versiones, que es justo lo que genera la herramienta.
Códigos
- El idioma es siempre obligatorio; el país, solo junto a un idioma.
hreflang="MX"es un error: usaes-MX. - El separador es un guion.
es_MXaparece en los locales del software y enog:locale, pero en hreflang lo correcto eses-MX. - No existe un código de país para «Latinoamérica»:
es-LAsignifica español para Laos. La región numéricaes-419es válida en BCP 47, pero Google solo documenta países de dos letras, así que es más seguro enumerares-MX,es-AR,es-CO… - Un idioma sin país funciona como respaldo para todos los países. Si tienes
es-ESyes-MX, añadeespara los hispanohablantes de otros países, por ejemplo apuntando a la versión latinoamericana.
hreflang y canonical
Cada versión debe ser canónica de sí misma. Un error habitual es apuntar el rel="canonical" de todas las variantes a la versión de España: eso declara las demás como duplicados y los buscadores pueden no mostrarlas. Esto pasa mucho con versiones por país casi idénticas: si /mx/ y /es/ solo se diferencian en la moneda, mantén el canonical propio en cada una y deja que hreflang explique la relación. Las URL de hreflang deben coincidir con las canónicas: sin parámetros extra, con el mismo protocolo y la misma barra final.
URL
Usa URL completas con protocolo y dominio: https://example.com/mx/, no /mx/. Las versiones pueden estar en dominios distintos (example.com.mx, example.es): hreflang funciona entre dominios. Las páginas del conjunto deben devolver 200 y no estar bloqueadas para la indexación.
Estructura de un sitio multilingüe y elección de URL
Google se basa en hreflang. Bing históricamente ha recomendado el atributo lang de HTML o la metaetiqueta content-language y una estructura de URL clara, y da menos peso a hreflang. En la práctica, pon tanto el atributo lang como hreflang.
Dominios de país, subdominios o subcarpetas
La guía de Google para sitios multirregionales y multilingües compara las opciones así:
- Dominios de país (
example.com.mx,example.es): la señal de país más clara, pero cada dominio se compra, se mantiene y se hace crecer por separado. - Subdominios (
mx.example.com): fáciles de alojar por separado; la relación con el sitio principal es menos evidente para los usuarios. - Subcarpetas (
example.com/mx/): lo más fácil de mantener, un solo host y un historial de dominio compartido. Para un SaaS suele ser la opción más práctica. - Parámetros de URL (
?pais=mx): Google no los recomienda, porque dificultan saber qué versión ve el usuario.
Elijas lo que elijas, no redirijas automáticamente a los usuarios por IP o por idioma del navegador. Los rastreadores podrían no ver nunca las demás versiones, y la gente podría no llegar a la que quería. Muestra un selector de idioma o país visible y deja que hreflang indique a los buscadores la URL correcta.
Errores habituales de hreflang
- Sin enlaces de vuelta. El marcado se añadió solo en la versión principal y las demás no enlazan a ella.
- Sin autorreferencia. La página enumera todas las versiones menos ella misma.
- Códigos no válidos:
es_MX,es-LApara Latinoamérica,mxsin idioma, códigos de tres letras comospa. - URL relativas, o con parámetros de seguimiento o #fragmentos.
- Canonical hacia otra versión. Las variantes quedan declaradas como duplicados de la principal.
- Versiones bloqueadas para la indexación en robots.txt o con noindex: el enlace apunta a una página que el buscador no puede usar.
- Un código, dos URL. Dos URL distintas con
hreflang="es"en el mismo conjunto. - Páginas sin adaptar. Una versión «para México» idéntica a la de España, con euros y «ordenador», es un duplicado, no una versión regional.
- Marcado en varios sitios que no coincide: un conjunto en el HTML y otro en el sitemap.
Fuentes
- Google Search Central. Informar a Google sobre las versiones localizadas de tu página — developers.google.com/search/docs/specialty/international/localized-versions.
- Google Search Central. Gestionar sitios multirregionales y multilingües — developers.google.com/search/docs/specialty/international/managing-multi-regional-sites.
- ISO 639-1:2002. Codes for the representation of names of languages — Part 1: Alpha-2 code; registro — loc.gov/standards/iso639-2.
- ISO 3166-1. Codes for the representation of names of countries — iso.org/iso-3166-country-codes.html.
- RFC 5646 (BCP 47). Tags for Identifying Languages. IETF, 2009.
- Sitemaps.org. Sitemap protocol — sitemaps.org/protocol.html.
- Bing Webmaster Blog. How to optimize your content for search in multiple languages and regions — blogs.bing.com/webmaster.
Preguntas frecuentes
¿Cómo implemento hreflang?
En cada versión de idioma o país, añade el conjunto completo de etiquetas link rel="alternate" con hreflang: hacia todas las versiones, incluida la propia página, y opcionalmente x-default. El código es un idioma ISO 639-1, opcionalmente con un país ISO 3166-1 tras un guion; las URL deben ser absolutas. El generador crea este conjunto automáticamente.
¿Qué es x-default en hreflang?
El valor para los usuarios cuyo idioma o país no coincide con ninguna versión. Normalmente apunta a un selector de idioma o a la versión principal. Es opcional, pero Google lo recomienda.
¿Cómo marco una versión para toda Latinoamérica?
No existe un código de país para Latinoamérica: es-LA significa español para Laos. La región es-419 es válida en BCP 47, pero Google solo documenta códigos de país de dos letras. Lo más seguro es apuntar la versión latinoamericana con es (idioma sin país) o enumerar los países: es-MX, es-AR, es-CO, es-CL.
¿Puedo indicar solo el país, como hreflang="MX"?
No. El idioma es obligatorio y el país se añade tras un guion. hreflang="es" significa español; para una versión en español dirigida a México, usa es-MX.
¿hreflang en el HTML o en el sitemap?
Google trata los métodos como equivalentes. Las etiquetas en el head van bien en sitios pequeños; el sitemap, en sitios grandes donde no quieres cargar cada página; y la cabecera HTTP, en PDF y otros archivos que no son HTML. Elige un método y evita discrepancias.
¿Necesito canonical además de hreflang?
Sí, pero cada versión debe ser canónica de sí misma. Un canonical desde la versión mexicana hacia la española dice a los buscadores que la mexicana es un duplicado y hace que no se muestre.
¿Basta hreflang para Bing?
No por sí solo. Bing históricamente ha recomendado el atributo lang de HTML o la metaetiqueta content-language y da menos peso a hreflang que Google. Pon lang y hreflang para cubrir los dos buscadores.
Más en SEO
- Vista previa del snippet
¿Cómo se verán el título y la descripción en Google y se cortarán?
- Generador de Open Graph
¿Qué etiquetas Open Graph necesita la página y cómo se verá la vista previa del enlace?
- Analizador de legibilidad
¿Qué tan difícil es leer este texto y qué frases son demasiado largas?
- Generador y probador de robots.txt
¿Qué regla de robots.txt bloquea o permite esta URL para un rastreador?
- Generador de UTM
¿Cómo crear enlaces UTM coherentes para cada campaña y canal?
- Generador de QR con UTM
¿Qué stand, folleto o póster trajo visitas, y cómo etiquetar un código QR para cada uno?