Origem vazia no CRM: por que o formulário não guarda a UTM e como corrigir
Publicado em pela equipe do UTM Builder, na Limner.
O campo oculto só chega preenchido se alguma coisa colocar o valor nele na hora do envio. O preenchimento pela URL lê a página onde o formulário está, então quem chegou com UTM na página A e converteu na página B chega sem origem. A correção é guardar as UTMs na primeira visita e preencher os campos no envio, respeitando o que cada CRM aceita.
Por que o campo chega vazio
- A pessoa navegou antes de converter. A UTM estava na URL da página de entrada, não na do formulário.
- O formulário está num iframe de outro domínio. Por segurança, o navegador não deixa um script da sua página mexer nos campos dentro dele.
- O nome do campo não bate com o nome interno da propriedade no CRM.
- O script roda antes de o formulário existir na página e não encontra os campos.
- O formulário é de um tipo que não aceita campo oculto.
Cookie de primeira visita
Na página de entrada, se a URL tem utm_*, grave os valores em cookie ou localStorage. Nas páginas seguintes, não sobrescreva com vazio. No envio, copie os valores para os campos ocultos. Decida antes se você quer a primeira origem ou a última e use a mesma regra em todos os formulários. Sem essa decisão, o mesmo lead pode aparecer com origens diferentes conforme o formulário que preencheu.
utm_source=meta | utm_medium=cpc | utm_campaign=lancamento | gravado em 10/10, preenchido no envio em 12/10
O que cada CRM documenta
RD Station Marketing. Na API de conversão (POST https://api.rd.services/platform/conversions, com event_type igual a CONVERSION), a origem vai em quatro campos: traffic_source, traffic_medium, traffic_campaign e traffic_value (o term). A documentação diz que traffic_source pode ser o valor do cookie __trf.src, em base64 ou não, ou a UTM de origem. Se você mandar o cookie, os outros três campos devem ir vazios. Se o seu formulário manda a conversão pela API sem nenhum desses campos, a origem não vai junto.
HubSpot. A base de conhecimento diz que a query string preenche campos, inclusive ocultos, pelo nome interno da propriedade (Settings > Properties) e que a query string estática vem da URL da página onde o formulário está. O formulário legado incorporado em site externo fica num iframe. A opção Set as raw HTML form, na aba Style & preview do editor, renderiza o formulário como HTML na sua página, sem iframe, e exige Marketing Hub ou Content Hub Professional ou Enterprise. Para a análise do formulário, o código de rastreamento da HubSpot precisa estar na página externa.
ActiveCampaign. Campo oculto é só texto e só funciona em formulário inline: não entra em floating box, floating bar nem modal. A central sugere alterar a tag de personalização do campo para usar sublinhado (por exemplo %UTM_CAMPAIGN%), assim ela bate com o parâmetro utm_campaign da URL do formulário. Para valor dinâmico no código de incorporação, é preciso código próprio.
Pipedrive. A página de novidades de agosto de 2026 anunciou, nos Web Forms, a captura automática de UTM em campos ocultos e a leitura de cookies, como o client ID do Google Analytics, também em campos ocultos. Os campos de origem do negócio (source_origin, com o valor Web forms, e source_channel) dizem por onde o dado entrou, não a campanha.
Kommo. A documentação para desenvolvedores diz que os campos de UTM são criados com a conta e aparecem na seção Estatísticas do card do lead. Eles são do tipo tracking_data. Para gravar por integração, consulte GET /api/v4/leads/custom_fields, pegue os campos desse tipo e envie os valores em custom_fields_values no POST /api/v4/leads.
Como testar
- Abra o site com
?utm_source=teste&utm_medium=teste&utm_campaign=teste, navegue para outra página e envie o formulário de lá. - Abra o contato no CRM e confira cada campo. Se só o primeiro passo funciona sem navegar, falta a gravação em cookie ou localStorage.
- Repita com o formulário em cada página onde ele aparece, inclusive pop-up e landing page.
Fontes oficiais
- RD Station Developers: Conversão via API Key
- HubSpot: Auto-populate form fields with a query string
- HubSpot: Set up and style a legacy form on an external site
- ActiveCampaign: How do I add a hidden field to my form?
- Pipedrive: Product updates
- Pipedrive: Lead source in deals
- Kommo Developers: Captação de leads (Incluir UTMs)