Como rastrear leituras de QR code no Google Analytics 4

Por • 3 Novembro, 2026 • SEO e marketing • 13 minutos de leitura

Rastreie leituras de QR code no GA4 de graça com links UTM: quais tags usar, por que o tráfego aparece como Não atribuído e como corrigir. Exemplos reais.

Para rastrear as leituras de um QR code no Google Analytics 4, coloque parâmetros UTM no link antes de gerar o código, por exemplo https://www.exemplo.com.br/cardapio?utm_source=mesa&utm_medium=qr&utm_campaign=cardapio_verao_2026. Assim, cada leitura que abre a sua página aparece no GA4 como uma sessão de mesa / qr. Monte o link com o nosso gerador de links UTM grátis, cole no gerador de QR code grátis e baixe um PNG ou SVG. As duas ferramentas são grátis, não pedem cadastro e funcionam no seu navegador.

Tem um detalhe que quase nenhum guia conta: o GA4 não tem canal padrão para QR code, então o tráfego com utm_medium=qr cai em Não atribuído (Unassigned) até você criar um grupo de canais personalizado. Testamos tudo em 3 de novembro de 2026: os links saíram da nossa ferramenta UTM ao vivo no Chrome, cada QR code foi lido de volta com dois decodificadores e os canais foram conferidos com as regras que o Google publica para o GA4.

Como o rastreamento de QR code no GA4 funciona de verdade

Um QR code estático é só texto; aqui, uma URL. Quando alguém lê o código, o celular abre essa URL como qualquer link, e a tag do GA4 lê os parâmetros utm_ do endereço. O GA4 nunca vê a leitura em si, só a visita que vem depois. Duas consequências práticas:

  • Você conta visitas, não leituras. Uma leitura que não é aberta, um celular sem sinal ou um visitante que bloqueia a análise não aparecem. Trate os números do GA4 como um piso.
  • A página de destino precisa da sua tag do GA4. Se o código leva a um PDF, ao Google Maps ou ao site de outra empresa, o GA4 não tem o que registrar. Aponte para uma página do seu site, mesmo que ela só leve adiante.

Por isso você não precisa de um serviço pago de «QR code dinâmico», que conta as leituras pelo próprio redirecionamento. Um código estático com UTM coloca os mesmos dados de campanha na sua própria análise e nunca expira. A desvantagem é que o destino fica fixo depois de impresso. Se talvez precise mudar, codifique uma URL curta do seu domínio que redirecione para o link com UTM.

Passo a passo: crie um QR code rastreável

  1. Escolha a página de destino. Use a URL final exata, com https:// e a versão certa com ou sem www, para não depender de redirecionamento.
  2. Abra o gerador de links UTM e cole a URL.
  3. Preencha três campos. UTM Source é onde o código está impresso (mesa, panfleto, cartaz, embalagem). UTM Medium é qr, igual em todos os códigos. UTM Campaign é o que você está divulgando (cardapio_verao_2026). Use UTM Content para separar versões, como mesa_12 ou cartaz_b.
  4. Clique fora do último campo. O gerador refaz o link quando um campo perde o foco, não a cada tecla. No nosso teste, logo depois de digitar a campanha, o resultado ainda mostrava ...?utm_source=mesa&utm_medium=qr; a campanha só apareceu ao clicar em outro lugar. Confira se todos os parâmetros estão lá antes de copiar.
  5. Cole o link no gerador de QR code (tipo Texto), escolha o tamanho e o nível de correção de erros e baixe um PNG para telas ou um SVG para a gráfica.
  6. Leia o seu próprio código com a câmera do celular ou envie a imagem ao leitor de QR code e confirme que a URL decodificada é idêntica, caractere por caractere.
  7. Teste no GA4 antes de imprimir (veja a última seção).

Experimente agora: monte o seu link com UTM e depois transforme em QR code. As duas páginas geram o resultado localmente no seu navegador.

Exemplos resolvidos (resultados reais das nossas ferramentas)

Digitamos estes dados no gerador UTM ao vivo, na versão em português. Os resultados foram copiados exatamente como saíram:

DadosLink gerado
URL https://www.exemplo.com.br/cardapio, source mesa, medium qr, campaign cardapio_verao_2026https://www.exemplo.com.br/cardapio?utm_source=mesa&utm_medium=qr&utm_campaign=cardapio_verao_2026 (98 caracteres)
Igual, com campaign Promoção de Verão...&utm_campaign=Promo%C3%A7%C3%A3o%20de%20Ver%C3%A3o (111 caracteres)
URL https://www.example.com/menu?lang=en#hours, source table_tent, content table_12https://www.example.com/menu?lang=en&utm_source=table_tent&utm_medium=qr&utm_campaign=spring_menu_2026&utm_content=table_12#hours
URL digitada sem protocolo: example.com/menuhttps://example.com/menu?utm_source=flyer&... (adiciona https, não adiciona www)

Os espaços viram %20 por padrão (ou +, se você escolher em Codificar espaços como; as medidas abaixo usaram +), e cada ç ou ã vira seis caracteres (%C3%A7, %C3%A3): válido, mas «Promoção de Verão» deixou o link 13 caracteres maior e o código passou da versão 6 para a 7. Use sublinhado e sem acento (promocao_verao). Parâmetros que já existiam, como lang=en, são mantidos, e o fragmento #hours fica no fim, que é onde precisa ficar: UTMs escritos depois de um # nunca chegam ao GA4. A ferramenta adiciona https://, mas não adivinha o www, então digite o endereço completo. Para revisar um link longo, cole no analisador de URL: com o terceiro link, ele listou os cinco valores separadamente e hours como fragmento.

Um QR code cresce em «versões»: a versão 1 tem 21×21 módulos (os quadradinhos) e cada versão soma 4 módulos por lado. Mais caracteres significam versão maior e quadradinhos menores no mesmo tamanho impresso. Geramos cada link em 512×512 px e lemos a versão com o decodificador zxing-cpp:

URL codificadaCaracteresVersão com MVersão com H
https://www.example.com/menu (sem UTM)283 (29×29)4 (33×33)
Link do cardápio de verão986 (41×41)9 (53×53)
Link com «Promoção de Verão»1117 (45×45)10 (57×57)
Caminho longo e valores longos (poster_downtown_bus_stop, poster_a3_version_b)18910 (57×57)14 (73×73)

Num código de 25 mm, a versão 6 dá módulos de cerca de 0,61 mm; a versão 10 os reduz para cerca de 0,44 mm. Isso faz diferença com impressão barata, superfícies brilhantes ou leitura de longe. Todos esses códigos foram decodificados perfeitamente pelo zxing-cpp e pelo nosso leitor de QR code, inclusive os & e o #hours: o tamanho não é problema de exatidão, e sim de impressão. Use valores curtos (cv26 em vez de cardapio_verao_2026), pule o utm_term (é para palavras-chave pagas) e deixe a correção de erros em M, a não ser que vá colocar um logo por cima.

A armadilha do GA4: utm_medium=qr aparece como «Não atribuído»

O GA4 classifica cada sessão num canal padrão (Pesquisa orgânica, E-mail, Referência etc.) com regras fixas que não podem ser editadas. Conferimos nossas tags com as regras da página de ajuda do Google sobre o grupo de canais padrão e a lista de origens que ela disponibiliza:

source / medium / campaignCanal padrãoPor quê
mesa / qr / cardapio_verao_2026Não atribuídoNenhuma regra menciona qr, e mesa não é uma origem conhecida
panfleto / impresso, print ou offlineNão atribuídoTambém não há regra para esses valores
instagram / qr ou whatsapp / qrSocial orgânicoinstagram e whatsapp estão na lista de origens sociais do Google
mesa / qr / bar-e-shopShopping orgânicoCampanhas com -shop ou shopping no nome contam como compras
mesa / mobile-qrNotificações push para dispositivos móveisQualquer medium que contenha mobile
mesa / qr-videoVídeo orgânicoQualquer medium que contenha video
mesa / qr_cpmOutros pagosQualquer medium que contenha cp

Ou seja, não tente fugir do «Não atribuído» com nomes criativos de medium: eles só jogam suas leituras no canal errado. Mantenha utm_medium=qr e crie um canal só para ele:

  1. No GA4, vá em Administrador → Exibição de dados → Grupos de canais e clique em Criar grupo de canais. Você começa com uma cópia do grupo padrão. É preciso ter acesso de editor ou superior.
  2. Adicione um novo canal, chame de QR codes e defina a condição Meio corresponde exatamente a qr.
  3. Use Reordenar e arraste QR codes para o topo, porque o tráfego vai para o primeiro canal que corresponder. Senão, instagram / qr continuaria em Social orgânico.
  4. Salve o grupo e escolha-o como dimensão principal em Relatórios → Aquisição → Aquisição de tráfego.

Segundo a documentação do Google, grupos de canais personalizados valem também para dados antigos, e uma propriedade padrão pode ter 2, com até 50 canais cada. As condições de canal não diferenciam maiúsculas, mas os valores nos relatórios sim: o Google avisa que utm_source=google e utm_source=Google são valores diferentes, então Mesa / QR e mesa / qr virariam duas linhas. Use sempre minúsculas.

Redirecionamentos e encurtadores: garanta que os UTMs sobrevivam

Se o código aponta para uma URL que redireciona, o redirecionamento precisa levar os parâmetros junto. A maioria leva: o nosso verificador de redirecionamento mostrou https://google.com/?utm_source=flyer... respondendo 301 para https://www.google.com/?utm_source=flyer... com todas as tags. Mas num teste com curl, https://fb.com/?utm_source=flyer&utm_medium=qr respondeu 301 para https://www.facebook.com/ puro, sem as tags. Um redirecionamento assim no seu site transforma cada leitura em tráfego Direto. Olhe a última URL da cadeia, não a primeira; veja como saber se um redirecionamento é 301 ou 302.

Erros comuns

  • Um código só para tudo. Se o panfleto e o cartaz usam o mesmo código, não dá para comparar. Mude utm_source ou utm_content em cada lugar; com códigos estáticos, isso não custa nada.
  • Usar UTM nos links internos do seu site. QR codes são portas de entrada, então marque-os; links entre as suas próprias páginas, não. Explicamos no nosso guia de parâmetros UTM no GA4.
  • Cores com pouco contraste. Um código na cor da marca, claro demais, pode não ser lido. O nosso gerador avisa quando o contraste está baixo; escuro sobre claro é o mais seguro.
  • Esconder o destino. O celular mostra a URL antes de abrir, e o seu próprio domínio passa mais confiança que um encurtador qualquer. Veja como saber se um QR code é seguro.

Teste no GA4 antes de imprimir

Abra uma janela anônima do navegador, que conta como usuário novo, e visite o seu link com UTM (ou leia o código com um celular que nunca entrou no seu site). No GA4, abra Relatórios → Tempo real e mude o card de usuários por origem do primeiro usuário para Campanha do primeiro usuário. O Google explica que o Tempo real mostra dimensões da primeira aquisição do usuário, por isso o navegador limpo é importante. Se a campanha aparecer em poucos minutos, a tag, o link e os redirecionamentos funcionam. Os números completos chegam depois em Aquisição de tráfego, em Origem / mídia da sessão e Campanha da sessão.

Perguntas frequentes

O Google Analytics consegue rastrear leituras de QR code?

De forma indireta. O GA4 não vê a leitura, mas se o QR code tiver um link com parâmetros UTM, cada leitura que abre a sua página é registrada como uma sessão com essa origem, mídia e campanha.

Qual utm_medium usar em QR code?

Use qr em todos os códigos e coloque o local em utm_source, como mesa ou panfleto. O GA4 não tem canal padrão para QR, então crie um grupo de canais personalizado com a condição Meio corresponde exatamente a qr, em primeiro lugar.

Por que o tráfego do meu QR code aparece como Não atribuído no GA4?

Porque nenhuma regra de canal padrão reconhece o medium qr (nem impresso, nem offline). Crie um grupo de canais personalizado chamado QR codes; ele vale também para dados antigos.

Preciso de QR code dinâmico para rastrear leituras?

Não. Um código estático com parâmetros UTM mostra as visitas por leitura no seu próprio GA4, de graça e sem expirar. O código dinâmico só acrescenta a possibilidade de mudar o destino depois de impresso, e um redirecionamento no seu domínio também faz isso.

Parâmetros UTM deixam o QR code mais difícil de ler?

Deixam mais denso. Nos nossos testes, uma URL de 28 caracteres gerou um código versão 3, e a versão com UTM de 98 caracteres gerou versão 6, ambos com correção M. Valores curtos e sem acento mantêm o código fácil de ler.

O gerador de UTM e o gerador de QR code são grátis?

Sim. Os dois são grátis, não pedem cadastro e funcionam no seu navegador. Não há marca d’água, e os códigos não expiram porque são estáticos.

Pronto para medir a sua campanha impressa? Marque o link com o gerador de links UTM, transforme em código com o gerador de QR code e confira com o leitor de QR code antes de mandar para a gráfica. Para QR codes de Wi-Fi impressos, veja como criar um QR code de Wi-Fi.

Como saber se uma página está com noindex (meta e cabeçalho)

2 Novembro, 2026

Veja em segundos se uma página está com noindex: a meta tag robots, o cabeçalho X-Robots-Tag e a armadilha do robots.txt, com testes reais e..

Como extrair todas as URLs de um sitemap (grátis)

1 Novembro, 2026

Tire todas as URLs de um sitemap XML em segundos, sem código. Testes reais com índices, URLs com parâmetros, namespaces e duplicatas, e como..

Como baixar a thumbnail de um vídeo do YouTube em HD

31 Outubro, 2026

Baixe a thumbnail de qualquer vídeo do YouTube em todos os tamanhos, até 1280x720. Testes reais, por que o HD fica cinza, links de Shorts e ..