Para saber de onde veio cada cliente, cada porta de entrada precisa carimbar o contato na chegada: o formulário aplica uma etiqueta, o WhatsApp aplica outra e o link da campanha leva parâmetros UTM (etiquetas escritas no próprio link). Etiqueta posta depois, à mão, se perde. E o telefone deve ser comparado sem depender do formato.

Quem abre o cadastro e vê uma lista de nomes sem nenhuma pista de origem não consegue responder a pergunta mais básica do negócio: qual canal está trazendo gente. Foi o que aconteceu num CRM (o sistema que guarda a ficha de cada cliente) próprio que mantemos em produção. E o conserto mostrou que a origem se perde em lugares que ninguém olha.
Por que o contato entra no cadastro sem dizer de onde veio?
Porque, na maioria dos sistemas, etiquetar a entrada é configuração, não comportamento padrão. No nosso caso, o CRM só etiquetava automaticamente quem comprava: a confirmação da plataforma de pagamento aplicava as etiquetas de compra, e isso estava escrito direto no código.
A etiqueta de entrada dependia de um campo no painel de cada formulário, chamado “tag inicial”. Seis formulários estavam com esse campo em branco. O sétimo apontava para uma etiqueta que tinha sido apagada — e o sistema aceitava isso sem reclamar. Na tela, só dois de sete contatos tinham alguma marca de origem.
Que etiqueta cada porta de entrada deve aplicar?
A regra que adotamos é simples: uma etiqueta por porta, aplicada pelo próprio sistema, na hora da entrada. Nada de etiquetar depois, olhando a lista.
| Porta de entrada | Quem aplica a etiqueta | O que registra |
|---|---|---|
| Formulário de captura | o próprio formulário (campo de etiqueta inicial) | qual formulário, em qual página |
| Conversa no WhatsApp | uma automação “mensagem recebida → adicionar etiqueta” | que o contato chegou pelo WhatsApp |
| Compra | a confirmação da plataforma de pagamento | o que comprou |
| Campanha paga | parâmetros UTM no link | fonte, meio e nome da campanha |
O nome da etiqueta deve dizer a porta, não o humor do dia: “formulário-página-de-vendas” é útil daqui a seis meses; “lead quente” não é.
Como etiquetar automaticamente quem chega pelo WhatsApp?
Com uma automação disparada a cada mensagem recebida, cuja única ação é adicionar a etiqueta de WhatsApp. No nosso CRM, ela foi criada sem mexer em código: não envia mensagem, não move o contato no funil e não mexe em quem já estava no cadastro antes de ela existir.
O detalhe que a torna segura é ser idempotente (fazer a mesma coisa duas vezes dá o mesmo resultado de fazer uma): ela dispara em toda mensagem, mas antes de gravar confere se o contato já tem aquela etiqueta. Mil mensagens do mesmo cliente geram uma etiqueta só. A própria etiqueta foi criada automaticamente na primeira execução.
O que os parâmetros UTM resolvem que a etiqueta não resolve?
A etiqueta diz por qual porta o contato entrou. O UTM diz qual anúncio ou link o levou até aquela porta. Se duas campanhas mandam para o mesmo formulário, a etiqueta das duas é igual; só o UTM separa uma da outra.
A documentação oficial do Google Analytics sobre URLs personalizados define três parâmetros que devem estar sempre presentes: `utm_source` (de onde), `utm_medium` (que tipo de mídia) e `utm_campaign` (qual campanha). Ela também avisa que os valores diferenciam maiúsculas de minúsculas: “google” e “Google” viram duas fontes diferentes no relatório. Padronizar tudo em minúsculas evita esse racha.
Para o WhatsApp, onde não existe formulário para receber o UTM, o recurso de conversa em um clique permite um link com mensagem pré-preenchida. Um texto diferente por campanha já indica a origem na primeira mensagem.
Por que o mesmo cliente aparece duas vezes no cadastro?
Porque o sistema compara telefones como texto, caractere por caractere. No nosso CRM, encontramos em produção a mesma pessoa cadastrada duas vezes: uma entrada vinda do WhatsApp, com 10 dígitos e sem etiqueta nenhuma; outra vinda do formulário, com 11 dígitos e as etiquetas de compra.
A diferença era só o 9 da frente do celular. O WhatsApp entregou o número sem ele; no formulário, a pessoa digitou com ele. Desde 2016 todo celular brasileiro tem nove dígitos, com o 9 acrescentado antes do número, como registrou a Agência Brasil na conclusão da mudança — mas o número continua chegando nos dois formatos, dependendo da porta.
Por que o telefone duplicado estraga a origem do cliente?
Porque a origem fica partida em duas fichas e nenhuma delas conta a história inteira. A ficha do WhatsApp diz que a pessoa chegou por lá, mas não sabe que ela comprou. A ficha do formulário sabe da compra, mas não sabe da conversa. Qualquer relatório de “qual canal vende” sai errado, e automações de recuperação podem mirar em quem já é cliente.
O agravante: o código do nosso CRM já tinha uma função pronta para comparar telefones ignorando formato. Ela só não era usada na hora de verificar duplicidade.
Por isso esse furo não tem contorno pelo painel — o conserto é uma alteração de código, feita com a ferramenta de IA que usamos para manter o sistema, o Claude Code, e testada antes de ir para produção.
E quando o mesmo cliente entra de novo por outra campanha?
Aqui mora uma pegadinha que parece defeito e não é. Quando um formulário recebe um telefone que já existe, o sistema não cria contato novo, não sobrescreve nome, e-mail nem origem, mantém a data de cadastro original e não abre card novo no funil. Mesmo assim, responde “enviado com sucesso”.
Na prática, o cadastro guarda a primeira origem. É uma escolha defensável — mas precisa ser conhecida. Quem testa o formulário com o próprio telefone repetido acha que “o lead não chegou”, quando ele chegou e foi fundido ao contato antigo. Se a segunda campanha importa, ela precisa virar uma etiqueta a mais, nunca uma troca da primeira.
Como testar se a etiqueta de entrada está funcionando?
Com um teste controlado, não com a conferência visual da lista. O que fizemos:
- escolher um formulário sem funil ligado, para o teste não disparar nenhuma sequência de mensagens;
- enviar com um telefone nunca usado antes — com telefone repetido, a regra de fusão esconde o resultado;
- conferir o contador da etiqueta: foi de 0 para 1, e o contato apareceu com a etiqueta colada;
- apagar o contato de teste e confirmar que o contador voltou a 0.
Logo depois da correção, as etiquetas novas ficaram zeradas por um tempo. Isso era esperado — nenhum contato novo tinha entrado ainda — e não era defeito. Contador zerado só é problema depois que alguém entrou.
Qual problema continua aberto mesmo com tudo etiquetado?
O contato que chega pelo WhatsApp não dispara o evento (o aviso interno que o sistema dá quando algo acontece) de “contato criado” no nosso CRM. A etiqueta resolve a origem. Mas uma régua de recuperação, a sequência automática de mensagens para quem não comprou, começa nesse evento e não enxerga quem veio pela conversa.
Colocar essas pessoas na régua exigiria disparar mensagens de verdade — decisão de gente, nunca da automação. Mais sobre esse tipo de falha silenciosa está em o que fazer quando a automação quebra e a tela dizia que estava tudo certo.
O que se ganha com a regra aplicada é concreto: abrir o cadastro e filtrar por porta de entrada, e juntar essa origem com os números de venda num lugar só, como descrito em como juntar dado de várias fontes num painel. O custo e os tropeços de manter esse CRM estão em quanto custa construir um CRM sem contratar dev.
Quando conferir se a origem está sendo gravada?
Em três momentos, todos tirados do que deu errado no nosso caso:
- Ao criar um formulário novo. Foi assim que seis formulários ficaram com a etiqueta inicial em branco. O campo é opcional, e ninguém é obrigado a preencher.
- Ao apagar ou renomear uma etiqueta. O sétimo formulário apontava para uma etiqueta apagada, e o sistema não reclamou. Quem apaga etiqueta precisa conferir quem usava.
- Ao subir uma campanha nova. Antes de pagar o primeiro clique, faça o teste controlado descrito acima com um telefone nunca usado.
Fora desses momentos, basta olhar o contador de cada etiqueta de vez em quando. Contador parado enquanto entra gente é sinal de porta sem carimbo.
Para quem isso serve — e em quais casos não se aplica?
Se aplica bem:
- Negócio com mais de uma porta de entrada. Formulário, WhatsApp e anúncio ao mesmo tempo. Sem carimbo, não dá pra comparar um canal com o outro.
- Quem paga anúncio. Só o UTM separa duas campanhas que mandam para o mesmo formulário.
- Quem usa mensagem automática de recuperação. Com ficha duplicada, a mensagem pode mirar em quem já comprou.
Não se aplica tão bem:
- Quando todo cliente chega pela mesma porta. Se só existe o WhatsApp, a etiqueta diria sempre a mesma coisa. Aí o que importa é o texto de campanha no link de conversa.
- Quando o cliente chega por indicação, sem link. Nenhum carimbo automático pega o boca a boca. Nesse caso, a origem só aparece se alguém perguntar “como nos conheceu?” e anotar.
Como resolver isso com IA, passo a passo?
1. O que construir. Uma skill de auditoria de origem no Claude Code (uma skill é um conjunto de instruções salvas que a IA segue sempre do mesmo jeito). Ela faz duas coisas que, no nosso caso, ninguém tinha feito à mão. Primeiro, lista cada formulário e diz qual está sem etiqueta de entrada ou apontando para etiqueta apagada. Segundo, procura fichas duplicadas comparando só os dígitos do telefone, com e sem o 9 da frente. Ela mostra o que achou e não junta nem apaga ficha sozinha.
2. O pedido pronto para copiar. O pedido que recomendamos colar no Claude Code, dentro da pasta do seu CRM:
“Crie uma skill chamada ‘auditar origem dos clientes’. Ela deve: 1) listar todos os formulários de captura e marcar os que estão com a etiqueta inicial em branco ou apontando para uma etiqueta que não existe mais; 2) procurar contatos duplicados comparando só os números do telefone, tratando como a mesma pessoa um celular com e sem o 9 da frente, e me mostrar os pares lado a lado com as etiquetas de cada ficha; 3) conferir se o código já tem uma função que compara telefones ignorando o formato e me dizer se ela está sendo usada na checagem de duplicidade; 4) não juntar, não apagar e não disparar mensagem nenhuma sem meu ok. Me mostre o resultado numa tabela e explique em português simples.”
Como conferir se a auditoria acertou?
3. O teste dos sete formulários. Use o caso deste artigo como gabarito. Num cadastro como o nosso, a resposta certa é: seis formulários com a etiqueta inicial em branco e um apontando para etiqueta apagada. Cadastre de teste a mesma pessoa duas vezes, uma com 10 dígitos e outra com 11, como aconteceu aqui. A skill tem que mostrar as duas fichas como um par só. Depois da correção, repita o teste controlado da seção acima: o contador da etiqueta tem que ir de 0 para 1 e voltar a 0 ao apagar o contato de teste.
Quanto custa e quanto tempo leva para montar a auditoria?
4. Custo e tempo. A skill roda no Claude Code. A página oficial de preços do Claude, vista do Brasil em 02/10/2026, mostra o plano Pro a R$ 110 no mensal ou R$ 92 por mês no anual (R$ 1.100 de uma vez), com o Claude Code incluído. O plano Free é R$ 0 e não traz o Claude Code. Os preços não incluem impostos aplicáveis. O tempo para montar não medimos à parte; o custo de manter o próprio CRM está em quanto custa construir um CRM sem contratar dev.
O que a gente faria no seu lugar?
A gente consertaria a comparação de telefone antes de qualquer etiqueta. O motivo está no nosso próprio cadastro: a mesma pessoa em duas fichas, uma com 10 e outra com 11 dígitos. Etiqueta bem aplicada numa ficha partida continua contando meia história.
Depois, a gente poria uma etiqueta por porta, aplicada pelo sistema na hora da entrada. Nos sete formulários, só dois contatos tinham marca de origem. Isso mostra que depender de alguém lembrar não funciona. Por isso a gente deixaria a skill “auditar origem dos clientes” rodar a cada formulário novo e a cada campanha nova, nos três momentos listados acima.
O que a gente não faria: etiquetar à mão olhando a lista, nem trocar a primeira origem pela segunda campanha. E não jogaria contatos antigos numa sequência de mensagens só para completar a régua. Disparar mensagem de verdade é decisão de gente.
Em resumo
Saber de onde veio cada cliente exige que cada porta de entrada — formulário, WhatsApp, compra e link de campanha com UTM — carimbe o contato sozinha, no momento em que ele chega. E nenhuma etiqueta sobrevive a um cadastro que trata o mesmo celular, com e sem o 9 da frente, como duas pessoas diferentes.
Este artigo faz parte do pilar Do Excel ao sistema próprio — quando a planilha para de dar conta.

Deixe um comentário