Kamran Arshad
Notas de campo  /  Snapchat

Eventos de compra do Snapchat não disparam: a sequência de diagnóstico

Se seu Snap Pixel carrega mas o PURCHASE nunca aparece no Gerenciador de Eventos, a causa quase sempre é uma de seis: nome do evento em minúsculas, transaction_id ausente, pixel ausente da página de confirmação real, um redirecionamento de pagamento externo quebrando a sessão, um checkout de página única reinicializando o pixel ou eventos sendo eliminados pela desduplicação com um envio da API de Conversões.

Siga nessa ordem. As três primeiras explicam a maior parte do que eu encontro.

Onde um evento de compra do Snapchat morre A jornada do cliente do clique no anúncio até o Gerenciador de Eventos do Snapchat, com as seis causas de falha marcadas abaixo da etapa em que cada uma ocorre: reinicialização do pixel no checkout, perda de sessão no gateway de pagamento, nome do evento em minúsculas, ID de transação ausente e pixel ausente na página de confirmação, e desduplicação no Snapchat. A JORNADA ONDE QUEBRA Clique no anúncio Snapchat Produto / carrinho seu site Checkout seu site Gateway de pagamento sai do seu domínio Confirmação o evento dispara Gerenciador de Eventos Snapchat 05 Pixel reinicializado 04 Redirecionamento 01 Minúsculas 02 Sem transaction_id 03 Pixel ausente 06 Desduplicado
A página de confirmação é onde quase tudo dá errado. Três das seis causas atacam no último passo, que também é o menos testado, porque testá-lo direito significa gastar dinheiro de verdade.

Escreve-se muito menos sobre rastreamento no Snapchat do que na Meta ou no Google, então quando ele quebra você está praticamente sozinho. Os artigos que existem costumam ser de empresas que vendem um produto de rastreamento e param em "instale nosso app". Esta é a sequência que eu realmente sigo, na ordem em que sigo, e por que nessa ordem.

Primeiro: confirme que o evento realmente não está chegando

Antes de mudar qualquer coisa, descubra se o evento está ausente ou só atrasado. Duas verificações, sessenta segundos.

Verifique a rede, não o painel. Abra a página de confirmação no Chrome, abra o DevTools (F12), vá para a aba Network e filtre por tr.snapchat.com. Faça uma compra de teste real. Se você vê sair uma requisição com o ID do seu pixel e o nome do evento, o navegador está fazendo a parte dele e o problema está mais adiante: relatório, desduplicação ou atribuição. Se nada sai, o problema está na página.

A extensão de navegador Snap Pixel Helper faz o mesmo com uma interface mais amigável e também te diz se o pixel está instalado. Eu uso a aba Network porque ela mostra o payload exato, e é ali que geralmente está a resposta.

Como uma sequência saudável de eventos do Snapchat aparece na aba Network Um painel de rede do DevTools filtrado por tr.snapchat.com, com quatro requisições em ordem: PAGE_VIEW, VIEW_CONTENT, ADD_CART e PURCHASE, cada uma com status 200. A linha PURCHASE está destacada como a que precisa estar presente e conter um ID de transação. Network tr.snapchat.com 4 requisições EVENTO STATUS DISPARA EM PAGE_VIEW 200 todas as páginas VIEW_CONTENT 200 página de produto ADD_CART 200 adicionar ao carrinho PURCHASE 200 página de confirmação ← precisa ter transaction_id
Se as três primeiras aparecem e a quarta não, o problema está na página de confirmação. Se nenhuma aparece, o pixel não está instalado onde você pensa.
Dê tempo antes de entrar em pânico

Os relatórios do Gerenciador de Eventos não são instantâneos. Antes de concluir que um evento está faltando, espere algumas horas e olhe de novo. Já vi gente reescrever um checkout que funcionava porque olhou um painel noventa segundos depois de um pedido de teste.

As seis causas, em ordem

01

O nome do evento está em minúsculas

Os eventos padrão do Snapchat são em maiúsculas: PURCHASE, ADD_CART, PAGE_VIEW, START_CHECKOUT. Se você envia purchase, ele não é reconhecido como evento padrão. A parte traiçoeira é que ele ainda pode disparar e aparecer em algum lugar: só não é tratado como a conversão padrão, então a otimização das campanhas e os relatórios se comportam como se nada tivesse acontecido.

Esta é a causa número um porque produz exatamente o sintoma que as pessoas descrevem, "o pixel dispara mas o Gerenciador de Eventos não mostra nada", e porque copiar uma implementação da Meta é natural. A Meta usa Purchase. O Snapchat não.

✗ Copiado da Meta
{
  event: "Purchase",
  price: 24.00,
  currency: "USD"
}
✓ O que o Snapchat espera
{
  event: "PURCHASE",
  price: 24.00,
  currency: "USD",
  transaction_id: "1047"
}
A verificaçãoNa aba Network, leia o nome do evento no payload da requisição. Ele precisa ser exatamente PURCHASE. Aqui, maiúsculas e minúsculas não são um detalhe estético.
02

Nenhum transaction_id é enviado

Sem um transaction_id, o Snapchat não consegue distinguir um segundo pedido real do mesmo cliente recarregando a página de confirmação. A Snap documenta uma janela de desduplicação de 30 dias no transaction_id, contra 48 horas no client_dedup_id.

A falha funciona nas duas direções, e é por isso que está tão no alto. Se você o omite, os recarregamentos inflam a contagem de compras. Se envia um valor que não é realmente único por pedido (um ID de carrinho, checkout ou sessão), pedidos legítimos são fundidos em um e desaparecem. O segundo caso parece exatamente "meus eventos não disparam".

A verificaçãoFaça dois pedidos de teste. Confirme que o transaction_id é diferente entre eles e que corresponde ao número de pedido que sua loja realmente atribui.
03

O pixel não está na página que realmente confirma o pedido

Quase todo mundo instala o pixel no site inteiro e supõe que a página de confirmação herda. Muitas vezes não herda. Checkouts hospedados, páginas de status do pedido e fluxos de upsell pós-compra costumam ser renderizados fora do tema ou template que contém o código de rastreamento.

Um ponto de atenção: se você usa um upsell pós-compra, a página em que o cliente cai logo depois de pagar pode não ser a que você considera a página de agradecimento.

A verificaçãoFaça um pedido real. Na página em que cair, veja o código-fonte e procure o ID do seu pixel. Não deduza pelo tema: olhe a página em que o cliente realmente está.
04

Um redirecionamento de pagamento externo quebra a sessão

Quando o checkout passa para um gateway externo e devolve o cliente a uma página de pedido recebido, essa ida e volta pode quebrar a sessão do navegador da qual o pixel depende. A compra é concluída, o cliente vê a confirmação e o evento nunca chega ao Snapchat, ou chega sem os identificadores necessários para atribuí-lo.

É aqui que uma configuração só de navegador deixa de bastar. O rastreamento server-side pela API de Conversões é a solução duradoura, porque o evento sai do seu servidor e nunca depende de sobreviver a um redirecionamento.

A verificaçãoSeu fluxo de pagamento sai do seu domínio? Se sim, trate o rastreamento só pelo navegador como "tentativa" e planeje a CAPI.
05

Um checkout de página única reinicializa o pixel

Em aplicações de página única, se a inicialização do pixel roda a cada visualização de página virtual, o estado do pixel é zerado toda vez. Os dados de correspondência avançada coletados antes no fluxo se perdem, e o evento de compra chega sem os identificadores que o tornam útil: pobre, mal correspondido e às vezes sem atribuição.

O evento dispara. Só não leva o que precisa, e é por isso que é fácil confundi-lo com "funcionando".

A verificaçãoObserve a aba Network durante todo o checkout. A inicialização deve acontecer uma vez. Os eventos devem disparar muitas vezes.
06

A desduplicação engole o evento

Se você usa o pixel e a API de Conversões (como deveria), o Snapchat desduplica pelo client_dedup_id (janela de 48 horas) ou pelo transaction_id (30 dias). Dois eventos com o mesmo identificador são contados uma vez, por definição.

Vira problema quando navegador e servidor discordam sobre qual é esse identificador. Se a correspondência estiver errada, ou você conta tudo em dobro ou perde um lado em silêncio. Segundo a Snap, eventos que não são de compra devem corresponder pelo client_dedup_id e eventos de compra pelo transaction_id, e o principal: o valor precisa ser igual em todo caminho que envia aquele evento.

Janelas de desduplicação do Snapchat comparadas Gráfico de barras horizontais num eixo comum de 30 dias. O transaction_id desduplica por 30 dias. O client_dedup_id desduplica por 48 horas, cerca de um quinze avos desse período. transaction_id 30 dias client_dedup_id 48 horas dia 0 7 14 21 30 JANELA DE DESDUPLICAÇÃO
Por que o identificador escolhido importa. Uma compra desduplicada pelo transaction_id fica protegida por 30 dias. Pelo client_dedup_id, a proteção expira em 48 horas, e é por isso que a Snap associa as compras ao transaction_id e todo o resto ao client_dedup_id.
A verificaçãoPara um pedido, anote o identificador que o navegador enviou e o que o servidor enviou. Eles precisam ser idênticos. Não parecidos: idênticos.

De onde vêm meus números

Não tenho uma grande amostra de clientes no Snapchat e não vou fingir que tenho. O que tenho é uma loja que operei de ponta a ponta, a minha, em que o rastreamento funcionava, e esse é o único motivo pelo qual posso falar do que uma configuração saudável do Snapchat produz.

AlphaMart: minha própria loja, não um cliente

Snap Ads Manager · 4 nov 2023 – 7 mai 2024
Investimento em anúncios
$1,452
Compras
1,034
Custo por compra
$1.40
ROAS
5.69×

Um contexto importante, senão esses números me favorecem: 5,69× sobre US$ 1.452 são cerca de US$ 8.262 de receita rastreada em 1.034 pedidos, um ticket médio de aproximadamente US$ 8. Era um produto barato. Um custo por compra de US$ 1,40 é um resultado muito diferente com ticket médio de US$ 8 do que com um de US$ 80, e quem cita um CPA sem o ticket médio ao lado está te mostrando só metade do número.

Os dados são de um período que terminou em maio de 2024. Eu os dato em vez de apresentá-los como atuais.

✓ Captura de tela sem edição Snapchat Ads Manager da Alpha Mart mostrando US$ 1.452,18 investidos, 11.076.872 impressões pagas, 242.131 cliques, taxa de cliques de 2,19%, 1.034 compras e custo por compra de US$ 1,40, de 4 de novembro de 2023 a 7 de maio de 2024.
O que esta captura de tela prova e o que não prova. Ela confirma o investimento (US$ 1.452,18), o número de compras (1.034), o custo por compra (US$ 1,40) e o período. Também mostra 11.076.872 impressões e 242.131 cliques, com taxa de cliques de 2,19%. Ela não mostra o ROAS: esse número vem da receita da loja, não desta tela, e você deveria tratar do mesmo jeito qualquer número que não vê na imagem.

O que torna essas 1.034 compras importantes para este artigo não é o ROAS. É que uma loja enviando, nesse volume, um evento PURCHASE limpo, com o nome correto e bem desduplicado, te dá uma referência confiável de como "funcionando" se parece, e deixa óbvio quando algo parou.

O que eu não posso te dizer

Dois limites honestos, porque um artigo que não admite nenhum geralmente esconde alguns.

Não posso te dar uma classificação de frequência baseada numa grande amostra. A ordem acima reflete um pequeno número de contas mais o que os tipos de falha implicam logicamente: um nome de evento em minúsculas sempre quebra os relatórios, então ele vai para o topo, independentemente de quantas vezes eu mesmo o vi. Trate a ordem como uma sequência de busca sensata, não como estatística.

A interface do Snapchat muda. Os caminhos de menu ficam desatualizados rápido, e é por isso que as verificações acima se apoiam na requisição de rede e no payload, e não em onde um botão está hoje. O payload é o que é realmente verdade.

Em resumo

  1. Abra a aba Network, filtre por tr.snapchat.com e faça um pedido de teste.
  2. Confirme que o nome do evento é exatamente PURCHASE, em maiúsculas.
  3. Confirme que o transaction_id está presente e é único por pedido.
  4. Confirme que o pixel está na página em que o cliente realmente cai.
  5. Se o checkout sai do seu domínio, planeje a API de Conversões.
  6. Se você usa pixel e CAPI, confirme que o identificador de desduplicação é exatamente igual nos dois lados.

Se você passou nas seis verificações e o evento ainda não chega, o problema geralmente não é o pixel: é que a página que você está testando não é a que seus clientes alcançam. Volte e faça uma compra real com dinheiro de verdade, num celular, a partir de um clique num anúncio. Pedidos de teste por um link de homologação pulam justamente as partes que quebram.

Não sabe qual das seis é?

Me envie a URL da sua loja e eu te digo o que seu rastreamento está fazendo. Para começar não é preciso acesso à conta, só o link.

Peça uma auditoria gratuita de rastreamento →