Três jeitos de contar leituras de QR code, e o que cada um perde
pela equipe KoloQRFundamentos

Um QR code não consegue se contar sozinho. Uma leitura só vira número quando o celular pede algo que você consegue ver: a sua página de destino, um redirecionamento no seu domínio ou o link curto de um fornecedor de QR code dinâmico. Tags UTM no link do código mostram as visitas na análise que você já usa, de graça. Um redirecionamento no seu próprio domínio conta cada pedido e mantém o link editável. Um QR code dinâmico acrescenta horário, aparelho e cidade por leitura, por uma mensalidade. Nenhum deles enxerga quem lê o código e nunca toca no link.
Pontos principais
- Um QR code é um padrão impresso sem ligação com nada, então não consegue contar leituras sozinho. Todo método de rastreamento conta o pedido web que o celular faz depois da leitura.
- O método gratuito são parâmetros UTM no link do código, lidos pela análise que já está no seu site. Ele conta visitas, não leituras, e acrescenta caracteres que deixam o padrão impresso mais denso.
- Um redirecionamento no seu próprio domínio, como yourdomain.com/menu-qr, mantém o padrão curto, conta cada pedido e deixa você mudar o destino depois. Use um redirecionamento 302 ou 307, porque os navegadores guardam um 301 em cache.
- Um QR code dinâmico é um redirecionamento pago, operado por um fornecedor. Ele reporta horário, aparelho e cidade aproximada por leitura, e o código impresso depende do link curto desse fornecedor.
- No Google Analytics 4, um link marcado com utm_medium=qr cai no canal "Unassigned", porque nenhuma regra de canal padrão reconhece "qr". Um grupo de canais personalizado resolve isso.
- Use um código por ponto de exposição. Um único código em todos os cartazes diz quantas pessoas leram, mas não qual cartaz funcionou.
Dá para rastrear um QR code estático?
Um QR code estático não consegue reportar as próprias leituras, mas as visitas que ele gera podem ser rastreadas. Um QR code estático é um código cujo link está guardado no próprio padrão, então o celular vai direto para esse link, sem nada no meio. O que contar a leitura precisa ficar no destino: a análise da página, ou um redirecionamento que você controla.
A consequência prática é que o rastreamento é decidido pelo link que você coloca no código, não pelo gerador que o desenhou. Um código de qualquer gerador gratuito, o KoloQR incluído, é tão rastreável quanto um pago se o link levar parâmetros UTM ou apontar para um redirecionamento no seu domínio. O KoloQR, um gerador de QR code gratuito com QR codes circulares e de formatos personalizados, faz códigos estáticos hoje; o que ele codifica é exatamente o link que você cola.
O que um código estático nunca consegue reportar é a leitura que não foi seguida. A câmera do celular mostra o link decodificado num aviso e não abre nada até a pessoa tocar nele. Uma leitura sem toque não gera pedido nenhum, então nenhuma ferramenta de análise, redirecionamento ou plataforma de QR code dinâmico consegue contá-la.
Os três métodos comparados
Escolha o método pelo que você precisa saber e por quanto tempo o código vai ficar impresso. Tags UTM respondem "esta campanha trouxe visitantes?" sem custo. Um redirecionamento no seu próprio domínio responde "quantas vezes este código foi aberto?" e mantém o link editável. Um QR code dinâmico responde "quando, onde e em que aparelho?" sem nenhuma configuração do seu lado.
| Tags UTM + a sua análise | Redirecionamento no seu domínio | QR code dinâmico | |
|---|---|---|---|
| O que é contado | Visitas à página que chegaram pelo código | Cada pedido ao caminho curto | Cada pedido ao link curto do fornecedor |
| Detalhe extra por leitura | O que a sua análise registrar para qualquer visita | O que o seu servidor ou hospedagem registrar | Horário, tipo de aparelho, sistema operacional, cidade aproximada |
| Custo recorrente | Nenhum | Nenhum na maioria das hospedagens | Uma assinatura mensal ou anual |
| Mudar o destino depois de impresso | Não | Sim | Sim, enquanto a conta estiver ativa |
| Funciona quando o link abre um app | Não - o app abre e a sua análise nunca carrega | Sim - o redirecionamento é contado antes de o app abrir | Sim - o redirecionamento é contado antes de o app abrir |
| Efeito no padrão impresso | Link mais longo, código mais denso | Link curto, código simples | Link curto, código simples |
| Configuração | Acrescentar parâmetros ao link | Uma regra de redirecionamento no seu domínio | Uma conta no fornecedor |
Uma combinação comum é um redirecionamento no seu próprio domínio que encaminha para um destino com tags UTM. O código impresso continua curto e permanente, o redirecionamento conta cada pedido, e a análise da página ainda atribui a visita à campanha certa.
Como rastrear leituras de QR code com parâmetros UTM
Parâmetros UTM são etiquetas acrescentadas ao final de um link que dizem às ferramentas de análise de qual campanha, origem e mídia veio uma visita. O Google Analytics, o Matomo, o Plausible e a maioria das outras ferramentas de análise web os leem sem nenhuma configuração. O Google recomenda sempre definir três: utm_source, utm_medium e utm_campaign.
- Comece pelo link de destino. Copie a página que o código deve abrir, por exemplo https://example.com/menu. Confira se ela abre num celular antes de marcá-la.
- Acrescente origem, mídia e campanha. Acrescente ?utm_source=table-tent&utm_medium=qr&utm_campaign=autumn-menu. A origem nomeia o ponto de exposição, a mídia nomeia o canal e a campanha nomeia a ação.
- Deixe todos os valores em minúsculas. O Google Analytics trata utm_source=Poster e utm_source=poster como duas origens diferentes. Valores em minúsculas com hifens mantêm o relatório numa linha por ponto de exposição.
- Gere o código a partir do link marcado. Cole o link marcado inteiro no campo de URL de um gerador de QR code, depois estilize e baixe o código como de costume.
- Leia o código e confira os relatórios em tempo real. Leia a prova impressa com um celular, abra a página e confirme que a visita aparece na visualização em tempo real da sua análise com o nome de campanha certo.
Vale acrescentar um parâmetro quando a mesma campanha é impressa em vários lugares: utm_content. O Google descreve o utm_content como o parâmetro que diferencia criativos, então utm_content=window e utm_content=counter separam dois pontos de exposição da mesma campanha sem inventar uma segunda campanha.
Onde o tráfego de QR code aparece no Google Analytics 4
No Google Analytics 4, visitas marcadas com utm_medium=qr aparecem no canal "Unassigned". O grupo de canais padrão do GA4 classifica o tráfego por regras fixas - "email" vai para "Email", "sms" para "SMS", "referral" para "Referral" - e nenhuma regra reconhece "qr", "print" ou "offline". As visitas são registradas corretamente; só o rótulo do canal não ajuda.
Para ver o tráfego de QR code separado, abra "Reports", depois "Acquisition", depois "Traffic acquisition", e troque a dimensão da tabela para "Session source / medium" ou "Session campaign". As suas sessões de QR code aparecem como linhas do tipo table-tent / qr, com o engajamento e as conversões ao lado.
Para transformar QR codes num canal próprio, crie um grupo de canais personalizado nas configurações de "Admin" e acrescente um canal QR cuja condição seja a mídia corresponder exatamente a qr. Coloque-o acima das regras padrão para que ele prevaleça, e todo relatório agrupado por canal vai mostrar os QR codes numa linha só.
Não pegue emprestada uma mídia que o GA4 já reconhece só para fugir do "Unassigned". Marcar QR codes com utm_medium=referral ou utm_medium=social os arquiva no canal errado e os mistura com tráfego que não tem nada a ver com impressão.
Tags UTM deixam o QR code mais denso
Cada caractere acrescentado ao link acrescenta dados ao padrão, e tags UTM podem triplicar o tamanho de um link curto. No nível de correção de erros M, o link https://example.com/menu, de 24 caracteres, cabe na versão 2 do QR, uma grade de 25 × 25 módulos. O mesmo link com três tags UTM tem 85 caracteres e precisa da versão 6, uma grade de 41 × 41.
Na mesma largura impressa, uma grade mais densa significa módulos menores. Impresso com 3 cm de largura, um código de versão 2 tem módulos de cerca de 1,2 mm; um código de versão 6 tem módulos de cerca de 0,7 mm, que celulares antigos e ambientes escuros leem com menos segurança. Códigos com logo no centro costumam usar o nível H, que aumenta a grade ainda mais.
Duas soluções mantêm o padrão simples. Valores UTM curtos ajudam: utm_source=table em vez de utm_source=table-tent-autumn-2026. Um redirecionamento no seu próprio domínio ajuda mais: o código guarda yourdomain.com/t4, e o redirecionamento acrescenta o link marcado completo depois da leitura, onde o tamanho dele não custa nada. O guia de capacidade do QR code tem a tabela completa, e o guia de tamanho mínimo para impressão converte o tamanho do módulo em tamanho impresso.
Como rastrear leituras com um redirecionamento no seu próprio domínio
Um redirecionamento no seu próprio domínio é um caminho curto, como yourdomain.com/menu-qr, que encaminha cada visitante para a página real e pode ser contado enquanto faz isso. Um redirecionamento é uma resposta do servidor que manda o navegador do endereço que ele pediu para outro. A maioria das hospedagens de sites e plataformas de CMS consegue criar um sem código: Vercel, Netlify e Cloudflare têm regras de redirecionamento, e o WordPress tem plugins de redirecionamento.
- Escolha um caminho curto por ponto de exposição, como /qr/menu-table e /qr/menu-window. Um caminho que você nunca vai reaproveitar para outra coisa mantém as contagens limpas.
- Aponte cada caminho para o destino, com tags UTM no destino se você também quiser atribuição de campanha na análise.
- Responda com 302 ou 307, não com 301. Os navegadores guardam um redirecionamento 301 em cache e podem pular o seu servidor na próxima leitura, o que perde a contagem e deixa uma mudança posterior de destino invisível para quem já visitou.
- Leia as contagens nos logs de pedidos da sua hospedagem ou na análise de redirecionamentos, filtrados pelo caminho. Conte com alguns pedidos de bots e verificadores de links, e exclua as suas próprias leituras de teste.
- Codifique o caminho curto no QR code e depois imprima. O padrão continua pequeno, e o destino continua seu para mudar.
É o redirecionamento que torna contáveis os links de apps. Um QR code que abre um perfil do Instagram, uma conversa no WhatsApp ou um formulário de avaliação do Google costuma cair num app, onde a análise do seu site nunca roda. Um redirecionamento no seu domínio registra o pedido primeiro e depois entrega o celular ao app, então a leitura é contada mesmo que nenhuma página sua tenha sido vista. O mesmo vale para um QR code do Instagram ou qualquer outro link que abra um app.
Rastrear leituras com um QR code dinâmico
Um QR code dinâmico é um código que carrega o link curto de um fornecedor, que redireciona para o seu destino e registra cada leitura no caminho. O painel do fornecedor normalmente mostra leituras totais e únicas, o horário de cada leitura, o tipo de aparelho e o sistema operacional, e um país e uma cidade estimados a partir do endereço IP. Ele não exige nenhuma configuração no seu site.
A contrapartida é a dependência. O padrão impresso guarda o nome de host do fornecedor, então o código só continua funcionando enquanto esse fornecedor mantiver o link vivo, e a maioria cobra enquanto o impresso estiver em uso. O guia de QR code estático vs dinâmico explica quando vale a pena pagar por isso, e quanto uma assinatura de código dinâmico custa ao longo do tempo põe números nisso.
Os códigos do KoloQR são estáticos hoje, então rastrear um código do KoloQR significa tags UTM ou o seu próprio redirecionamento. Os códigos dinâmicos do KoloQR, com análise de leituras, estão em desenvolvimento e com lista de espera aberta; eles registram o mesmo tipo de dado descrito acima e continuam redirecionando para o último destino se a assinatura terminar.
Por que os seus números de leitura não batem
Métodos diferentes reportam números diferentes porque cada um conta um momento diferente. Um redirecionamento conta pedidos, a análise conta visitas à página que carregaram o script dela, e uma plataforma dinâmica conta pedidos ao próprio link. As diferenças entre eles são previsíveis:
- Leituras sem toque são invisíveis para todos os métodos. A câmera decodifica o código e mostra o link, e se a pessoa não tocar nele, nada é pedido.
- Links que abrem um app chegam a um redirecionamento, mas nunca chegam à análise da sua página, porque o app assume antes que qualquer página sua carregue.
- Banners de cookies recusados e bloqueadores de anúncios impedem muitas ferramentas de análise de registrar uma visita que aconteceu. Um redirecionamento não é afetado, porque é contado no servidor.
- Leituras repetidas inflam os totais. A mesma pessoa lendo o display de mesa três vezes são três pedidos; contagens únicas estimam aparelhos, não pessoas.
- Os seus próprios testes contam como os de qualquer um. Anote a data em que imprimiu e ignore as leituras anteriores, ou filtre a sua própria rede.
- Bots e verificadores de links pedem de vez em quando um caminho de redirecionamento. Eles aparecem como pedidos sem visita correspondente e costumam ser um ruído de fundo pequeno e constante.
Trate os números como comparação, não como auditoria. O mesmo método aplicado a dois pontos de exposição diz com segurança qual funciona melhor, mesmo quando nenhum dos números é a contagem exata de pessoas que leram o código.
Meça cada ponto de exposição separadamente
Um código por ponto de exposição é a regra que torna o rastreamento de leituras útil. Um único código em todos os panfletos, cartazes e displays de mesa produz um total e nenhuma resposta sobre qual ponto funcionou. Um código separado por ponto - valores diferentes de utm_content ou caminhos de redirecionamento diferentes - produz uma linha por ponto, e a comparação é a parte útil.
| Ponto de exposição | Tags UTM | Caminho de redirecionamento |
|---|---|---|
| Display de mesa | utm_source=table&utm_medium=qr&utm_campaign=autumn-menu | /qr/menu-table |
| Vitrine da loja | utm_source=window&utm_medium=qr&utm_campaign=autumn-menu | /qr/menu-window |
| Sacola para viagem | utm_source=bag&utm_medium=qr&utm_campaign=autumn-menu | /qr/menu-bag |
Imprima o nome do ponto em letra miúda ao lado de cada código no arquivo de impressão, para que os códigos não sejam trocados por engano quando o trabalho chegar à gráfica. Códigos que parecem idênticos e diferem em quatro caracteres no link são a coisa mais fácil de confundir numa tiragem.
O que o rastreamento de leituras pode e não pode saber
O rastreamento de leituras registra o pedido que um celular faz, nunca a pessoa que segura o celular. Um QR code não consegue ler um nome, um número de telefone, um endereço de e-mail ou uma posição de GPS, porque tudo o que uma leitura faz é levar o celular a abrir um link. O que um servidor consegue ver é o que qualquer site vê: o horário, o endereço IP e a descrição que o navegador dá do aparelho.
A localização nos relatórios de leitura é uma estimativa a partir do endereço IP. Ela costuma acertar o país e muitas vezes acerta a cidade, e pode errar feio em redes móveis, que roteiam o tráfego por gateways regionais. Trate a cidade num relatório de leituras como aproximada.
Na União Europeia, um endereço IP pode contar como dado pessoal pelo GDPR. Se o seu redirecionamento ou a sua análise armazena endereços IP, mencione o rastreamento de leituras no seu aviso de privacidade, e prefira ferramentas que encurtam ou descartam o endereço depois de derivar a localização.
Crie seu QR code
Grátis, sem conta e sem marca d'água. Escolha uma forma, adicione um logo, confira o contraste e exporte SVG, PDF, EPS ou PNG: um código estático sem assinatura por trás.
Gerar QR codeQuestions? Answered
Só se o link do código passar por algo que conte. Um código estático não reporta nada sozinho. Acrescente parâmetros UTM ao link para ver as visitas na sua análise, codifique um redirecionamento no seu próprio domínio para contar cada pedido, ou use um QR code dinâmico, cujo fornecedor conta as leituras para você.
Sim, pelo destino. O link de um código impresso não pode mudar, mas você ainda pode contar o que chega até ele: procure na sua análise visitas sem referenciador a essa página, ou, se você controla o servidor, leia os logs dele para esse endereço. Da próxima vez, codifique um redirecionamento ou um link marcado antes de imprimir.
Não. Parâmetros UTM são caracteres comuns no link, e qualquer celular abre um link marcado normalmente. Eles deixam o código mais denso: três tags podem levar um link curto da versão 2 do QR para a versão 6. Use valores curtos, ou codifique um redirecionamento curto que acrescente as tags depois da leitura.
Porque as regras de canal padrão do GA4 não reconhecem utm_medium=qr. As visitas são registradas corretamente, mas nenhum canal padrão as reivindica. Veja-as por "Session source / medium", ou crie um grupo de canais personalizado com um canal QR que corresponda à mídia qr.
Não. Uma leitura só faz o celular abrir um link, então o rastreamento vê o que qualquer site vê: o horário, o tipo de aparelho e um endereço IP que dá uma localização aproximada. Ele não consegue ler um nome, um número de telefone ou uma posição de GPS. A identidade só aparece se a pessoa preencher um formulário depois.
Sim, dois. Parâmetros UTM no link não custam nada e funcionam com a versão gratuita do Google Analytics e com a maioria das outras ferramentas de análise. Um redirecionamento no seu próprio domínio é gratuito na maioria das hospedagens de sites. Os dois funcionam com códigos de qualquer gerador de QR code gratuito.
Porque o redirecionamento conta cada pedido e a análise conta só as visitas que carregaram o script dela. Visitas bloqueadas por recusa de cookies ou bloqueadores de anúncios, links que abrem um app e pessoas que saíram antes de a página carregar chegam todas ao redirecionamento, mas nunca à análise. Uma diferença desse tipo é normal.
Só se o código já apontar para algo que você controla. Um código que codifica o seu próprio caminho de redirecionamento, ou um código dinâmico, pode passar a encaminhar para um link marcado a qualquer momento. Um código que codifica diretamente a página final só pode ser contado nessa página, pela análise ou pelos logs do servidor.
Continue explorando
Páginas que seguem de onde esta parou: o mesmo contexto, o mesmo tipo de código ou a próxima decisão a tomar.
Estático ou dinâmico? Decida antes de imprimir qualquer coisa
A diferença é onde o destino mora, e preço, análise e cada modo de falha saem daí. Quatro perguntas que decidem qual dos dois você imprime.
Quando o QR code dinâmico para de funcionar: testes grátis, cancelamentos e limites de leitura
Cinco coisas que uma plataforma de QR code pode fazer com um código que você já imprimiu - encerrar o teste grátis, cancelar o plano, limitar as leituras, inserir um anúncio, apagar o link - com a regra de cada fornecedor e como ler um código para descobrir quais regras valem para ele.
QR codes para eventos
Um escaneamento conecta os convidados a ingressos, cronogramas, rotas e confirmações de presença - em convites, cartazes e sinalização.
QR codes para hotéis
Cardápios, Wi-Fi, check-in e informações ao hóspede - um escaneamento de cada quarto, balcão e mesa.
QR code de URL
Leve qualquer pessoa direto para uma página, landing page ou link com um único escaneamento.
QR code vs código de barras: como eles diferem e quando usar cada um
Capacidade, hardware de leitura, tamanho de impressão, tolerância a danos e custo - uma comparação lado a lado entre códigos de barras lineares e QR codes, com uma regra para escolher.
Por que a KoloQR?
- Crie QR codes para sites, cardápios, Wi-Fi, PDFs e cartões de visita
- Personalize cores, logos e formas únicas
- Baixe arquivos PNG e SVG de alta qualidade
- Feito tanto para impressão quanto para o digital

