Blog
GA4 e Meta Ads mostram conversões diferentes: qual está certo?
Você abre o Meta Ads e vê 100 vendas.
Depois abre o GA4 e encontra 63.
Seu checkout registrou 81 vendas.
Qual número está certo?
Possivelmente, os três.
Isso acontece porque Meta Ads, Google Analytics e seu checkout não estão necessariamente tentando responder à mesma pergunta.
O checkout responde algo próximo de:
Quantas vendas realmente aconteceram?
O Meta Ads tenta responder:
Quantas dessas vendas podem ser atribuídas aos anúncios da Meta segundo as minhas regras?
E o GA4 tenta reconstruir:
De onde vieram as sessões e conversões que eu consegui observar e como devo atribuí-las segundo o meu modelo?
Parece uma diferença pequena.
Na prática, ela muda completamente a interpretação dos números.
Uma venda pode aparecer de formas diferentes em cada plataforma
Imagine esta jornada:
Dia 1
Instagram Ads
↓
Usuário conhece a marca
Dia 7
Google orgânico
↓
Usuário pesquisa novamente
Dia 15
Instagram orgânico
↓
Novo contato
Dia 25
Google
↓
Usuário volta ao site
Dia 30
Meta Ads — Remarketing
↓
Usuário vê o anúncio
Dia 32
Acesso direto
↓
Compra
Existe apenas uma venda.
Mas existem vários pontos de contato.
O Meta possui informações sobre algumas dessas interações.
O Google Analytics possui informações sobre outras.
Seu checkout, por sua vez, pode simplesmente saber que:
Pedido #9281
Produto: Kit Premium
Valor: R$ 897
Status: Aprovado
Cada sistema está observando uma parte diferente da mesma história.
Seu checkout normalmente é a melhor referência para saber quantas vendas aconteceram
Antes de discutir atribuição, vale separar duas perguntas.
A primeira é:
Quantas vendas aconteceram?
A segunda é:
De onde vieram essas vendas?
São problemas diferentes.
Se estamos falando de faturamento e pedidos efetivamente aprovados, normalmente faz mais sentido começar pelo sistema onde a transação realmente existe:
- checkout;
- plataforma de pagamentos;
- e-commerce;
- ERP;
- sistema de pedidos.
Se foram aprovadas 81 vendas, você teve 81 vendas.
O fato de Meta Ads mostrar 100 conversões atribuídas não cria outras 19 vendas no seu banco.
Da mesma forma, se o GA4 enxergou apenas 63, as outras 18 vendas não deixaram de existir.
Isso nos dá uma regra importante:
conversão atribuída e venda real não são necessariamente a mesma métrica.
Então por que o Meta Ads pode mostrar mais vendas?
Porque o Meta não precisa estar presente no último clique para atribuir participação em uma conversão.
Imagine:
Meta Ads
↓
Usuário conhece a marca
↓
3 dias depois
Google
↓
Site
↓
Compra
Dependendo das condições e das regras de atribuição utilizadas pela plataforma, a Meta pode reconhecer que aquele usuário teve contato com um anúncio antes da conversão e atribuir a venda à campanha.
O GA4 pode interpretar essa mesma sequência de outra forma.
Agora adicione mais canais:
Meta Ads
↓
Google
↓
E-mail
↓
Instagram
↓
Remarketing
↓
Venda
A pergunta “quem gerou essa venda?” deixou de ter uma resposta óbvia.
E cada plataforma possui dados disponíveis e modelos diferentes para respondê-la.
As plataformas não enxergam exatamente os mesmos dados
Esse é um dos pontos mais importantes para entender por que os números divergem.
Meta Ads conhece profundamente as interações que acontecem dentro do ecossistema da Meta.
O GA4 observa aquilo que chega à implementação do Analytics.
Seu checkout conhece a transação.
Nenhum desses sistemas possui necessariamente uma visão perfeita de tudo.
Imagine uma jornada assim:
Instagram
↓
Site
↓
Sai do site
↓
Google
↓
Site
↓
WhatsApp
↓
3 dias depois
Acesso direto
↓
Checkout
↓
Venda
O checkout conhece muito bem o final.
Meta conhece determinados contatos com Instagram e anúncios.
GA4 conhece os eventos que conseguiu registrar no site.
Mas a jornada real é maior do que qualquer uma dessas visões isoladas.
Janela de atribuição muda o resultado
Existe também uma questão de tempo.
Imagine que alguém clique hoje em um anúncio e compre daqui a 20 dias.
A pergunta é:
O anúncio de 20 dias atrás ainda deve receber crédito por essa venda?
Isso depende da janela de atribuição utilizada.
Agora imagine que a compra aconteça 45 dias depois.
Ou 90 dias depois.
Quanto maior o ciclo de compra, mais importante essa discussão fica.
Para uma venda direta:
Anúncio
↓
5 minutos
↓
Compra
a divergência tende a ser menos relevante.
Para uma jornada longa:
Anúncio
↓
Conteúdo
↓
Pesquisa
↓
E-mail
↓
Remarketing
↓
45 dias
↓
Compra
a escolha da janela pode alterar significativamente quais campanhas recebem crédito.
First click, last click e outros modelos também mudam a resposta
Mesmo que duas ferramentas tivessem exatamente os mesmos dados, elas ainda poderiam chegar a respostas diferentes.
Imagine:
Meta Ads
↓
Google orgânico
↓
E-mail
↓
Google Ads
↓
Venda
Pelo first click:
Meta Ads → Venda
Pelo last click:
Google Ads → Venda
Se analisarmos a jornada:
Meta Ads
→ Google orgânico
→ E-mail
→ Google Ads
→ Venda
os quatro participaram.
Então não basta perguntar:
Qual ferramenta está certa?
Precisamos perguntar também:
Qual regra cada ferramenta está usando para decidir quem recebe o crédito?
Uma mesma venda pode ser reivindicada por duas plataformas
Esse é um dos problemas mais perigosos quando analisamos performance diretamente pelos painéis das mídias.
Imagine uma única venda de R$ 1.000.
Antes da compra, o cliente interagiu com Meta Ads e Google Ads.
O Meta pode dizer:
Receita atribuída: R$ 1.000
E o Google pode dizer:
Receita atribuída: R$ 1.000
Se você simplesmente somar os dois painéis:
Meta: R$ 1.000
Google: R$ 1.000
----------------
Total: R$ 2.000
Mas o checkout diz:
Venda real: R$ 1.000
Não existem R$ 2.000.
Existe uma venda de R$ 1.000 com uma jornada na qual mais de uma plataforma participou.
É por isso que somar conversões atribuídas por diferentes plataformas pode produzir uma visão inflada da operação.
50 vendas no Meta + 50 vendas no Google não significa que você conhece as 100 vendas
Existe outra consequência desse problema que costuma causar bastante confusão.
Imagine que seu checkout tenha exatamente 100 vendas:
Vendas reais: 100
Ao abrir as plataformas, você encontra:
Meta Ads: 50 vendas atribuídas
Google Ads: 50 vendas atribuídas
É tentador pensar:
50 + 50 = 100
Logo, conhecemos a origem das 100 vendas.
Mas essa conclusão pode estar completamente errada.
As 50 vendas atribuídas pelo Meta e as 50 atribuídas pelo Google não precisam ser 100 vendas diferentes.
Elas podem ser exatamente as mesmas 50 vendas.
Por exemplo:
100 vendas reais
├── 50 vendas com jornadas observadas
│ ├── Meta participou das 50
│ └── Google participou das mesmas 50
│
└── 50 vendas sem jornada identificada
Nesse cenário:
Meta reporta: 50
Google reporta: 50
Soma aparente: 100
Mas a cobertura real que você possui pode ser:
50 de 100 vendas = 50%
As outras 50 continuam sem informação suficiente sobre aquisição.
Agora imagine números ainda maiores:
Vendas reais: 100
Meta Ads: 80
Google Ads: 60
Somar os painéis produziria:
80 + 60 = 140
Obviamente você não teve 140 vendas.
O que não é tão óbvio é quanto essas duas populações se sobrepõem.
Sem identificar as vendas individualmente, os números agregados dos dois painéis não revelam essa interseção.
E isso significa que eles também não revelam sua cobertura real.
Cobertura de tracking e atribuição são coisas diferentes
Esse ponto merece uma separação.
Imagine novamente 100 vendas reais.
Se você conseguiu relacionar 75 delas às respectivas jornadas, sua cobertura observável é aproximadamente:
75 vendas com jornada
--------------------- = 75%
100 vendas reais
Isso é uma informação diferente de dizer:
Meta atribuiu 80 vendas.
A quantidade de vendas que uma plataforma atribui a si mesma não representa necessariamente a quantidade de vendas cuja jornada você consegue reconstruir.
Uma coisa é atribuição reportada pela plataforma.
Outra é cobertura observável das suas vendas reais.
Misturar esses dois conceitos pode levar a conclusões erradas.
Você precisa rastrear 100% das vendas para tomar decisões?
Não necessariamente.
O ideal técnico seria conseguir relacionar todas as vendas às respectivas jornadas.
Na prática, sistemas de tracking trabalham em um ambiente imperfeito.
Usuários podem bloquear determinados mecanismos de rastreamento.
Identificadores podem ser perdidos.
Pessoas podem trocar de navegador ou dispositivo.
Algumas jornadas podem simplesmente não conseguir ser reconstruídas.
Por isso, exigir 100% de cobertura antes de considerar qualquer análise útil pode criar uma expectativa pouco realista.
Imagine:
100 vendas reais
80 vendas com jornada identificada
20 vendas sem informação suficiente
As 20 vendas sem jornada não deixam de existir.
E também não devemos inventar uma origem para elas.
Elas são simplesmente:
Origem desconhecida
Mas isso não significa automaticamente que as outras 80 perderam seu valor analítico.
Se a parcela observada for suficientemente grande e não estiver fortemente enviesada em relação ao restante das vendas, ela pode oferecer uma amostra útil do comportamento da aquisição.
Podemos descobrir, por exemplo, que entre as jornadas observadas:
- determinadas campanhas aparecem com frequência nas vendas;
- um canal participa principalmente da descoberta;
- outro aparece mais próximo da conversão;
- determinadas combinações de canais são recorrentes;
- algumas campanhas recebem muitos cliques, mas raramente aparecem em jornadas que terminam em venda;
- determinados conteúdos aparecem repetidamente antes da compra.
Isso já pode produzir informação muito mais útil do que simplesmente comparar números agregados dos painéis.
Mas 70% ou 80% de cobertura é sempre suficiente?
Não existe um percentual mágico.
Ter 80% de cobertura parece excelente, mas ainda precisamos fazer uma pergunta importante:
As vendas que conseguimos observar são razoavelmente representativas das vendas que não conseguimos?
Imagine que você consiga rastrear 80% das vendas no total, mas perca quase todas as vendas provenientes de um determinado canal.
Nesse caso, sua amostra possui um viés importante.
Por outro lado, se as perdas estiverem distribuídas de forma relativamente normal pela operação, uma cobertura parcial pode continuar oferecendo sinais muito úteis.
Portanto, o objetivo não deveria ser simplesmente perseguir:
100% ou nada
A pergunta mais útil é:
Tenho dados suficientes e suficientemente representativos para tomar esta decisão?
Isso também evita um erro comum em projetos de analytics: gastar uma quantidade enorme de energia tentando recuperar os últimos poucos pontos percentuais de cobertura sem avaliar se isso realmente mudará alguma decisão de marketing.
O desconhecido também é um dado
Uma boa análise não precisa fingir que conhece aquilo que não conseguiu observar.
Podemos ter:
100 vendas reais
├── 78 com jornada identificada
└── 22 sem atribuição confiável
Isso é muito mais saudável do que forçar as 22 vendas restantes para algum canal apenas para fechar 100%.
“Desconhecido” é uma resposta válida.
Mais importante ainda: acompanhar esse percentual ao longo do tempo ajuda a entender a qualidade da própria medição.
Se normalmente conseguimos relacionar 80% das vendas e de repente passamos a relacionar apenas 45%, talvez exista um problema de tracking que precisa ser investigado.
Assim, a cobertura passa a ser também uma métrica de saúde da coleta.
Isso significa que o ROAS do Meta está errado?
Não necessariamente.
Significa que precisamos entender o que aquele ROAS representa e, principalmente, qual parte da jornada estamos analisando.
Existe uma complicação adicional quando várias campanhas da própria plataforma participam da mesma aquisição.
Imagine uma jornada de 45 dias:
Meta Ads
Campanha de Descoberta
↓
Conteúdo orgânico
↓
Meta Ads
Campanha de Consideração
↓
Google
↓
E-mail
↓
Meta Ads
Campanha de Remarketing
↓
Venda de R$ 1.000
Existe apenas uma venda de R$ 1.000.
Mas três campanhas diferentes da Meta participaram daquela jornada.
Quando olhamos cada campanha isoladamente dentro da plataforma, podemos perder justamente essa relação.
Dependendo das regras de atribuição e da forma como os relatórios são analisados, a mesma conversão pode aparecer associada a diferentes interações ou campanhas, criando a impressão de que cada campanha possui seu próprio resultado econômico.
O risco é interpretar algo parecido com:
Campanha de Descoberta
→ participou de R$ 1.000 em receita
Campanha de Consideração
→ participou de R$ 1.000 em receita
Campanha de Remarketing
→ participou de R$ 1.000 em receita
como se isso significasse:
R$ 1.000
+
R$ 1.000
+
R$ 1.000
=
R$ 3.000 de faturamento
Mas a empresa não faturou R$ 3.000.
Ela faturou:
UMA VENDA
R$ 1.000
As três campanhas participaram da aquisição da mesma venda.
Para entender a economia real dessa jornada, uma análise possível é inverter a conta.
Em vez de perguntar individualmente:
Quanto de receita cada campanha atribuiu a si mesma?
podemos perguntar:
Quanto custaram todas as ações que participaram da aquisição desta venda?
Imagine:
Campanha de Descoberta
Custo: R$ 80
Campanha de Consideração
Custo: R$ 50
Campanha de Remarketing
Custo: R$ 70
O custo observado daquela jornada seria:
R$ 80 + R$ 50 + R$ 70
=
R$ 200
para uma venda real de:
R$ 1.000
Então, sob essa perspectiva da jornada:
Receita real: R$ 1.000
Custo das campanhas participantes: R$ 200
ROAS da jornada = 5
Isso é conceitualmente diferente de entregar os mesmos R$ 1.000 integralmente para cada campanha e calcular três retornos independentes.
E esse problema não acontece apenas entre plataformas diferentes.
Podemos ter sobreposição:
Meta × Google
mas também:
Campanha Meta A
×
Campanha Meta B
×
Campanha Meta C
e até entre diferentes anúncios, conjuntos e pontos de contato da mesma plataforma.
Quanto mais longa a jornada, maior a possibilidade de diferentes ações de marketing participarem da mesma venda.
Por isso, uma pergunta especialmente útil deixa de ser:
Qual campanha ganhou esta venda?
e passa a ser:
Quais campanhas participaram desta venda e quanto custou construir essa aquisição?
Isso não torna o ROAS apresentado pela plataforma inútil.
Ele continua sendo uma métrica importante para otimização dentro daquele ecossistema.
O cuidado está em interpretar automaticamente:
ROAS reportado por cada campanha
=
retorno financeiro independente gerado por cada campanha
quando várias dessas campanhas podem estar participando das mesmas vendas.
Para uma operação simples:
Campanha
↓
Anúncio
↓
Compra
essa diferença pode ser pequena o suficiente para não importar.
Mas em uma operação com descoberta, consideração, conteúdo, remarketing e vários pontos de contato, analisar a jornada permite enxergar algo que a campanha isolada não mostra:
o custo combinado das ações necessárias para transformar uma pessoa que ainda não estava pronta para comprar em uma venda real.
E se o GA4 mostrar menos conversões que o checkout?
Também não significa automaticamente que o GA4 está “errado”.
O GA4 depende da capacidade de observar eventos.
Existem vários motivos pelos quais uma venda real pode não aparecer corretamente em uma ferramenta de analytics:
- implementação incompleta;
- problemas de tagueamento;
- mudança de domínio;
- checkout externo;
- bloqueadores;
- consentimento;
- perda de identificadores;
- falhas no envio do evento;
- usuário retornando em outro contexto ou dispositivo.
O ponto importante é:
uma ferramenta de analytics não deveria ser tratada automaticamente como seu banco financeiro de vendas.
Se o checkout possui 81 vendas aprovadas e o GA4 registrou 63 eventos de compra, a primeira investigação deveria ser:
Por que não conseguimos observar ou relacionar as outras 18?
e não:
Será que essas 18 vendas realmente aconteceram?
Comparar Meta Ads com GA4 diretamente pode ser a pergunta errada
Quando alguém coloca os dois painéis lado a lado:
Meta Ads: 100 conversões
GA4: 63 conversões
é tentador concluir que existe um erro de 37%.
Mas essa comparação mistura problemas diferentes.
Antes de procurar o erro, precisamos saber:
- os dois estão olhando o mesmo período?
- a definição de conversão é a mesma?
- ambos estão usando a mesma data para registrar a venda?
- as janelas de atribuição são equivalentes?
- o modelo de atribuição é o mesmo?
- os eventos chegam corretamente aos dois?
- existe deduplicação?
- a venda ocorre em outro domínio?
- estamos comparando vendas reais ou conversões atribuídas?
- quantas vendas aparecem simultaneamente nas duas plataformas?
Sem responder isso, a diferença numérica sozinha diz muito pouco.
O primeiro número que eu deveria conferir é o número de vendas reais
Uma forma mais segura de começar a análise é inverter a lógica.
Em vez de começar pelos painéis de mídia:
META ADS
↓
quantas vendas?
GOOGLE ADS
↓
quantas vendas?
GA4
↓
quantas vendas?
comece pela realidade transacional:
CHECKOUT / PAGAMENTO
↓
81 vendas reais
↓
Quais jornadas resultaram nessas vendas?
Agora podemos analisar as 81 vendas.
Para cada uma delas, queremos descobrir coisas como:
Venda #9281
R$ 897
Primeiro contato:
Meta Ads
Intermediários:
Google orgânico
E-mail
Último contato:
Google Ads
Tempo até conversão:
37 dias
E algumas podem simplesmente aparecer como:
Venda #9304
R$ 597
Jornada:
não identificada
Isso não invalida as demais.
A pergunta deixa de ser:
Quantas vendas o Meta diz que fez?
e passa a ser:
Das vendas que realmente aconteceram, quais jornadas conseguimos observar e quais canais participaram delas?
Essa mudança parece pequena, mas muda completamente a forma de analisar aquisição.
É aqui que uma camada independente de atribuição faz diferença
Em uma venda direta:
Meta Ads → Checkout → Compra
talvez você não precise de nada disso.
Se praticamente toda a aquisição acontece dentro de um único canal e a conversão ocorre logo depois do clique, o próprio painel da mídia pode oferecer informação suficiente para tomar decisões.
Agora considere:
Meta Ads
↓
Instagram orgânico
↓
Google
↓
Blog
↓
E-mail
↓
Google Ads
↓
Remarketing Meta
↓
Venda 60 dias depois
Nesse cenário, confiar exclusivamente em cada plataforma para explicar a aquisição significa pedir para cada participante contar sua própria versão da história.
Uma camada independente permite começar pela conversão real e reconstruir a jornada que levou até ela.
E existe outra diferença importante: ela permite saber quais vendas estamos realmente conseguindo observar, em vez de inferir cobertura pela soma dos números apresentados por diferentes plataformas.
Como o Vestige Metrics aborda esse problema
O Vestige Metrics parte da relação entre jornada de aquisição e conversão real.
A venda recebida por uma integração não precisa existir apenas como um número agregado dentro de um painel.
Ela pode ser relacionada aos acessos que aconteceram antes.
Por exemplo:
VENDA #9281
R$ 897
↓
Jornada de 37 dias
↓
Meta Ads
↓
Google orgânico
↓
E-mail
↓
Google Ads
↓
Venda
Isso permite analisar diferentes perspectivas sem precisar fingir que apenas um ponto da jornada existiu.
Podemos perguntar:
- quem iniciou a aquisição?
- qual foi o último contato?
- quais canais participaram no meio?
- quanto tempo levou até a venda?
- quais campanhas aparecem em jornadas que convertem?
- quantas vendas reais tiveram participação de determinado canal?
- qual percentual das vendas possui uma jornada identificada?
- quantas vendas ainda permanecem sem informação suficiente?
A ideia não é decidir que Meta ou GA4 estão “errados”.
Também não é prometer que todas as jornadas serão conhecidas perfeitamente.
É possuir uma referência independente para entender o que conseguimos observar antes das conversões reais, qual é a cobertura dessa informação e quais padrões aparecem nessas jornadas.
Então qual está certo: GA4 ou Meta Ads?
Se a pergunta for:
Quantas vendas realmente aconteceram?
comece pelo sistema onde a transação efetivamente aconteceu.
Se a pergunta for:
Quantas vendas a Meta atribuiu às minhas campanhas?
olhe o Meta Ads.
Se a pergunta for:
Como o GA4 atribuiu as conversões que conseguiu observar?
olhe o GA4.
E se a pergunta for:
Qual foi a jornada dos clientes que compraram e quais canais participaram dela?
então você precisa relacionar as conversões reais aos pontos de contato anteriores.
Não é necessário fingir que conhece 100% das jornadas para começar a aprender com elas.
Uma parcela das vendas pode continuar sem atribuição.
O importante é conhecer sua cobertura, entender possíveis vieses e ter uma amostra suficientemente representativa para a decisão que você quer tomar.
E, principalmente, não confundir:
Meta: 50 vendas
+
Google: 50 vendas
com:
100 vendas diferentes identificadas
As mesmas vendas podem estar presentes nos dois grupos.
Da mesma forma, várias campanhas dentro da própria Meta podem ter participado da mesma venda.
Por isso, quando GA4 e Meta Ads mostram números diferentes, a pergunta mais útil normalmente não é:
Qual deles está errado?
É:
O que exatamente cada número está medindo, quais vendas estão por trás dele e quanto essas populações se sobrepõem?
Quando conseguimos responder isso, a divergência deixa de parecer um defeito misterioso.
Ela passa a revelar a diferença entre vendas reais, cobertura de tracking e atribuição — três coisas que parecem iguais quando olhamos apenas para os números dos painéis, mas que representam problemas completamente diferentes.