A fecha de 7 de octubre de 2026, Shifter cuenta con el mayor pool de IPs estadounidenses activas, más que Oxylabs y Bright Data, a una fracción del coste.Shifter ahora tiene el mayor conjunto de IPs de EE. UU. activas

Ver comparativas

Conocimiento

Control de calidad de localización a escala: detectar lo que solo falla en un mercado

Los sitios localizados fallan de formas que nadie en la oficina central llega a ver nunca. Cómo probar cada mercado como lo haría un visitante local, y las comprobaciones que detectan los fallos.

Daniel Okafor

13 de octubre de 2026 · 9 min de lectura

Un sitio que funciona perfectamente en el país donde se construyó puede estar silenciosamente roto en otros doce. Un botón de compra que nunca se tradujo en Italia, precios mostrados en dólares a visitantes alemanes, un banner de consentimiento que cubre toda la página en Francia, una versión de idioma que los buscadores nunca encuentran porque su hreflang apunta a la URL equivocada. Nada de esto aparece cuando el equipo prueba desde la oficina.

La razón es sencilla: la mayor parte de lo que cambia entre mercados se decide según dónde esté el visitante. Para ver lo que ve un cliente local, hay que probar desde ese mercado. Esta guía cubre cómo ejecutar control de calidad de localización entre mercados a escala: qué revisar, cómo ver cada mercado como lo hace un visitante local, y un pequeño verificador que detecta automáticamente los errores más comunes.

Por qué se esconden los errores de localización

Los sitios localizados rara vez sirven una página fija por idioma. Deciden qué mostrar en el momento de la solicitud, según las señales que envía el visitante:

  • Ubicación, a partir de la dirección IP: moneda, precios, opciones de envío, banners legales, disponibilidad de productos y, a veces, el propio idioma.
  • Preferencias de idioma, desde el navegador: qué traducción mostrar y cómo formatear fechas y números.
  • La URL, como /de/ o de.example.com: la versión que se solicitó al sitio, que puede coincidir o no con las otras dos.

Las pruebas desde la sede central suelen cubrir una sola combinación: el propio país de la oficina, un navegador en inglés y la URL predeterminada. Las revisiones de traducción comprueban las palabras pero no la página tal como se sirve. Los errores viven en las combinaciones que nadie probó.

Qué se rompe en un mercado

ErrorEjemploCómo suele ocurrir
Cadenas sin traducir”Add to cart” en el sitio italianoLas funciones nuevas se lanzan con cadenas en inglés que nunca llegan al flujo de traducción
Moneda o formato de precio incorrecto$49.99 mostrado a visitantes alemanes, o 49.99 € en lugar de 49,99 €La moneda se elige a partir de la URL en un sitio y de la IP en otro
Hreflang rotoUna versión de idioma apunta a un 404 o a otro idiomaLas URL cambiaron tras el lanzamiento y los alternates no se actualizaron
Atributo lang ausente o incorrectolang="en" en la página alemanaUna plantilla compartida con un atributo codificado de forma fija
Bucles de redirección o redirecciones forzadasUn visitante en Austria es enviado a la tienda alemana y no puede volverRedirecciones geográficas que ignoran una elección explícita
Capas legales y de consentimientoUn banner que cubre el contenido en un país de la UEConfiguración de consentimiento específica del país
Desbordamiento de diseñoEtiquetas en alemán que rompen botones, texto de derecha a izquierda que rompe una cuadrículaDiseños probados solo con cadenas cortas en inglés

Varios de estos afectan directamente a la búsqueda. Una página con el atributo lang incorrecto o alternates rotos puede indexarse como el idioma equivocado, o no indexarse en absoluto. Nuestra guía sobre usar hreflang para encontrar cada versión de idioma de una página muestra cómo mapear los alternates de un sitio y detectar los que no apuntan a ningún sitio.

Paso 1: ver cada mercado como un visitante local

El requisito fundamental es solicitar cada página desde dentro del mercado, con un navegador configurado como el de un visitante local. En la práctica, eso significa tres cosas que deben coincidir:

  1. Una dirección IP en el mercado. Los proxies residenciales con segmentación por país o ciudad proporcionan una dirección en una conexión residencial local, que es lo que espera la lógica de geolocalización del sitio. Nuestros proxies residenciales cubren más de 195 países, con segmentación por ciudad donde se necesite.
  2. El idioma y la configuración regional del mercado. Configura la cabecera de idioma del navegador y la configuración regional para que coincidan.
  3. La zona horaria del mercado, si pruebas en un navegador real, porque algunos sitios la usan como otra señal de ubicación.

Si estas no coinciden, estás probando una combinación que ningún cliente real tiene, y puedes acabar persiguiendo errores que no existen. Nuestra guía sobre hacer coincidir la geolocalización, la zona horaria y la configuración regional del proxy explica cómo derivar las tres a partir de un solo ajuste.

Prueba también con una sesión nueva para cada mercado. Las cookies de una visita anterior pueden anclar el sitio al último país que probaste, lo que oculta errores de lógica de geolocalización.

Paso 2: comprobar cada mercado de la misma manera

La revisión visual no escala a decenas de mercados y miles de páginas, pero la mayoría de los errores de localización se pueden detectar en el HTML. La función siguiente comprueba una página localizada en busca de cuatro de los problemas más comunes: el atributo lang, cadenas en inglés olvidadas, precios en la moneda equivocada, y una entrada hreflang ausente para el mercado.

import re

from lxml import html as lxml_html


def market_problems(page_html, market):
    """Things that only break in one market, checked on one localized page.

    market: {"lang": "de", "currency": "€", "leftovers": ["Add to cart", "Free shipping"]}
    """
    doc = lxml_html.fromstring(page_html)
    problems = []

    lang = (doc.get("lang") or "").lower()
    if not lang.startswith(market["lang"]):
        problems.append(f"html lang is {lang or 'missing'}, expected {market['lang']}")

    text = " ".join(" ".join(doc.itertext()).split())
    for phrase in market["leftovers"]:
        if phrase.lower() in text.lower():
            problems.append(f"untranslated text: {phrase!r}")

    prices = re.findall(r"[$€£¥₩R]\$?\s?\d[\d.,]*|\d[\d.,]*\s?[$€£¥₩]", text)
    wrong = [p for p in prices if market["currency"] not in p]
    if wrong:
        problems.append(f"{len(wrong)} of {len(prices)} prices not in {market['currency']}, e.g. {wrong[0]!r}")

    if not doc.xpath(f"//link[@rel='alternate'][starts-with(@hreflang, '{market['lang']}')]"):
        problems.append(f"no hreflang entry for {market['lang']}")
    return problems

Ejecutándola en dos páginas (HTML ilustrativo, no un sitio real):

from locqa import market_problems

markets = {
    "de": {"lang": "de", "currency": "€", "leftovers": ["Add to cart", "Free shipping"]},
    "fr": {"lang": "fr", "currency": "€", "leftovers": ["Add to cart", "Free shipping"]},
}
pages = {   # in practice: the same product page, fetched from inside each market
    "de": '<html lang="de"><head><link rel="alternate" hreflang="de" href="/de/p/1"></head>'
          '<body><h1>Wasserkocher</h1><p>49,99 €</p><p>Free shipping</p></body></html>',
    "fr": '<html lang="fr"><head><link rel="alternate" hreflang="fr" href="/fr/p/1"></head>'
          '<body><h1>Bouilloire</h1><p>$49.99</p><p>Ajouter au panier</p></body></html>',
}
for code, page in pages.items():
    print(code, market_problems(page, markets[code]) or "ok")
de ["untranslated text: 'Free shipping'"]
fr ["1 of 1 prices not in €, e.g. '$49.99'"]

La página alemana tiene una frase en inglés olvidada; la página francesa muestra un precio en dólares. Ambas pasarían una revisión de traducción, porque las propias cadenas traducidas están bien.

Elabora la lista de frases olvidadas a partir de tu propia interfaz: etiquetas de botones, mensajes de envío y pago, mensajes de error. Estas son las cadenas que se añaden con más frecuencia tarde. Los formatos de precio requieren cuidado más allá del símbolo de moneda, ya que el mismo símbolo se puede escribir de varias formas; nuestra guía sobre normalizar precios, números y fechas entre configuraciones regionales explica cómo analizarlos de forma fiable.

Paso 3: ejecutarlo con regularidad

La localización se rompe después de los lanzamientos, no solo en el lanzamiento. Una función nueva, un cambio de plantilla o una actualización de precios pueden romper un mercado mientras todos los demás parecen correctos. Un ritmo práctico:

  • En cada lanzamiento: un conjunto reducido de páginas clave (inicio, una categoría, un producto, carrito, pago) en todos los mercados.
  • Semanalmente: una muestra más amplia de páginas por mercado, incluidas las modificadas recientemente.
  • Tras cualquier cambio en la lógica de geolocalización, precios o consentimiento: un repaso completo.

Informa de los resultados por mercado y por comprobación, de modo que cada equipo vea sus propios problemas. El mercado con más fallos suele ser el que tiene menos pruebas locales.

Cosas que la automatización no detectará

Algunos problemas todavía necesitan a una persona que conozca el mercado: una traducción que es correcta pero suena mal, una imagen o color con un significado local desafortunado, un requisito legal que la plantilla no cubre. Las comprobaciones automatizadas liberan a las personas para dedicar su tiempo de revisión a eso, en lugar de buscar símbolos de dólar.

Algunos sitios también muestran capas de consentimiento y privacidad distintas según el país, lo que cambia tanto lo que ven los usuarios como lo que puede alcanzar una prueba automatizada. Nuestro estudio sobre muros de consentimiento por país muestra cuánto varía esto en la UE.

Preguntas frecuentes

¿Qué es el control de calidad de localización?

Probar que cada versión de idioma y mercado de un sitio funciona y se lee correctamente para los visitantes locales: traducciones, formatos de moneda y precios, diseño, avisos legales, redirecciones y las señales que usan los buscadores para encontrar cada versión.

¿Por qué no puedo probar otros mercados con una VPN?

Puedes hacerlo para una comprobación rápida, pero muchos sitios reconocen las direcciones de VPN y centros de datos y las tratan de forma distinta a las conexiones domésticas, así que es posible que no veas lo que ve un cliente local real. Las IP residenciales en el mercado se aproximan más a la experiencia real.

¿Qué páginas debería probar en cada mercado?

Como mínimo la página de inicio, una página de categoría, una página de producto, el carrito y el pago, además de cualquier página con precios o texto legal. Amplía a una muestra rotativa de páginas modificadas recientemente.

¿Cómo afectan los errores de localización al SEO?

Los atributos lang incorrectos, los alternates de hreflang rotos y las redirecciones geográficas forzadas pueden hacer que los buscadores indexen la versión de idioma equivocada, o que no detecten una versión en absoluto, lo que cuesta visibilidad en ese mercado.

En resumen

Los errores de localización se esconden en los mercados desde los que nadie prueba. Observa cada mercado como lo haría un visitante local, con una IP, idioma y zona horaria que coincidan, y ejecuta las mismas comprobaciones automatizadas en cada mercado después de cada lanzamiento. Detecta los problemas mecánicos (atributos de idioma, cadenas olvidadas, monedas, hreflang) mediante máquinas, y reserva la revisión humana para lo que solo un lector local puede juzgar.

¿Listo para empezar?

Prueba los proxies residenciales de Shifter, más de 205M IPs, más de 195 países, desde 0,75 $/GB.

Comenzar