Passar para o conteúdo principal

Dúvidas sobre atribuição em Apps (Android/iOS), UTMs e Integrações

b
Escrito por bruno bulso

Guia de Orientação ao Cliente – Atribuição e UTMs em Apps

Este guia consolida aprendizados de tickets recentes do SPTK para orientar clientes em casos de: sessões de Android sem atribuição no GA4, pedidos sem UTMs após ativação do app e integrações de ads/analytics que afetam atribuição.

Use este material como roteiro de triagem e comunicação com clientes. Inclui checklists de diagnóstico, mensagens-sugestão, e ações imediatas por cenário.

1. Sessões Android sem identificação de atribuição no GA4

1.1 Sinais e sintomas

  • Dimensões de origem/mídia/campanha aparecem como (not set) predominantemente no Android (iOS OK).

  • Relatórios por página de destino/tela com grande volume de not set, / ou telas técnicas.

  • Evento purchase sem associação à tela (screen) em análises detalhadas.

1.2 Causas prováveis

  • Uso de dimensões web (ex.: Página de destino) em contexto de app, gerando not set para telas.

  • Envio inconsistente/ausente de parâmetros de tela (ex.: screen_name, screen_class) em eventos críticos.

  • Deeplinks/Deferred Deeplinks que não propagam parâmetros de atribuição para a sessão ativa.

1.3 Ações imediatas

  • No GA4, trocar relatórios que usam “Página de destino” para “Título da página e Nome da tela”.

  • Analisar funis por evento (Explorações) em vez de por tela; priorizar o evento purchase e seus precursores.

  • Confirmar que o app Android está na mesma versão do iOS quanto ao envio de screen_name em todos os eventos.

1.4 Checklist técnico para o time do cliente

  • Confirmar versão do app Android em produção e data do último release.

  • Validar, em um dispositivo Android, via DebugView do GA4, que cada evento envia screen_name e session_id.

  • Testar um deeplink com UTMs e checar, em tempo real, se os parâmetros chegam a first_user_source/session_source.

  • Se houver MMP (ex.: Singular), validar se o click ID/instalação estão pareados com a sessão que gera o purchase.

1.5 Comunicação-sugestão ao cliente

Identificamos que a dimensão “Página de destino” é orientada a web e não reflete telas de app. Para análises de navegação no app, use “Título da página e Nome da tela”. Em paralelo, estamos padronizando o envio de screen_name em todos os eventos no Android para eliminar ocorrências de (not set) nas conversões.

2. Pedidos sem atribuição de UTMs após ativação do app

2.1 Sinais e sintomas

  • Pedidos originados de campanhas mobile/deeplinks aparecem sem UTMs no GA4/BI.

  • Redirecionamento para a home ao abrir links com UTM via ferramenta de engajamento.

  • Campo de campanha divergente entre a plataforma de engajamento e o GA4.

2.2 Principais cenários e como orientar

2.2.1 UTMs via ferramentas de engajamento (Insider, Inngage)

  • Insider com links dinâmicos: UTMs inseridas pela ferramenta podem quebrar o deeplink e enviar o usuário para a home.

  • Inngage: campo campaign no GA4 puxando título da push em vez do valor configurado.

Ações

  • Solicitar 3 exemplos de links problemáticos, com vídeo curto reproduzindo o fluxo (click → app → tela final).

  • Testar com UTMs colocadas manualmente no link de destino para isolar se a quebra é causada pelo parser da ferramenta.

  • No GA4, criar/validar dimensões personalizadas para captar utm_campaign conforme padrão do parceiro.

  • Padronizar nomenclatura: utm_source, utm_medium, utm_campaign, sempre minúsculas e sem espaços.

2.2.2 Deeplinks não propagam UTMs para a sessão

  • O app abre na tela correta, mas a sessão entra sem UTMs.

Ações

  • Verificar se o resolver de deeplink transfere UTMs para o contexto de analytics antes do screen_view.

  • Garantir que o primeiro screen_view pós-abertura já carregue session_source/medium/campaign.

  • Checar conflitos entre App Links/Android Intent Filters e esquemas personalizados que limpem a querystring.

2.2.3 MMP/Singular com pedidos “sem canal”

  • Parte das compras aparece como não atribuída no MMP, apesar de tráfego de app ativo.

Ações

  • Extrair uma amostra de pedidos com e sem atribuição e comparar: hora do click, install/open, purchase.

  • Validar se o payment flow (ex.: webview externo) mantém o device ID e o attribution token.

  • Confirmar que eventos in-app são enviados ao MMP com timestamps corretos e dentro da janela de atribuição.

2.3 Mensagem-sugestão ao cliente

Para garantir atribuição consistente, precisamos que os deeplinks preservem UTMs até o primeiro screen_view. Vamos revisar juntos um conjunto de links de campanha e ativar uma dimensão personalizada no GA4 para padronizar a utm_campaign. Também validaremos com a ferramenta de engajamento se há alguma regra que altere a querystring.

3. Integrações de Ads que impactam atribuição (Meta, etc.)

3.1 Itens críticos a validar no Meta

  • App cadastrado no Meta Developer para Android e iOS, com Bundle ID/Package Name corretos.

  • Registro de eventos automáticos habilitado no Events Manager (“Rastrear eventos automaticamente sem código”).

  • SDK atualizado e pareado com o app build atual.

3.2 Passos rápidos

  • Checar no Events Manager se instalações e first opens aparecem em tempo real após reinstalação em dispositivo de teste.

  • Confirmar se os eventos de comércio (view_content, add_to_cart, initiate_checkout, purchase) estão mapeados e recebendo parâmetros obrigatórios (valor, moeda, ID do produto).

  • Revisar se a plataforma Android está adicionada nas configurações do app no Meta e publicada adequadamente.

4. Checklists operacionais

4.1 Triagem rápida (para qualquer caso de atribuição)

  • Qual é o canal de origem? (push, e-mail, mídia paga, SEO, social, deeplink interno, QR)

  • Há vídeo ou passo a passo reproduzindo o fluxo?

  • Link exato utilizado (com UTMs) e timestamp do teste.

  • Dispositivo/SO, versão do app e ambiente (produção/homologação).

  • Print do DebugView do GA4 mostrando os primeiros eventos após a abertura.

4.2 Evidências técnicas a solicitar

  • Payload de eventos principais (open, screen_view, add_to_cart, begin_checkout, purchase) com parâmetros de atribuição e tela.

  • Se houver MMP: relatório de attribution matching para as compras testadas.

  • No caso de ferramentas de engajamento: captura de configuração da campanha e do construtor de link.

5. Padrões e boas práticas

  • Padronizar UTMs: usar minúsculas, sem espaços; ex.: utm_source=push, utm_medium=app, utm_campaign=oferta_inverno_2026.

  • Garantir que screen_name e session_id sejam enviados em 100% dos eventos.

  • Preferir relatórios por eventos/conversões no GA4 para medir receita; telas servem como contexto, não como fonte canônica de faturamento.

  • Em deeplinks, testar sempre: deep + deferred deep + fallback para web preservando querystring.

6. Modelos de mensagem

6.1 Solicitação de exemplos e evidências

Para avançarmos na correção de atribuição, poderia nos enviar 3 exemplos de links utilizados (com UTMs), a data e hora dos testes e um vídeo curto do fluxo (clique → abertura do app → tela de destino)? Também pedimos um print do DebugView do GA4 mostrando os primeiros eventos após a abertura.

6.2 Orientação sobre dimensões no GA4

No app, a dimensão “Página de destino” se comporta diferente do site. Para análises de navegação no aplicativo, utilize “Título da página e Nome da tela”. Estamos revisando o envio de screen_name para eliminar ocorrências de (not set).

6.3 Alinhamento sobre UTMs em parceiros

Observamos que a ferramenta de engajamento está reescrevendo as UTMs, o que pode afetar o deeplink. Vamos alinhar um padrão único de utm_source, utm_medium e utm_campaign e validar juntas as configurações do construtor de link.

7. Fluxo de resolução recomendado

  1. Reproduzir o problema com vídeo e timestamp.

  2. Capturar DebugView e eventos em tempo real (GA4 e, se houver, MMP).

  3. Isolar: link com UTMs manuais vs. UTMs da ferramenta de engajamento.

  4. Checar versão do app e parâmetros enviados (screen_name, session_id, UTMs).

  5. Validar integrações externas (Meta, Singular) e janelas de atribuição.

  6. Aplicar correção técnica (parser de deeplink, parâmetros de evento, mapeamento no MMP) e revalidar.

Resumo de ações por cenário

Problema

Causa provável

Ação imediata

"not set" no GA4 (telas)

Dimensão web usada em contexto de app

Trocar para "Título da página e Nome da tela"

Purchase sem tela associada

screen_name não enviado nos eventos

Fix Kobe em andamento (dev/testes)

UTM via Insider quebra deeplink

Bug na interpretação de UTMs dinâmicas

Escalar para desenvolvimento com link + vídeo de exemplo

UTM Inngage com campaign errado

Dimensão padrão não captura corretamente

Criar dimensão personalizada utmCampaign no GA4

Transações #N/D na Singular

Campos de tracking possivelmente vazios

Solicitar base de pedidos e validar payload VTEX → Kobe → Singular

Meta Ads sem instalações

Plataforma Android não cadastrada ou SDK automático desabilitado

Verificar Meta Developer + habilitar "Rastrear eventos automaticamente"

Respondeu à sua pergunta?