Pular para o conteúdo
Mídia paga22 de agosto de 2026 · 8 min de leitura

action_source: o parâmetro que a tela promete e o envio ignora

Ele diz ao Meta onde a conversão aconteceu, e influencia atribuição e otimização. Numa auditoria recente, 100% dos eventos de uma conta saíam como servidor — inclusive os que aconteceram no navegador da pessoa.


O action_source responde ao Meta uma pergunta simples: onde essa conversão aconteceu? Site, aplicativo, telefone, loja física, conversa. É um campo obrigatório na API de Conversões, e é dos poucos que mudam como o Meta trata o evento — não só se ele é aceito.

Também é um dos campos mais silenciosamente errados que existem, por um motivo que não tem nada a ver com o Meta.

O que ele muda de verdade

ValorQuando usarO que muda
websiteA pessoa estava no seu site quando aconteceuPermite casar com o clique e usar fbc e fbp
appAconteceu dentro do aplicativoAtribuição pelo identificador do app
chatFechou por WhatsApp, Messenger ou Instagram DirectConecta com campanhas de mensagem
phone_callFechou por telefoneConversão offline, sem sinal de navegador
physical_storeVenda em lojaEntra na medição de tráfego de loja
system_generatedGerado pelo seu sistema, sem ação direta da pessoaRenovação de assinatura, por exemplo
otherNenhum dos anterioresO Meta aceita, mas perde contexto

O caso mais consequente é website contra os demais. Quando o evento é declarado como de site, o Meta espera cookies de navegador e usa fbc e fbp para atribuir com precisão. Quando não é, esses campos perdem peso — e você mandou o dado à toa.

O defeito que a auditoria encontrou

Numa auditoria dos payloads realmente entregues por uma integração, o action_source vinha como servidor em 100% dos eventos. Inclusive nas visitas de página e nos cadastros — que aconteceram, por definição, no navegador da pessoa.

A causa não era descuido de quem configurou. A tela oferecia o seletor, gravava a escolha no destino, e o código que monta o envio lia o valor de outro lugar, onde ninguém escrevia. O seletor funcionava. Ele só não chegava a lugar nenhum.

É uma família inteira de defeito, e ela não aparece em teste: a interface promete um comportamento, o envio ignora, e o relatório do Meta continua verde porque o evento foi aceito.

Na mesma auditoria, o campo de recusa de uso de dados tinha o mesmo problema: oferecido na tela, zero ocorrências no código que envia. O padrão é sempre esse — a opção existe, o efeito não.

Como conferir o seu em dois minutos

Não confie na tela de configuração. Olhe o corpo que saiu. Toda ferramenta séria guarda os payloads entregues; se a sua não guarda, isso já é a resposta.

o que procurar no payload entregue
{
  "event_name": "Lead",
  "action_source": "website",     // <- confira ESTE valor
  "event_source_url": "https://...",  // obrigatório quando é website
  "user_data": { "em": ["..."], "fbc": "fb.1....", "fbp": "fb.1...." }
}

Duas conferências rápidas resolvem quase tudo: se o valor é website, tem de existir event_source_url; e se o evento aconteceu no navegador, fbc e fbp deveriam estar presentes na maioria dos envios. Um evento declarado como de site, sem URL e sem cookie, é um evento que está mentindo sobre a própria origem.

O caso da renovação

Existe um uso do system_generated que quase ninguém aproveita: a renovação de assinatura. Ela não é uma ação da pessoa, não tem clique, não tem navegador, e mandá-la como website enfraquece a média da conta inteira.

Mandar renovação como venda nova é um erro maior ainda, mas esse merece texto próprio — ele infla o retorno da campanha com dinheiro que ela não trouxe.

No CrazyLeads, o action_source é resolvido a partir da origem real do evento, e o payload entregue fica guardado e visível na auditoria de entregas — que é onde você confere o que saiu, não o que foi configurado.

Comece a medir o que realmente vira venda

Crie sua conta grátis, conecte a primeira fonte e veja a primeira timeline de lead ainda hoje. Sem cartão.