Redirecciones geográficas: cómo redirigir visitantes por país (seguro para SEO)

5 de octubre de 2023
9 mins de lectura
Redirecciones geográficas: cómo redirigir visitantes por país (seguro para SEO)

Respuesta directa

Una redirección geográfica (redirección por país) envía a los visitantes a una URL diferente según el país del que parezca provenir su dirección IP. Puedes configurarla en tu CDN o servidor, por ejemplo con una regla de redirección de Cloudflare basada en ip.src.country, una línea de _redirects de Netlify con Country=de o unas pocas líneas de middleware. Para SEO, Google desaconseja forzar a los visitantes (y a Googlebot) a una versión basada en IP: mantén cada versión por país en su propia URL, enlázalas con hreflang y sugiere la versión local con un banner en su lugar. Si rediriges por IP, usa un 302, solo en la página de entrada y nunca redirijas fuera de una URL de país que alguien haya abierto directamente. Los dominios de país que posees (mybrand.de) son un caso distinto: una simple 301 a la sección correspondiente (mybrand.com/de/) es segura.

"Redirigir visitantes por país" puede significar dos cosas muy distintas. Una es una redirección fija: todo lo que está en mybrand.de va a mybrand.com/de/, para cualquier visitante. La otra es una redirección geográfica: la misma URL envía a un visitante en Alemania a /de/ y a un visitante en Francia a /fr/, en función de su dirección IP. La primera es una redirección normal que los motores de búsqueda gestionan sin problemas. La segunda cambia lo que ven las personas (y los rastreadores) según desde dónde parezca que están, y ahí es donde surgen la mayoría de los problemas de SEO.

Esta guía cubre ambas cosas: lo que Google dice sobre la redirección basada en IP, las reglas que mantienen segura una redirección geográfica, cómo configurarla en Cloudflare, Netlify, Vercel y Nginx, cómo mostrar contenido local sin redirigir en absoluto y cómo apuntar tus dominios de país a la sección correcta.

Redirección geográfica, redirección por país, redirección por IP: qué significan los términos#

  • Redirección geográfica / redirección basada en IP: el servidor (o CDN) consulta la dirección IP del visitante en una base de datos de geolocalización, obtiene un código de país como DE o FR y redirige a una URL elegida para ese país.
  • Redirección por idioma: la misma idea, pero basada en el encabezado Accept-Language del navegador en lugar de la dirección IP.
  • Redirección de dominio de país: un ccTLD que posees (mybrand.de, mybrand.fr) redirige a un destino fijo, normalmente la sección correspondiente de tu sitio principal. No tiene en cuenta al visitante en absoluto.
Three ways to send visitors to their country version: a fixed 301 from a country domain to a section, a 302 geo redirect by IP, and a suggestion banner that lets the visitor choose

¿La redirección basada en IP es mala para el SEO?#

Puede serlo, porque los motores de búsqueda no rastrean desde los países de tus visitantes. La documentación de Google es clara al respecto:

  • Googlebot rastrea con direcciones IP basadas fuera de EE. UU., además de direcciones IP basadas en EE. UU.[1], y envía solicitudes sin encabezado Accept-Language. Una redirección que elija la versión por IP o idioma puede mostrarle al rastreador solo una versión.
  • En su guía multirregional, Google dice que se debe evitar redirigir automáticamente a los usuarios de una versión de idioma a otra[2], y no usar el análisis de IP para adaptar el contenido, porque la ubicación de la IP es "difícil y, por lo general, no fiable".
  • Google recomienda una URL separada para cada versión de idioma o país, enlaces entre las versiones y anotaciones hreflang que indiquen a Google qué URL corresponde a cada configuración regional[3].

Así que una redirección geográfica no es una penalización en sí misma, pero una descuidada oculta páginas a Google, envía a viajeros y usuarios de VPN a la tienda equivocada y puede atrapar a personas que quieren otra versión. Para el efecto general de las redirecciones en los rankings, consulta nuestra guía sobre tipos de redirecciones y sus efectos SEO.

Si aun así rediriges por país: 6 reglas para que sea seguro para SEO#

  • Usa una redirección temporal (302 o 307), no una 301. El destino depende del visitante, así que el cambio no es permanente, y los navegadores almacenan en caché las 301. Nuestra guía de 301 frente a 302 explica la diferencia.
  • Redirige solo el punto de entrada, normalmente la página de inicio. Nunca desvíes a alguien de una URL de país que abrió directamente, como un enlace a mybrand.com/fr/ compartido con un lector en Alemania.
  • Mantén accesible y enlazada cada versión de país. Añade un selector visible de país o idioma a todas las páginas.
  • Añade hreflang a cada versión, además de un x-default para la página que atiende a visitantes fuera de tus países objetivo.
  • Recuerda la elección del visitante en una cookie y respétala en la próxima visita, aunque la IP diga lo contrario.
  • Trata a Googlebot como a cualquier otro visitante de su ubicación. Mostrar a los rastreadores algo diferente de lo que ven los usuarios es cloaking.

Cómo cambiar el contenido de un sitio web por país sin redirigir#

A menudo, la mejor respuesta a "cómo cambio el contenido de un sitio web según el país del visitante" es no redirigir en absoluto:

  • Banner de sugerencia: carga la página que el visitante pidió y muestra "Parece que estás en Alemania. ¿Ir al sitio alemán?" con un botón y una opción de "Quedarse aquí". Sigue el consejo de Google de enlazar tus otras versiones y dejar que la gente cambie, y nunca oculta una URL a los rastreadores.
  • Pequeños detalles locales en la misma URL: muestra los precios en la moneda local o una nota de envío local, mientras el contenido principal sigue siendo el mismo para todos. Google llama "adaptativas a la configuración regional" a las páginas que cambian según la configuración regional y advierte que puede que no vea todas las variaciones, así que mantén en su propia URL cualquier cosa que quieras indexar.
  • URLs separadas por país con hreflang: /de/, /fr/ o de.mybrand.com, cada una indexable por separado, para que la búsqueda envíe a las personas directamente a su versión y no haga falta redirigir.

Cómo configurar una redirección por país#

Estos ejemplos redirigen solo la página de inicio, con un 302. Ajusta los códigos de país (ISO 3166-1 alpha-2, como DE, FR, GB) y las rutas a tu sitio. Los datos se verificaron en la documentación de cada proveedor en octubre de 2026.

Cloudflare: una regla de redirección según el país del visitante#

Si tu dominio pasa a través de Cloudflare mediante proxy, crea una regla de redirección (una sola redirección) con una expresión de filtro personalizada y un destino dinámico. Cloudflare expone el país del visitante como ip.src.country. El propio ejemplo de Cloudflare[4] envía a los visitantes de GB y FR en la página de inicio a un subdominio de país:

text# Cuando las solicitudes entrantes coincidan (expresión de filtro personalizada)
(ip.src.country eq "GB" or ip.src.country eq "FR") and http.request.uri.path eq "/"

# Entonces: redirección dinámica, expresión de URL de destino
lower(concat("https://", ip.src.country, ".example.com"))

# Código de estado: el ejemplo de Cloudflare usa 301; elige 302 para una redirección geográfica

Netlify: condiciones de país en _redirects#

Netlify lee las condiciones de país e idioma en el archivo _redirects[5]. Los códigos de país van separados por comas y sin espacios, y los visitantes pueden anular el país detectado con la cookie nf_country, que es así como haces que un selector se mantenga:

text# Los visitantes de Alemania o Austria que abran la página de inicio van a /de/
/  /de/  302  Country=de,at

# Los visitantes de Francia van a /fr/
/  /fr/  302  Country=fr

Vercel: Middleware de enrutamiento con geolocation()#

En Vercel, un archivo middleware.ts en la raíz del proyecto se ejecuta antes de cada solicitud, y el ayudante geolocation() de @vercel/functions[6] devuelve el país del visitante. Response.redirect() envía un 302 por defecto. Geolocation no está configurado durante el desarrollo local, así que prueba en un despliegue:

typescriptimport { geolocation, next } from '@vercel/functions';

export const config = { matcher: '/' }; // solo la página de inicio

const SITES: Record<string, string> = { DE: '/de/', AT: '/de/', FR: '/fr/' };

export default function middleware(request: Request) {
  // Respeta una elección que el visitante ya haya hecho en tu selector de país
  if (request.headers.get('cookie')?.includes('country_choice=')) return next();

  const { country } = geolocation(request);
  const path = country ? SITES[country] : undefined;
  if (path) return Response.redirect(new URL(path, request.url), 302);
  return next();
}

Nginx: el módulo GeoIP2 y una base de datos de MaxMind#

Nginx necesita el módulo de terceros ngx_http_geoip2_module[7] y una base de datos de países como MaxMind GeoLite2-Country (gratis con una cuenta). Asigna el código de país a una ruta y luego redirige solo la página de inicio:

nginx# bloque http {}
geoip2 /etc/nginx/GeoLite2-Country.mmdb {
    $geoip2_country_code default=US country iso_code;
}
map $geoip2_country_code $country_home {
    default "";
    DE /de/;
    AT /de/;
    FR /fr/;
}

# bloque server {}
location = / {
    if ($country_home) { return 302 $country_home; }
    # de lo contrario, sirve la página de inicio predeterminada
}

Sea cual sea la plataforma que uses, pruébala desde más de un país antes de confiar en ella: una VPN, un colega en el extranjero o una comprobación remota. Nuestra prueba de velocidad de redirección gratuita muestra el código de estado, dónde termina la URL y si HTTPS es válido, medido desde Washington, Frankfurt y Tokio. Si algo parece raro, nuestra guía de redirecciones que no funcionan enumera las causas habituales.

¿Tu redirección funciona? Introduce tu dominio. Verás el código de estado (301 o 302), dónde termina, si HTTPS es válido y qué tan rápido responde desde Washington, Frankfurt y Tokio, comparado con cada redirección probada en los últimos 7 días.

Probar mi redirección

Dominios de país: apunta cada ccTLD a su sección#

Muchas marcas tienen dominios de país que no usan como sitios independientes: mybrand.de, mybrand.fr, mybrand.com.au. Son comunes: alrededor de una de cada cuatro cuentas en RedirHub redirige al menos un dominio de código de país (datos de la plataforma RedirHub, octubre de 2026). La forma correcta de usarlos es una redirección fija a la sección correspondiente de tu sitio principal, no una redirección geográfica:

  • mybrand.de y mybrand.at → mybrand.com/de/, conservando la ruta, para que mybrand.de/kontakt llegue a mybrand.com/de/kontakt.
  • mybrand.fr → mybrand.com/fr/, y así sucesivamente para cada país.

Como la redirección depende solo de la URL, todos los visitantes y todos los rastreadores obtienen la misma respuesta, por lo que un 301 es el código correcto. Si estás retirando sitios de país separados y uniéndolos en un solo dominio, trátalo como una migración de sitio web: asigna cada URL antigua a su nueva página en lugar de enviar todo a una sola página de inicio.

Cómo redirigir un dominio de país con RedirHub#

RedirHub no enruta por país del visitante; para eso, usa tu CDN o host como se muestra arriba. Lo que sí hace es la parte del dominio por país: responde para dominios que no tienen sitio web, conserva la ruta y funciona en 130 ubicaciones globales de edge (PoPs), cerca de cada visitante. Aquí está la configuración en el panel:

RedirHub New domain redirect screen: Redirect from mybrand.de and mybrand.at, Redirect to https://mybrand.com/de, 301 · Permanent and Keep the path selected, with What happens previews
  1. Inicia un nuevo redireccionamiento de dominio en el panel de RedirHub.
  2. En Redirigir desde, introduce el dominio del país, por ejemplo mybrand.de.
  3. Haz clic en Añadir otra fuente para cada dominio que deba ir a la misma sección, por ejemplo mybrand.at.
  4. En Redirigir a, introduce la sección, por ejemplo https://mybrand.com/de.
  5. En Tipo de redirección, deja 301 · Permanente.
  6. En Rutas, elige Conservar la ruta. El panel Qué sucede muestra que mybrand.de/kontakt va a mybrand.com/de/kontakt.
  7. Haz clic en Crear redirección.
  8. Abre Conectar DNS para cada dominio, elige Manual, añade los registros mostrados (un registro A en @ que apunte a 3.33.236.10 y el registro TXT que empieza por rehd-verify=), luego haz clic en He hecho los cambios.
  9. Una vez que el dominio aparezca como conectado, compruébalo con la prueba de velocidad de redirección.

Root y www cuentan como un solo dominio, y HTTPS se emite y se renueva para ambos mediante HTTPS automático, así que https://www.mybrand.de también funciona. Con una larga lista de antiguas URLs de países, usa importación masiva CSV para asignar a cada una su propia nueva página.

Redirección geográfica en tu CDN frente a dominios de país en RedirHub#

Redirección geográfica en tu CDN o hostRedirección de dominio de país en RedirHub
Decides byPaís de la IP del visitante (o idioma del navegador)La URL: la misma respuesta para todos
Código de estado típico302 / 307301
Funciona para dominios sin hostingSolo si el dominio está en esa CDNSí; DNS y correo permanecen donde están, solo cambian los registros raíz/www
PathsTú estableces las reglasConserva la ruta o asigna cada URL antigua a su propia página; varios dominios de origen por redirección
HTTPSDepende de tu configuraciónEmitido y renovado automáticamente para root y www
ReportingTus propias analíticasClics y visitantes únicos con bots filtrados; DNS revalidado cada 10 minutos
CostNormalmente incluido en tu plan de CDN o alojamientoDesde $49/mes (Core); prueba gratuita de 14 días en Pro

Si tu dominio ya está en Cloudflare, Netlify o Vercel y solo necesitas una redirección geográfica en la página principal, las herramientas integradas de arriba son suficientes y no cuestan nada extra. RedirHub vale la pena cuando tienes dominios por país sin alojamiento que necesitan apuntar a la sección correcta, con rutas y HTTPS gestionados por ti.

Errores comunes con las redirecciones por país#

  • Una redirección 301 para una redirección geográfica. Los navegadores la almacenan en caché, así que un viajero que una vez visitó desde Francia sigue aterrizando en /fr/ cuando vuelve a casa.
  • Redirigir todas las URL, no solo la página de entrada. Los enlaces compartidos y los resultados de búsqueda entonces llevan a la versión incorrecta.
  • Sin salida. Sin un selector y una elección recordada, los visitantes no pueden الوصول a la versión que quieren.
  • Falta hreflang. Google puede mostrar en la búsqueda la página del país equivocado o tratar las versiones como duplicadas.
  • Contenido diferente para Googlebot. Detectar el rastreador y omitir la redirección para él es cloaking.
  • Dominios de país apuntando a la página de inicio. Mantén la ruta para que los enlaces antiguos lleven a la página correspondiente.

Fuentes

  1. [1]Google Search Central: How Google crawls locale-adaptive pages
  2. [2]Google Search Central: Managing multi-regional and multilingual sites
  3. [3]Google Search Central: Localized versions of your pages
  4. [4]Cloudflare docs: Redirect visitors to country subdomains
  5. [5]Netlify docs: Redirect by country or language
  6. [6]Vercel docs: Routing Middleware API (geolocation)
  7. [7]ngx_http_geoip2_module (GitHub)

Preguntas frecuentes

Una redirección geográfica envía a un visitante a una URL diferente según el país desde el que parece provenir su dirección IP, por ejemplo /de/ para visitantes en Alemania y /fr/ para visitantes en Francia. Suele configurarse en una CDN, en las reglas de redirección de un host o con unas pocas líneas de código del servidor.

Puede serlo. Googlebot a menudo rastrea desde direcciones IP de EE. UU. y sin una cabecera Accept-Language, por lo que una redirección basada en IP o en el idioma puede ocultarle tus otras versiones por país. Google desaconseja redirigir automáticamente a los usuarios entre versiones de idioma. Si lo haces, usa un 302 solo en la página de entrada, mantén cada versión accesible y añade hreflang.

Un 302 (o 307). El destino depende de quién visita, así que el cambio no es permanente, y los navegadores almacenan en caché los 301. Usa un 301 solo para redirecciones fijas que sean iguales para todos, como mybrand.de a mybrand.com/de/.

Muestra un banner que sugiera la versión local y permita al visitante elegir, o mantén URLs separadas por país (como /de/ y /fr/) vinculadas con hreflang. Los detalles pequeños, como la moneda, pueden cambiar en la misma URL, pero cualquier cosa que quieras indexar debe estar en su propia URL.

Crea una regla de redirección con una expresión de filtro personalizada que compruebe ip.src.country, por ejemplo ip.src.country eq "DE" and http.request.uri.path eq "/", establece la URL de destino y elige un 302 para una redirección geográfica.

No. RedirHub redirige por URL, no por la ubicación del visitante. Es una buena opción para dominios por país como mybrand.de que deben apuntar a una sección de tu sitio principal, conservando la ruta y gestionando HTTPS. Para el enrutamiento basado en IP, usa tu CDN o tu host.

Redirige cada uno con un 301 a la sección correspondiente de tu sitio principal, conservando la ruta (mybrand.de/kontakt a mybrand.com/de/kontakt). Manténlos registrados para que los enlaces y correos antiguos sigan funcionando.

Trinayan Chakraborty

TC is the Operations Manager at RedirHub, leading the company’s operational strategy and execution to ensure reliable, scalable redirect infrastructure. He oversees internal processes, cross-team coordination, and platform readiness while supporting customers through complex redirect implementations. With a strong understanding of large-scale domain operations and real-world edge cases, TC plays a key role in aligning product and customer success to deliver stable, high-performance redirection solutions.