Qual é o tamanho mínimo que um código QR pode ser impresso? Os tamanhos, calculados
Não há um único tamanho mínimo para um código QR. Passamos cinco cargas úteis reais pelo nosso próprio codificador para obter as contagens de módulos e depois convertemos em milímetros.
O que há de novo aqui: Versão do símbolo e contagem de módulos para cinco tipos de carga útil reais em todos os quatro níveis de correção de erros, calculados com o codificador que MostlyQR oferece, depois convertidos em milímetros impressos — então o tamanho mínimo é derivado de sua carga útil em vez de citado como um número único.
Cada guia para imprimir códigos QR oferece um único número. Dois centímetros. Uma polegada. Três centímetros para embalagem. Esses números são suposições disfarçadas de normas, e estão errados nos dois sentidos: muito grandes para um link curto num cartão de visita, perigosamente pequenos demais para um vCard numa etiqueta de garrafa.
A resposta real é uma divisão, e você pode calculá-la antes de imprimir qualquer coisa.
# Por que não existe um único tamanho mínimo
Um código QR não é uma imagem que fica menor. É uma grade de módulos — os pequenos quadrados — e o número de módulos é fixo do seu conteúdo, não por você. Vinte e um caracteres de link curto precisam de uma grade de 25×25. Um vCard com nome, número de telefone e email precisa de 49×49. Imprima ambos a 25mm e terá impresso duas coisas muito diferentes: no primeiro, cada módulo tem 0,76mm de largura; no segundo, 0,44mm.
O módulo é o que a impressora precisa manter e a câmera precisa resolver. Então a pergunta “qual o tamanho mínimo do meu código QR” é realmente “qual o menor tamanho de um módulo e quantos deles tenho” — e a segunda metade é calculável.
# O que o seu conteúdo custa em módulos
Executamos cinco tipos de conteúdo pelo codificador que MostlyQR realmente usa
(buildMatrix em nossos packages/qr, que envolve a biblioteca node-qrcode do MIT) em
todos os quatro níveis de correção de erros. O número após a barra é o tamanho da grade —
os módulos em um lado, sem contar a zona silenciosa.
| Conteúdo | Caracteres | EC L | EC M | EC Q | EC H |
|---|---|---|---|---|---|
| link curto | 21 | v2 / 25 | v2 / 25 | v2 / 25 | v3 / 29 |
| Wi-Fi join (WPA) | 47 | v3 / 29 | v4 / 33 | v4 / 33 | v6 / 41 |
| URL de campanha com tags UTM | 87 | v5 / 37 | v6 / 41 | v7 / 45 | v9 / 53 |
| URL de produto longa | 116 | v6 / 41 | v7 / 45 | v9 / 53 | v10 / 57 |
| vCard (nome, org, telefone, email, URL) | 135 | v6 / 41 | v8 / 49 | v9 / 53 | v11 / 61 |
Estas são as cadeias exatas, portanto pode reproduzir cada linha:
https://mqr.sh/AB12CD
WIFI:T:WPA;S:CafeGuest;P:coffee-and-cake-2026;;
https://example.com/spring-menu?utm_source=poster&utm_medium=qr&utm_campaign=spring2026
https://example.com/collections/spring-2026/products/heirloom-tomato-seed-pack-organic?variant=4471029&ref=packaging
BEGIN:VCARD ⏎ VERSION:3.0 ⏎ N:Novak;Ana ⏎ FN:Ana Novak ⏎ ORG:MostlyQR ⏎
TEL:+4420790000 ⏎ EMAIL:anna@example.org ⏎ URL:https://mostlyqr.com ⏎ END:VCARD
A amplitude é o ponto. Em conteúdos comuns e quotidianos a grade varia de 25 a 61 módulos de lado — um fator de 2,4 em densidade linear, antes de qualquer um ter escolhido um tamanho de papel.
# Se verificar esta tabela, verifique com as cadeias
A contagem de caracteres sozinha não reproduzirá esses números, e vale a pena saber por que antes de concluir que os calculamos mal.
Um codificador QR não trata cada caractere como um byte. Escolhe um modo de codificação por execução de caracteres — numérico (3⅓ bits por dígito), alfanumérico (5½ bits, mas apenas para dígitos, letras maiúsculas e alguns símbolos), ou byte (8 bits) — e um bom codificador divide um conteúdo em vários segmentos para obter o total mais barato. O nosso faz. Eis o que realmente escolheu:
| Conteúdo | Segmentos |
|---|---|
| link curto | Byte:14 + Alfanumérico:7 |
| Wi-Fi join | Alfanumérico:10 + Byte:37 |
| URL de campanha | Byte:83 + Numérico:4 |
| URL de produto longa | Byte:95 + Numérico:7 + Byte:14 |
| vCard | Alfanumérico:11 + Byte:1 + Alfanumérico:11 + Byte:44 + Numérico:10 + Byte:49 + Alfanumérico:9 |
Se codificar as mesmas contagens de caracteres como uma execução de byte único, obterá uma tabela diferente e maior — v3/29 para o link curto no nível Q em vez de v2/25, e v7/45 para o vCard no nível L em vez de v6/41. Ambas as tabelas estão corretas; descrevem conteúdos diferentes.
Isso oferece uma alavanca gratuita, se seus links curtos usarem um slug em maiúsculas.
https://mqr.sh/AB12CD divide-se em byte + alfanumérico porque o esquema e
domínio estão em minúsculas. Escreva a URL inteira em maiúsculas — HTTPS://MQR.SH/AB12CD — e
torna-se um segmento alfanumérico de 21 caracteres: no nível L isto é v1, 21
módulos, uma versão inteira menor que a forma com maiúsculas e minúsculas. (Nos níveis M e Q
esta cadeia particular permanece em v2/25 — já está se beneficiando da
cauda alfanumérica; o ganho aparece em L, e cresce com o comprimento da execução
em maiúsculas.) Esquema e domínio não diferenciam maiúsculas de minúsculas portanto a
URL resolve identicamente; o caminho diferencia, portanto isto funciona apenas se seu slug for genuinamente
em maiúsculas. Os nossos são.
# Os mesmos 25mm, cinco códigos diferentes
Agora fixe a largura impressa e leia o que cada conteúdo deixa. Isto é (largura ÷ (módulos + 8)), sendo 8 a zona silenciosa obrigatória de quatro módulos em cada lado:
| Conteúdo | Tamanho de módulo EC M a 25mm | Tamanho de módulo EC H a 25mm |
|---|---|---|
| link curto | 0,76mm | 0,68mm |
| Wi-Fi join | 0,61mm | 0,51mm |
| URL de campanha com UTMs | 0,51mm | 0,41mm |
| URL de produto longa | 0,47mm | 0,38mm |
| vCard | 0,44mm | 0,36mm |
O mesmo quadrado na página. Tamanho de características duas vezes maior numa ponta da tabela em relação à outra. Uma gráfica confortável em manter 0,5mm limpo produzirá um código de link curto perfeito e um vCard marginal da mesma disposição.
# A largura mínima, do outro lado
A maioria das pessoas chega com a pergunta oposta: não “o que obtenho a 25mm” mas “quão pequeno posso ir”. Escolha um tamanho de módulo que seu processo de impressão possa realmente manter — 0,5mm é um piso comum para impressão offset e digital decente em papel couché — e a largura segue:
| Conteúdo | EC M | EC H |
|---|---|---|
| link curto | 16,5mm | 18,5mm |
| Wi-Fi join | 20,5mm | 24,5mm |
| URL de campanha com UTMs | 24,5mm | 30,5mm |
| URL de produto longa | 26,5mm | 32,5mm |
| vCard | 28,5mm | 34,5mm |
Este é o intervalo que a internet comprime em “cerca de 2cm”. Nas extremidades, 2cm é 20% maior do que você precisa ou 40% menor do que pode funcionar.
Se sua impressora mantém 0,33mm — serigrafia fina, digital boa, papel não absorvente — divida estes por 1,5. Se está imprimindo em papelão ondulado, tecido ou qualquer coisa que espalhe tinta, vá ao contrário e assuma 1mm.
# A maior alavanca é a URL, não a impressora
Veja novamente a primeira tabela. O link curto e a URL de produto longa são a mesma informação — levam alguém à mesma página — e um deles tem 25 módulos enquanto o outro tem 45.
Este é o jogo inteiro. Cada milímetro de tamanho de módulo que conseguir argumentando com sua impressora, pode obter de graça encurtando o que o código codifica. Um link curto dinâmico tem 21 caracteres não importa quão longo o destino seja, e tem uma segunda vantagem que importa mais numa série de impressão: pode mudar para onde aponta após a tinta secar, portanto um código que sobrevive à sua página de destino não se torna um beco sem saída.
Para qualquer coisa que será impressa pequena — um cartão de visita, uma etiqueta, o canto de um menu — codifique um link curto e redirecione. Codificar a URL de campanha completa com suas tags UTM diretamente no código custa 16 módulos de lado e não ganha nada que uma redireção não possa fazer melhor.
# O que a correção de erros custa em tamanho
A correção de erros adiciona redundância portanto um código danificado ou parcialmente coberto ainda lê. Não é grátis, e as tabelas acima cobram:
- link curto, M → H: 25 → 29 módulos (+16% linear)
- Wi-Fi join, M → H: 33 → 41 (+24%)
- vCard, M → H: 49 → 61 (+24%)
Um quarto a mais de largura, por um código que sobrevive a ser arranhado, impresso em embalagem, ou parcialmente coberto por um logótipo. Num cartaz, onde espaço é grátis, escolha nível H e deixe de pensar nisso. Numa etiqueta onde 30mm é tudo que tem, nível M com um link curto bate nível H com uma URL longa — o conteúdo menor está carregando mais robustez que a correção de erros adicional poderia.
Se está cobrindo o meio com um logótipo, a compensação muda muito para H, e existe um orçamento medido para qual tamanho o logótipo pode ter.
# O que isto não mede
Tudo acima é sobre o símbolo. É aritmética sobre um codificador, é exato, e pode re-executá-lo. É também apenas metade do que decide se um código impresso varre:
- Não testamos distância de leitura com câmaras reais. A regra prática da indústria — a largura do código deve ser aproximadamente um décimo da distância de onde deseja varrê-lo — é amplamente citada e não verificamos. Considere-a um ponto de partida para cartazes e sinalização, não como uma medição.
- Propagação de tinta, substrato e contraste não estão nos números. Um módulo de 0,4mm em papel couché e um módulo de 0,4mm em papelão ondulado não são o mesmo módulo.
- A qualidade da câmera varia enormemente. Um telefone de cinco anos atrás num restaurante escuro é o teste real, e é aquele que realmente deveria executar: imprima o código no tamanho que pretende, no papel que pretende, e varra com o pior telefone do escritório.
Esse último não é uma ressalva, é o conselho. A aritmética diz-lhe quais tamanhos merecem testes. O teste diz-lhe se funciona.
# Re-executar isto você mesmo
Cada tabela acima é impressa por um script em vez de digitada no artigo, e
o script está no repositório em draft/mostlyqr/seo/benchmarks/print-size.js.
Executa buildMatrix sobre as cinco cadeias acima, despeja os segmentos de modo de codificação,
imprime a tabela de controle de modo byte ao lado da real, e deriva as
figuras em milímetros. Se algum número aqui estiver errado, esse arquivo é onde está errado.
# A versão curta
- Codifique um link curto, não a URL completa — é a única alavanca que muda a grade em vez do papel.
- Procure a contagem de módulos do seu conteúdo acima, ou calcule-a.
- Multiplique (módulos + 8) pelo menor módulo que seu processo de impressão mantém limpo. Essa é sua largura mínima. (Se está colocando o código num de nossos modelos, um cartaz em A3 e um folheto em A4 deixam muito mais espaço do que qualquer conteúdo aqui precisaria.)
- Imprima-o nesse tamanho, no papel real, e varra com um telefone ruim.
Se quer que o código carregue uma imagem além de dados, a questão de tamanho fica ainda mais aguçada — uma fotografia precisa de uma grade muito mais densa para ser visível, o que medimos separadamente para códigos QR fotográficos.
Perguntas frequentes
Qual é o tamanho mínimo para um código QR?
Não há um número único. O código é uma grade de módulos e quantos módulos precisa depende totalmente de quantos dados você coloca nele. Um link curto no nível de correção de erros M tem 25 módulos de largura; o mesmo código carregando um vCard tem 49. Impresso na mesma largura, os módulos do segundo têm quase a metade do tamanho — então um deles funciona em 17mm e o outro não. Primeiro, calcule a contagem de módulos e depois escolha uma largura.
Uma URL mais longa torna o código QR maior?
Torna mais denso, o que é praticamente a mesma coisa. Em nossas medições, um link curto de 21 caracteres é codificado em 25 módulos no nível M e uma URL de produto de 116 caracteres em 45. Imprima ambos com 25mm de largura e os módulos têm 0,76mm e 0,47mm respectivamente. Encurtar a URL é a maneira mais barata de tornar um código imprimivelmente pequeno — não custa nada e é a única alavanca que muda a grade em vez do papel.
A correção de erros mais alta torna o código maior?
Sim, e mais do que a maioria das pessoas espera. Ir do nível M para o nível H adicionou entre 4 e 12 módulos por lado em todas as cinco cargas úteis — para o vCard, 49 módulos se tornaram 61, o que é um aumento de 25% no tamanho linear que você tem que imprimir. O nível H geralmente vale a pena se o código for manuseado, impresso em embalagem ou parcialmente coberto por um logotipo, mas é uma decisão de tamanho, não uma atualização gratuita.
Quanto espaço em branco um código QR precisa ao seu redor?
Quatro módulos em cada lado. Essa zona silenciosa é parte do símbolo, não decoração — os leitores a usam para encontrar as bordas — então pertence à aritmética. Cada largura impressa neste artigo é calculada como (módulos + 8) × tamanho do módulo exatamente por esse motivo.
- Os códigos QR de foto realmente funcionam? Nossos resultados de teste de decodificaçãoUm código QR que é uma fotografia parece que deve funcionar pior. Medimos o nosso com um decodificador real — desfocado, reduzido e lido da forma como um leitor lê.
- Qual é o tamanho máximo do logotipo em um código QR? Medimos"Correção de erros de 30%" não é um orçamento de logotipo. Fizemos buracos crescentes em códigos em cada nível de EC até um decodificador real desistir e registramos onde quebrou.