Use parâmetros no nível do evento para descrever a transação/ação como um todo: transaction_id, moeda, valor, frete e imposto. Use cada objeto na matriz items para descrever produto, variante, preço unitário, quantidade, marca e categoria. Assim, receita total não é repetida como se pertencesse a cada item.
Exemplo de compra com dois itens
O exemplo contém uma camiseta azul e uma caneca. Valor dos itens: (R$ 80 x 1) + (R$ 25 x 2) = R$ 130. Frete e imposto permanecem em seus parâmetros de evento.
gtag('event', 'purchase', {
transaction_id: 'PED-9281',
currency: 'BRL',
value: 130.00,
shipping: 12.00,
tax: 0.00,
items: [
{
item_id: 'CAM-AZ-M',
item_name: 'Camiseta azul',
item_variant: 'Azul / M',
price: 80.00,
quantity: 1
},
{
item_id: 'CANECA-01',
item_name: 'Caneca',
price: 25.00,
quantity: 2
}
]
});
A moeda deve acompanhar value. Cada variante/SKU precisa ser representada com o identificador que sua loja usa; não copie um total de pedido para item.price. O evento purchase deve ser disparado uma vez por pedido e transaction_id deve ser estável/único. Campos vazios devem ser omitidos, não preenchidos com valores inventados.
Como decidir e conferir
- Preço, quantidade, ID e variante do produto: objeto dentro de items.
- Valor agregado, moeda e ID de pedido: parâmetros do evento.
- Para visualizar item ou adicionar ao carrinho: evento recomendado correspondente e itens afetados.
- Para estorno: evento refund com transaction_id e itens/quantidades devolvidos; não marque venda positiva como se fosse estorno.
Use Preview do GTM/Tag Assistant e DebugView para inspecionar um pedido de teste. Compare o total recebido no data layer com o carrinho, valide a soma de preço x quantidade e confira a moeda. Se a matriz items sair no topo (fora do ecommerce), a implementação precisa usar os parâmetros conforme a documentação de ecommerce do GA4. Não use dados pessoais de compradores para testar.
Fontes: medição de ecommerce no GA4 e validação da implementação. Veja o hub de métricas.