Para gestores de tráfego
Como relacionar campanha, conversa e venda sem depender de achismo
UTMs, macros da Meta, ctwa_clid e link rastreável com código no texto: como ligar cada venda no WhatsApp ao anúncio e onde a atribuição quebra.
Para relacionar campanha, conversa e venda, a origem precisa ser capturada no momento em que a conversa nasce e ficar presa a ela até a venda. Em anúncio de clique para o WhatsApp isso é feito pelo ctwa_clid; em qualquer outro ponto de contato, por um link rastreável com UTMs, macros da Meta e um código no texto pré-preenchido. O que não passa por um desses dois caminhos é orgânico, e deve aparecer assim no relatório.
O resto deste artigo é o passo a passo técnico: como montar os parâmetros, onde cada identificador aparece, e os pontos exatos em que a atribuição quebra na operação real.
A cadeia que precisa existir: clique, conversa, venda
Toda atribuição confiável no WhatsApp tem três elos, e cada um tem um dono diferente:
- O clique acontece no Instagram, no Facebook, no Google ou num QR. Quem controla é o gestor de tráfego: o tipo de anúncio, o destino e os parâmetros.
- A conversa acontece no WhatsApp do cliente. Quem controla é a ferramenta que recebe as mensagens: ela precisa ler o identificador do clique ou o código do link e gravar a origem na conversa.
- A venda acontece quando alguém da equipe do cliente move o lead para "Vendido" e registra o valor. Quem controla é o comercial do cliente.
Se qualquer elo falha, a venda chega ao relatório sem origem. O problema é que a falha costuma ser silenciosa: o relatório não mostra erro, só mostra mais orgânico do que deveria. Por isso vale tratar cada elo como uma etapa com verificação própria.
Click-to-WhatsApp: o ctwa_clid faz o trabalho
Quando o anúncio tem destino WhatsApp, a Meta gera um identificador do clique, o ctwa_clid, e o entrega junto com a primeira mensagem que a pessoa envia.
- Na API oficial, ele vem no webhook dentro de
referral, junto com o ID do anúncio (source_id). - No WhatsApp Business conectado por QR, ele vem nos metadados da mensagem, também com o ID do anúncio.
Com o ID do anúncio, a Marketing API resolve o nome do anúncio, do conjunto e da campanha. Essa é a atribuição mais forte que existe no WhatsApp: houve clique, o identificador veio, não há interpretação.
Duas observações práticas:
- Não é preciso UTM em anúncio de clique para o WhatsApp. O
ctwa_clidjá carrega a origem. Colocar UTM ali não atrapalha, mas também não é o que resolve. - O mesmo
ctwa_clidvolta para a Meta. Quando o lead vira venda, o evento enviado pela API de Conversões leva esse identificador, e a Meta consegue ligar a venda ao clique. O detalhe está em API de Conversões para WhatsApp.
Todo o resto: link rastreável com UTMs, macros e código no texto
Anúncio de tráfego para site, botão de WhatsApp no site, link da bio, Google, QR no balcão: nada disso gera ctwa_clid. Para esses casos, o caminho é um link rastreável.
Um link rastreável é uma URL sua, por exemplo /r/promo-novembro, que faz três coisas:
- Registra o clique com todos os parâmetros que vieram na URL.
- Redireciona para o
wa.mecom uma mensagem pré-preenchida que contém um código curto. - Quando a mensagem com aquele código chega no WhatsApp, a ferramenta casa o clique com a conversa.
O código é necessário porque não existe cookie que atravesse do navegador para o WhatsApp. O texto que a pessoa vê é algo como "Oi, vim pela promoção de novembro (código)". Curto e natural, para ninguém ter vontade de apagar.
Nos anúncios da Meta que usam esse link como destino, os parâmetros de URL devem levar as macros, que a Meta substitui na hora do clique:
utm_source=meta&utm_medium=paid
&utm_campaign={{campaign.name}}&utm_term={{adset.name}}&utm_content={{ad.name}}
&utm_id={{campaign.id}}&adset_id={{adset.id}}&ad_id={{ad.id}}
Os nomes ajudam a leitura humana. Os IDs são o que importa: nome de campanha muda, ID não. É pelo ID que a venda cruza com o gasto importado da Marketing API e o ROAS por campanha, conjunto e anúncio fica correto mesmo depois que alguém renomeia a campanha.
| Ponto de contato | Identificador da origem | Precisa de UTM? | Nível de confiança |
|---|---|---|---|
| Anúncio de clique para o WhatsApp | ctwa_clid + ID do anúncio | Não | Exato |
| Anúncio de tráfego para site que leva ao WhatsApp | Link rastreável + macros com IDs | Sim, com macros | Alto |
| Botão de WhatsApp no site | Link rastreável utm_source=site | Sim | Alto (origem, sem anúncio) |
| Bio do Instagram | Link rastreável próprio | Opcional | Alto (orgânico identificado) |
| QR na loja ou embalagem | Link rastreável próprio | Opcional | Alto (orgânico identificado) |
| Número digitado ou indicação | Nenhum | Não se aplica | Orgânico |
Onde a atribuição quebra na prática
São sempre os mesmos pontos. Vale revisar cada um na entrada de qualquer conta nova.
- Link sem UTM ou sem macros. O anúncio aponta para o link rastreável, mas o campo de parâmetros ficou vazio. O clique é registrado, a conversa é casada, mas sem ID de campanha. A venda aparece como "link" e não entra no ROAS da campanha. Revise o campo de parâmetros em todos os anúncios, inclusive nos duplicados, que às vezes perdem a configuração.
- Encurtador no meio do caminho. Encurtadores genéricos podem descartar parâmetros no redirecionamento ou trocar o destino sem você perceber. Se o link rastreável já é curto, o encurtador não acrescenta nada. Use o link rastreável direto.
wa.medireto na bio ou no site. É o erro mais comum. Funciona para o cliente final, mas não registra clique nem gera código. Toda conversa que entra por ali vira orgânica.- WhatsApp orgânico de verdade. Indicação, cliente antigo que salvou o número, pessoa que viu o anúncio e digitou o número depois. Não há como atribuir, e não se deve tentar. Separar esse volume é o que dá credibilidade ao resto do relatório.
- Cliente que volta dias depois. A pessoa clicou no anúncio, conversou, sumiu e voltou duas semanas depois pelo mesmo chat. Se a conversa é a mesma, a origem é a do primeiro toque e a venda é atribuída ao anúncio original. Se ela clicou em outro anúncio no retorno, o toque novo fica registrado, mas não troca a atribuição. A regra precisa estar escrita para não virar discussão.
- Troca de número. O vendedor passa o contato para o próprio celular, ou a empresa migra de número sem levar o histórico. A conversa nova nasce sem origem. Dentro de uma ferramenta, a solução é trocar o responsável pelo lead, não o número.
- Mensagem pré-preenchida apagada. Se a pessoa apaga o texto com o código antes de enviar, o casamento falha. Texto curto reduz bastante isso.
- Venda sem valor. O lead foi para "Vendido" sem valor registrado. A atribuição está certa, mas a receita é zero. Valor obrigatório na etapa de venda resolve.
Exemplo hipotético: quanto o link sem rastreio tira do ROAS
Os números abaixo são um exemplo hipotético, apenas para mostrar a conta.
Uma conta investe R$ 5.000 no mês e recebe 400 conversas. Dessas, 250 chegam com ctwa_clid, 60 entram por link rastreável de um anúncio de tráfego para site e 90 não têm origem. As vendas foram 40, com ticket médio de R$ 450: 22 vindas de ctwa_clid, 6 vindas do link rastreável e 12 orgânicas.
Com a atribuição completa:
- Vendas atribuídas a anúncio: 22 + 6 = 28
- Receita atribuída: 28 × R$ 450 = R$ 12.600
- ROAS: R$ 12.600 ÷ R$ 5.000 = 2,52
- Custo por venda: R$ 5.000 ÷ 28 = R$ 178,57
Agora imagine que o anúncio de tráfego para site apontava para um wa.me direto, sem link rastreável. As 6 vendas desse anúncio caem no orgânico:
- Vendas atribuídas a anúncio: 22
- Receita atribuída: 22 × R$ 450 = R$ 9.900
- ROAS: R$ 9.900 ÷ R$ 5.000 = 1,98
- Custo por venda: R$ 5.000 ÷ 22 = R$ 227,27
A mídia foi a mesma e as vendas foram as mesmas. O que mudou foi um link. Se o ROAS mínimo do cliente fosse 2,2, a campanha pareceria abaixo do mínimo e poderia ser pausada por um erro de configuração.
Checklist de entrada para cada conta
Antes de prometer qualquer relatório por campanha, rode este checklist na conta do cliente:
- Todo anúncio com destino WhatsApp está chegando com
ctwa_clidna ferramenta? Teste clicando num anúncio ativo. - Todo anúncio com destino site ou link tem os parâmetros com macros e IDs?
- A bio do Instagram, o botão do site e os QRs usam link rastreável, e não
wa.medireto? - O token da integração tem permissão
ads_readna conta de anúncios, para o gasto e os nomes serem importados? - A etapa de venda exige valor?
- Todos os vendedores atendem pelo número conectado, e não pelo celular pessoal?
- Existe uma regra escrita de primeiro toque e de quando uma conversa é considerada nova?
Esse checklist não leva uma tarde. E evita o mês em que o relatório diz uma coisa e o caixa do cliente diz outra. Para os mecanismos em mais detalhe, veja qual anúncio gerou a venda no WhatsApp; para transformar isso em reunião com o cliente, veja como provar resultado ao cliente.
Perguntas frequentes
Preciso colocar UTM em anúncio de clique para o WhatsApp?
Não é o que resolve a atribuição. Nesse tipo de anúncio a Meta entrega o ctwa_clid com a primeira mensagem, junto com o ID do anúncio. UTM é necessária quando o anúncio leva a um link ou a um site antes do WhatsApp.
Quais macros da Meta usar nos parâmetros de URL?
Para cruzar com o gasto, as essenciais são {{campaign.id}}, {{adset.id}} e {{ad.id}}. Os nomes ({{campaign.name}}, {{adset.name}}, {{ad.name}}) ajudam a leitura, mas mudam quando alguém renomeia a campanha. O ID não muda.
Por que o código no texto pré-preenchido é necessário?
Porque o clique acontece no navegador e a conversa acontece no WhatsApp, e não existe cookie que ligue os dois. O código na mensagem é o que permite casar aquele clique específico com aquela conversa.
Posso usar encurtador de link no lugar do link rastreável?
Não é recomendado. O encurtador pode perder parâmetros e não gera o código na mensagem. O link rastreável já é curto e faz o registro do clique.
E quando o cliente volta dias depois pela mesma conversa?
A venda fica com a origem do primeiro toque da conversa. Cliques em outros anúncios no meio do caminho ficam registrados como toques posteriores, sem trocar a atribuição.


