UTMs e atribuição
Atribuição é o coração do plugin: toda conversão chega ao CRM sabendo de onde o lead veio — UTMs, identificadores de clique de 17 plataformas, a página de entrada e o site que o trouxe.
O que é capturado
Seção intitulada “O que é capturado”Os cinco parâmetros UTM
Seção intitulada “Os cinco parâmetros UTM”utm_source — origem (google, facebook, newsletter, ...)utm_medium — meio (cpc, organic, email, ...)utm_campaign — nome da campanhautm_term — palavra-chave (Google Ads)utm_content — variação criativaOs 17 identificadores de clique
Seção intitulada “Os 17 identificadores de clique”| Plataforma | Click ID |
|---|---|
| Google Ads | gclid |
| Google Ads (DV360, novo) | gbraid |
| Google Ads (DV360, novo) | wbraid |
| Google Display | dclid |
| Meta Ads (Facebook/Instagram) | fbclid |
| Meta cookies | fbc, fbp |
| Click-to-WhatsApp Ads | ctwa_clid |
| Meta Lead Ads | leadgen_id |
| TikTok Ads | ttclid |
| Microsoft Ads (Bing) | msclkid |
| LinkedIn Ads | li_fat_id |
| Twitter/X Ads | twclid |
| Pinterest Ads | epik |
| Snapchat Ads | ScCid |
| Reddit Ads | rdt_cid |
| ShareASale (afiliado) | sck |
Esses parâmetros são lidos da URL automaticamente quando o visitante chega no site pela primeira vez.
Outros dados de contexto
Seção intitulada “Outros dados de contexto”landing_page— primeira URL acessada pelo visitante (preservada mesmo se ele navegar pra outras páginas antes de submeter)referrer— site de origem (document.referrerno momento da chegada)page_url— URL onde o lead efetivamente submeteu o formuser_agent— navegador/dispositivolocale— idioma do site (pt_BRetc)
Dois cookies, duas perguntas diferentes
Seção intitulada “Dois cookies, duas perguntas diferentes”O plugin não guarda uma origem só. Guarda duas, em cookies separados, porque são duas perguntas diferentes — e é o mesmo modelo que o Google Analytics usa.
| Cookie | O que guarda | Dura |
|---|---|---|
smart2_first | A primeira visita. Semeado uma vez e nunca sobrescrito | ~13 meses |
smart2_utm | A última visita com origem. Qualquer visita com origem sobrescreve, paga ou orgânica | 90 dias |
A regra que faz o segundo cookie funcionar: visita direta não sobrescreve nada. Quem digita o endereço ou volta pelo favorito não apaga a campanha que trouxe a pessoa.
Na prática:
Dia 1 anúncio da Meta → smart2_first = facebook/cpc smart2_utm = facebook/cpc
Dia 5 busca no Google → smart2_first NÃO muda smart2_utm = google/organic
Dia 10 digita o endereço → nenhum dos dois muda (visita direta)Dia 10 preenche o formulário → o CRM recebe os DOISQuem leva o crédito — o anúncio que apresentou a marca ou a busca que fechou a venda — é decisão do CRM, não do plugin. Ele manda os dois e deixa a régua para lá. Veja origem e touchpoints.
Como os cookies são gravados
Seção intitulada “Como os cookies são gravados”HttpOnly, SameSite=Lax, e Secure em HTTPS. Conteúdo em JSON.
HttpOnly quer dizer que o JavaScript da página não lê esses cookies — quem grava e quem lê é o servidor. É o que impede um script de terceiros no seu site de levar a atribuição embora.
Visitante sem cookie nenhum? Então valem só as UTMs e os identificadores que estiverem na URL da própria página onde ele converteu.
Página em cache
Seção intitulada “Página em cache”Site com cache de página inteira (WP Rocket, LiteSpeed, Cloudflare APO) entrega o HTML pronto e o PHP não roda — então o servidor não vê a primeira visita nem grava o cookie. Pra isso, desde a 2.12 o JavaScript grava dois cookies de apoio, smart2_js_utm e smart2_js_visit, com o mesmo conteúdo. Na hora da conversão o servidor lê primeiro os seus cookies HttpOnly; se não existirem, usa os do JavaScript. A atribuição não se perde por causa do cache.
Injetar as UTMs no formulário (opcional)
Seção intitulada “Injetar as UTMs no formulário (opcional)”Em alguns casos você quer que as UTMs apareçam como campos visíveis no formulário — por exemplo, pra um plugin de form que persiste tudo no Google Sheets/Mailchimp.
Configurar:
- Configurações → app.smart CRM → seção Captura e proteção.
- Marque Injetar UTMs no form.
Ativado, o plugin injeta automaticamente em todo <form> da página:
<input type="hidden" name="utm_source" value="google"><input type="hidden" name="utm_medium" value="cpc"><input type="hidden" name="utm_campaign" value="blackfriday"><input type="hidden" name="gclid" value="Cj0KCQ..."><input type="hidden" name="fbclid" value="..."><!-- todos os UTMs + click IDs presentes -->Esses campos chegam junto com a submissão pro CRM (via integração dedicada do form) e também ficam disponíveis pra qualquer outro destino que o form mandar.
O identificador do evento, para não contar duas vezes
Seção intitulada “O identificador do evento, para não contar duas vezes”Quando o formulário é enviado, o plugin cunha um identificador único daquela conversão e o publica em três lugares:
window.smart2_event_id // a variável globalwindow.dataLayer.push({ event: 'smart2_conversion', smart2_event_id: ... })<input type="hidden" name="smart2_event_id"> // viaja no próprio POSTO último é o que importa para a deduplicação: o mesmo identificador chega ao servidor, e o envio por servidor reusa ele. Assim a Meta entende que o evento do navegador e o do servidor são o mesmo, e não conta dois.
Se o seu site já tem pixel próprio — por gerenciador de tags ou outro plugin —, aponte a tag de Lead para window.smart2_event_id, ou escute o evento smart2_conversion no dataLayer.
O que chega ao CRM
Seção intitulada “O que chega ao CRM”Exemplo de metadata enviado:
{ "utm_source": "facebook", "utm_medium": "cpc", "utm_campaign": "blackfriday_2026", "utm_term": null, "utm_content": "creative_v2", "click_ids": { "fbclid": "IwAR1abc...", "fbc": "fb.1.1719876543.IwAR1abc...", "fbp": "fb.1.1719876543.987654321" }, "landing_page": "https://seusite.com.br/promocao?fbclid=IwAR1abc", "referrer_url": "https://www.facebook.com/", "page_url": "https://seusite.com.br/contato", "user_agent": "Mozilla/5.0 ...", "locale": "pt_BR", "first_touch": { "utm_source": "facebook", "utm_medium": "cpc", "utm_campaign": "blackfriday_2026", "landing_page": "https://seusite.com.br/promocao?fbclid=IwAR1abc" }}O bloco de cima é o último toque com origem; o first_touch, no fim, é o primeiro. O CRM usa o primeiro apenas para semear a origem do contato quando ela ainda está vazia — depois disso, ele não é sobrescrito. É o que garante que a campanha que trouxe a pessoa não se perca meses depois.
Esses dados aparecem no contato (custom attributes) e também são usados pra:
- Meta CAPI:
fbc/fbp/fbclidviram parâmetros user_data do evento Lead - GA4:
gclidvai comogclidno eventogenerate_lead - Relatórios de funil: você consegue agrupar leads por
utm_source,utm_campaign, etc.
Atribuição em campanhas Click-to-WhatsApp
Seção intitulada “Atribuição em campanhas Click-to-WhatsApp”Caso especial: anúncios Meta que mandam direto pra WhatsApp Business (sem passar pelo site).
Quando o visitante clica no anúncio CTWA, o Meta adiciona o parâmetro ctwa_clid na URL de redirecionamento. Esse parâmetro também é capturado pelo plugin se o lead eventualmente cair no seu site WordPress depois.
Combinado com webhooks do app.smart, isso permite atribuir conversões via WhatsApp ao anúncio Meta original.
Próximos passos
Seção intitulada “Próximos passos”- Meta CAPI server-side — usar
fbc/fbpcapturados - Google Analytics 4 — usar
gclidcapturado - Formulários suportados — onde as UTMs vão parar