Sem o GA4 configurado corretamente, você não sabe onde o funil quebra. Sei disso porque a primeira coisa que faço ao entrar em um projeto de CRO é olhar o GA4 — e na maioria dos casos encontro eventos faltando, parâmetros incorretos ou dados de purchase inconsistentes com o painel da plataforma.
A diferença entre um GA4 bem configurado e um GA4 "instalado" é enorme. Um GA4 instalado te diz quantas sessões você teve. Um GA4 bem configurado te mostra exatamente onde os usuários abandonam, qual canal converte melhor, qual produto tem mais add_to_cart mas menos purchase, e se o frete revelado no checkout é a principal causa de abandono.
Os 8 eventos essenciais do funil de compra
O Google define um conjunto de eventos de e-commerce recomendados para o GA4. Esses são os essenciais para ter o funil completo:
| Evento | Quando dispara | Parâmetros obrigatórios |
|---|---|---|
| view_item_list | Visualização de lista/prateleira | items[], item_list_name |
| view_item | Página de produto (PDP) | items[], currency, value |
| add_to_cart | Clique em "Adicionar ao carrinho" | items[], currency, value |
| view_cart | Visualização do carrinho | items[], currency, value |
| begin_checkout | Início do checkout | items[], currency, value |
| add_shipping_info | Preenchimento do endereço | items[], shipping_tier, value |
| add_payment_info | Seleção do pagamento | items[], payment_type, value |
| purchase | Pedido finalizado | transaction_id, value, tax, shipping, items[] |
Regra de ouro: nunca enviar um evento sem os parâmetros obrigatórios. Um purchase sem transaction_id é inválido — você perde a capacidade de deduplicar pedidos e reconciliar receita.
Parâmetros de item: onde a qualidade dos dados realmente importa
Cada evento carrega um array items[]. A qualidade dos parâmetros dentro desse array determina a granularidade da análise de produto:
items: [{
item_id: "SKU-001", // obrigatório
item_name: "Tênis Nike", // obrigatório
item_category: "Calçados",
item_brand: "Nike",
item_variant: "Preto 42",
price: 299.90, // obrigatório
quantity: 1, // obrigatório
index: 3 // posição na lista (para view_item_list)
}]
Sem price e quantity, você não consegue calcular receita potencial por add_to_cart. Sem item_category, os relatórios de produto ficam planos — você vê o SKU mas não consegue agrupar por categoria para identificar quais linhas de produto têm pior conversão.
Como configurar via GTM
A forma mais sustentável de implementar Enhanced Ecommerce em VTEX IO é via Google Tag Manager com camada de dados (dataLayer):
- Instalar o Pixel App do GTM no VTEX IO ou configurar via
headda Store Theme - Criar uma tag GA4 de configuração com a Measurement ID da sua propriedade
- Configurar os eventos via dataLayer — no VTEX IO, os eventos de produto podem ser emitidos via app de analytics ou scripts customizados que escutam os eventos nativos da plataforma
- Criar triggers no GTM para cada evento de e-commerce
- Validar no GA4 DebugView antes de publicar
Um detalhe crítico: o evento purchase deve ser disparado apenas uma vez por pedido. Disparos duplos (por exemplo, em dois carregamentos da página de agradecimento) inflam artificialmente a receita no GA4.
Por que o rastreamento server-side é indispensável
No rastreamento client-side (via JavaScript no navegador), ad blockers, iOS ITP e Safari podem bloquear até 30–40% dos eventos. Isso significa que seu GA4 pode estar subreportando 30–40% dos pedidos reais.
Para o evento purchase, a solução é o rastreamento server-side via VTEX Order Hook — um webhook nativo da VTEX que dispara uma notificação a cada status change de pedido. Com ele:
- O evento de purchase é processado no servidor, não no navegador
- Ad blockers não têm acesso ao fluxo
- 100% dos pedidos são capturados, independente do dispositivo ou extensão do usuário
- Você consegue reconciliar o GA4 com o painel VTEX pedido a pedido
Configuro isso via Google Tag Manager Server-Side ou via script Node.js/edge function que recebe o webhook, mapeia os dados do pedido para o formato GA4 e envia via Measurement Protocol.
Como visualizar o funil no GA4
Com o Enhanced Ecommerce configurado, o funil aparece em dois lugares:
Relatório nativo: Monetização > Jornada de compra — mostra visualização de produto, add_to_cart, begin_checkout e purchase com a taxa de abandono entre cada etapa.
Exploração de Funil: Explorar > Exploração de Funil — mais poderoso. Permite adicionar segmentos (mobile vs desktop), comparar canais (orgânico vs pago) e ver o funil por coorte de usuários.
A Exploração de Funil com segmentação por dispositivo geralmente revela um gap brutal entre mobile e desktop — é um dos diagnósticos que mais gera insight acionável nos projetos em que atuo.
Trabalho com GA4 e GTM em lojas VTEX há anos. Se quiser uma análise do estado atual do seu rastreamento, conheça o serviço de especialista GA4 e GTM ou fala comigo diretamente.