Portada de UrsaKit para la guía de crear códigos QR que se escaneen siempre

Saber cómo crear un código QR que se escanee siempre se reduce a unas pocas decisiones: contraste, zona de silencio, tamaño de módulo, corrección de errores y formato del payload. Un código QR es una imagen pequeña legible por máquina, pero muchos fallan en el mundo real: poco contraste, una zona de silencio recortada, un logotipo que cubre demasiados módulos o un tamaño de impresión demasiado pequeño para la distancia desde la que se escanea. Esta guía explica cómo se construye un código QR, cómo funciona la corrección de errores y los ajustes que lo mantienen escaneable en pantalla y en papel.

Todo se genera en tu navegador, así que la URL, la contraseña de Wi-Fi o los datos de contacto que codifiques nunca se suben.

01Qué hay dentro de un código QR

Un código QR es una cuadrícula de módulos oscuros y claros sobre un lienzo cuadrado. Tres patrones de localización grandes ocupan las esquinas y permiten a la cámara situar y orientar el código; patrones de alineación más pequeños mantienen la cuadrícula legible cuando la superficie está curvada o la imagen inclinada.

El payload se guarda junto a una versión (tamaño, desde 21×21 módulos en adelante), un nivel de corrección de errores y un patrón de máscara. El escáner decodifica los módulos, revierte la máscara y comprueba las palabras de código Reed-Solomon. Si el daño está dentro de la tolerancia elegida, los datos se recuperan exactos: por eso un código sigue escaneándose con un logotipo en el centro o un roce en una esquina.

El margen vacío alrededor de la cuadrícula es la zona de silencio. Denso Wave especifica un margen de cuatro módulos por lado; las cámaras la usan para separar el código del fondo, y un código recortado hasta el borde de una etiqueta a menudo falla aunque cada módulo sea correcto.

02Generar un código QR

  1. Elige el tipo de contenido — URL, texto plano, Wi-Fi, contacto vCard, email o teléfono. El tipo decide cómo se codifica el payload y qué ofrece hacer el teléfono al escanearlo.
  2. Introduce el payload — Para una URL, incluye el esquema (https://). Para Wi-Fi, rellena SSID, contraseña y cifrado. La vista previa se vuelve a dibujar con cada pulsación y el contador de caracteres muestra cuánto de la capacidad de la versión usas.
  3. Ajusta geometría y color — Elige el patrón de puntos y la forma de los ojos de esquina, y define los colores de primer plano y fondo. Mantén módulos oscuros sobre fondo claro con buen contraste; no inviertas los colores, porque la mayoría de escáneres esperan oscuro sobre claro.
  4. Define la corrección de errores y añade un logotipo — Una corrección más alta sobrevive a más daño pero reduce la capacidad, lo que puede llevar el código a una versión mayor y más densa. Si superpones un logotipo central, mantenlo dentro de aproximadamente el 20–25% del área y sube el nivel de corrección para compensar.
  5. Ajústalo a su medio y exporta — Define el tamaño de exportación para el medio final, conserva la zona de silencio y descarga PNG para pantallas o SVG para impresión y escalado sin pérdida. Si el PNG pesa demasiado para una página web, pásalo por el compresor de imágenes.

03Niveles de corrección de errores

Los cuatro niveles y su daño recuperable aproximado vienen del estándar del código QR, y Denso Wave señala que el nivel M, en torno al 15%, es el que se elige con más frecuencia.

NivelDaño recuperableCapacidad relativaÚsalo para
L (bajo)~7%La más altaPantallas digitales limpias, códigos diminutos
M (medio)~15%AltaUso general en web e impresión
Q (cuartil)~25%MediaImpresión con un logotipo pequeño, etiquetas industriales
H (alto)~30%La más bajaLogotipo grande o una superficie que pueda dañarse

04Formatos de payload que funcionan con fiabilidad

Un código QR es solo texto; el sistema operativo del teléfono decide qué hacer con él según el formato del payload. Las convenciones de Wi-Fi y vCard de abajo siguen los formatos de payload recopilados por el proyecto ZXing. Un contenido que no puedas leer, como un token o una cadena codificada, se puede decodificar con el codificador / decodificador Base64. Estos son los que vale la pena memorizar:

  • URL — https://example.com/: incluye siempre el esquema; sin él algunos escáneres tratan el payload como texto plano.
  • Wi-Fi — WIFI:T:WPA;S:NetworkName;P:password;H:false;;, donde T es WPA, WEP o nopass. Escapa ;, ,, : y \ dentro de los valores con una barra invertida.
  • Teléfono — tel:+34600123456. Usa el formato internacional para que el número marque desde cualquier país.
  • Email — mailto:name@example.com?subject=Hello&body=Message, con los valores codificados en URL.
  • SMS — smsto:+34600123456:Mensaje.
  • vCard — un bloque estándar BEGIN:VCARD … END:VCARD. La versión 3.0 tiene el soporte más amplio.
  • Texto plano — cualquier otra cosa; el teléfono muestra el texto y ofrece copiarlo o buscarlo.

Los payloads largos empujan el código a una versión mayor y más densa, así que acorta una URL larga o minifica el JSON antes de codificarlo.

05Tamaños para impresión y pantalla

No hay un tamaño único correcto: depende de la versión, la resolución de impresión y la distancia desde la que se escanea. El ejemplo de cálculo de Denso Wave muestra el método. Un payload de 50 caracteres en nivel M necesita la versión 3, que son 29 módulos por lado. Impreso a 400 dpi con cuatro puntos de impresora por módulo, cada módulo mide 0,254 mm, así que el símbolo mide 29 × 0,254 mm = 7,366 mm; añadiendo la zona de silencio de cuatro módulos por lado, el total es un cuadrado de 9,398 mm.

MedioQué vigilar
Tarjeta de visitaAcorta el payload para mantener la versión baja y los módulos grandes
Folleto o pósterDimensiona el símbolo según la distancia de visionado y conserva la zona de silencio
Cartel de mesa o menúUsa papel mate de alto contraste, no una superficie reflectante
Señalización exteriorEscala el símbolo con la distancia y deja el margen de cuatro módulos
Web o emailSirve la imagen a su tamaño de visualización; nunca dejes que CSS la difumine o la estire

Si el código no cabe en el espacio, Denso Wave da tres opciones: usar una versión menor, imprimir un módulo más pequeño o dividir el símbolo en varios códigos.

Nunca inviertas los colores

Los escáneres esperan módulos oscuros sobre fondo claro. Un código claro sobre oscuro falla en muchos dispositivos aunque en tu pantalla se vea bien.

06Por qué tu código QR no se escanea

Si un código funciona en tu pantalla pero no para los demás, comprueba en este orden. La lista de códigos que no se leen de Denso Wave cubre módulos deformados, márgenes ausentes e imágenes superpuestas:

  1. Contraste — módulos claros sobre fondo oscuro invierten la señal. Vuelve a oscuro sobre claro.
  2. Zona de silencio — se recortó el margen vacío. Vuelve a generarlo dejando al menos cuatro módulos de espacio.
  3. Tamaño — demasiado pequeño para la distancia de escaneo, o borroso por ampliar desde un PNG de baja resolución.
  4. Logotipo — la superposición cubre más de un cuarto del código, o el nivel de corrección es demasiado bajo para ella.
  5. Daño — un pliegue, reflejo o pegatina sobre un patrón de localización; el nivel H tolera más, pero las tres esquinas deben quedar intactas.
  6. Payload — una URL muy larga empuja el código a una versión densa. Acorta el enlace o reduce los datos.
  7. Formato — un payload de Wi-Fi con un punto y coma ausente o un carácter especial sin escapar se decodifica como texto plano.

07Códigos QR estáticos o dinámicos

Un código estático —lo que genera esta herramienta— guarda los datos en la propia imagen. Funciona sin conexión, nunca caduca y no se puede editar: si el destino cambia, hay que reimprimir.

Un código dinámico codifica una URL corta de redirección y mantiene el destino en un servidor. Eso permite editar el código y obtener analíticas de escaneo, a cambio de una dependencia. Si el servicio de redirección desaparece o la suscripción caduca, el código deja de funcionar. Para impresión que debe durar, el estático es la opción más segura.

08Fuentes

Preguntas frecuentes

¿Caducan los códigos QR?

Un código QR estático nunca caduca: los datos viven dentro de la imagen. Los códigos dinámicos dependen de un servicio de redirección y dejan de funcionar si ese servicio desaparece.

¿Qué nivel de corrección de errores debería usar?

M para uso general, y Q o H cuando el código lleve un logotipo o se imprima donde pueda dañarse. Los niveles altos reducen la capacidad disponible.

¿Por qué no se escanea mi código QR?

Las causas habituales son poco contraste, ausencia de zona de silencio, una imagen demasiado pequeña para la distancia de escaneo y un logotipo o daño que cubre un patrón de localización.

¿Puedo imprimir un código QR sobre fondo oscuro?

Solo con módulos claros sobre fondo oscuro, y solo para escáneres que admitan inversión: la mayoría no lo hace. Quédate con oscuro sobre claro.

¿Se guarda en algún sitio mi contraseña de Wi-Fi?

No. El payload se codifica en la imagen dentro de tu navegador y no se sube nada.

¿Debería exportar PNG o SVG?

SVG para impresión y para todo lo que deba escalar sin perder nitidez; PNG cuando el destino espere un mapa de bits o necesites un tamaño en píxeles fijo.

¿Qué tamaño mínimo puede tener un QR impreso?

No hay un mínimo fijo. Parte de la resolución de impresión para calcular un tamaño de módulo legible, conserva la zona de silencio de cuatro módulos y prueba el código impreso a la distancia real de escaneo.

Volver a los artículos

Artículos relacionados

Herramientas relacionadas