Na czym to polega w sklepie
Custom Event odpala się, gdy dataLayer.push zawiera klucz event o zadanej nazwie (np. add_to_cart, purchase). To preferowany wzorzec dla ecommerce z kontrolowaną strukturą danych.
Przykład ze sklepu internetowego
Po dodaniu produktu do koszyka front wysyła zunifikowany push:
// Front sklepu (po sukcesie API koszyka)
dataLayer.push({ ecommerce: null }); // wyczyść poprzedni stan
dataLayer.push({
event: 'add_to_cart',
ecommerce: {
currency: 'PLN',
value: 149.99,
items: [{ item_id: 'SKU-42', item_name: 'Kurtka', price: 149.99, quantity: 1 }]
}
});
// GTM: Trigger Custom Event - event equals add_to_cart
// Tag GA4 Event mapuje pola ecommerce.*
Co zrobić po stronie biznesu
- Zawsze czyść ecommerce przed nowym push - GA4 dostaje wtedy świeżą transakcję.
- Nazwa eventu w pushu = nazwa w triggerze - literówka = brak danych w raportach.
- Dokumentuj kontrakt dataLayer dla devów - jeden plik JSON Schema lub tabela w wiki.
W skrócie
Custom Event to standard w GTM ecommerce. Front pushuje dane, GTM mapuje je na tagi bez zmian w kodzie przy każdej kampanii.