In deze blog leg ik je uit (1) wat e-commerce tracking is, (2) welke acties je kunt meten in GA4, (3) wat de verschillen zijn tussen e-commerce tracking in GA4 en UA, (4) hoe je e-commerce tracking kunt instellen in GA4 met behulp van Google Tag Manager.
Inhoudsopgave:
1. Wat is e-commerce tracking?
Wanneer je een webshop hebt dan wil je uiteraard ook meten hoeveel mensen een order plaatsen, wat de orderwaarde is, welke producten mensen bestellen, welke categorieën goed lopen, waar mensen in het bestelproces afhaken, etc.
Het bijhouden van deze acties en het verzamelen van data gerelateerd aan het koopproces in Google Analytics noemen we e-commerce tracking. E-commerce tracking is nauw verwant aan event-tracking, maar het verschil is dat (1) de acties die binnen e-commerce tracking vallen allemaal betrekking hebben op het koopproces en (2) je bij deze acties e-commerce data (productgegevens en bedragen) meestuurt.
2. Welke acties kun je meten in GA4?
Er zijn momenteel 14 e-commerce acties die je kunt gebruiken om inzicht te krijgen in de effectiviteit van jouw webshop.
In onderstaande tabel zie je welke acties je kunt meten, hoe deze acties heetten in Universal Analytics en waarvoor de actie toegepast kan worden.
GA4 actie | UA actie | Omschrijving |
view_item_list | impressions | Wanneer iemand een productoverzicht ziet. |
select_item | click | Wanneer iemand een product selecteert binnen het overzicht. |
view_item | detail | Wanneer iemand een productpagina bezoekt. |
add_to_cart | add | Wanneer iemand een product toevoegt aan het winkelwagentje. |
remove_from_cart | remove | Wanneer iemand een product verwijdert uit het winkelwagentje. |
view_cart | Bestond niet in UA* | Wanneer iemand het winkelwagentje bekijkt. |
add_to_wishlist | Bestond niet in UA* | Wanneer iemand een product toevoegt aan een wishlist. |
begin_checkout | checkout** | Wanneer iemand begint met afrekenen. |
add_shipping_info | checkout** | Wanneer iemand een verzendoptie heeft gekozen. |
add_payment_info | checkout** | Wanneer iemand een betaaloptie heeft gekozen. |
purchase | purchase | Wanneer iemand een bestelling heeft geplaatst. |
refund | refund | Wanneer iemand een bestelling heeft geannuleerd. |
view_promotion | promoView | Wanneer iemand een promotie heeft bekeken. |
select_promotion | promoClick | Wanneer iemand een promotie heeft geselecteerd. |
* Twee nieuwe acties:
In bovenstaand overzicht zie je dat er twee nieuwe acties (‘view_cart’ en ‘add_to_wishlist’) zijn toegevoegd in GA4.
** Aangepaste checkout acties:
In Universal Analytics kon je het betaalproces in kaart brengen door middel van de checkout actie. Deze actie kon je meerdere keren doorsturen en per keer kon je een ‘step’ en ‘option’ meesturen waardoor je verschillende stappen in het betaalproces kon meten. In GA4 kun je het betaalproces middels drie vaste events meten: begin_checkout, add_shipping_info en add_payment_info.
3. Verschillen tussen e-commerce tracking in GA4 en UA.
In dit hoofdstuk zal ik de verschillen tussen e-commerce tracking in GA4 en UA toelichten:
3.1. Andere acties
Zoals in hoofdstuk 2 al toegelicht zijn er een aantal acties toegevoegd / hernoemd.
3.2. Van products naar items
Bij alle e-commerce events kun je een lijst met producten meesturen. In UA gebruikte je hiervoor de ‘products’ array. In GA4 gebruik je hiervoor de ‘items’ array.
GA4 parameter | UA parameter | Omschrijving |
item_id | item | ID/SKU van het product. Verplicht. |
item_name | name | Naam van het product. Verplicht. |
item_list_name | list | Naam van de productlijst. |
item_list_id | Bestond niet in UA | ID van de productlijst. |
index | list_position | Positie van het product in de productlijst. |
item_brand | brand | Merk van het product. |
item_category | category* | Product categorie niveau 1 (hoofdcategorie). |
item_category2 | category* | Product categorie niveau 2 (subcategorie) of een alternatieve categorie. |
item_category3 | category* | Product categorie niveau 3 of een alternatieve categorie. |
item_category4 | category* | Product categorie niveau 4 of een alternatieve categorie. |
item_category5 | category* | Product categorie niveau 5 of een alternatieve categorie. |
item_variant | variant | Naam of omschrijving van de variant. |
affiliation | Bestond niet in UA | De leverancier / winkel / locatie waardoor het product wordt geleverd. |
discount | Bestond niet in UA | De waarde van de kortingen gerelateerd aan het product. |
coupon | coupon | Eventuele kortingsbonnen gerelateerd aan het product. |
price | price | De prijs van het product. |
currency | Bestond niet in UA | Valuta van de prijs die wordt doorgestuurd. |
quantity | quantity | Aantal stuks. Moet een integer (geheel getal) zijn. |
*In GA4 kun je de categorie van een product opdelen in 5 lagen middels vijf losse parameters. In UA deed je dit door in een parameter de 5 categorie levels mee te geven, gescheiden met een / (bijvoorbeeld: Hoofdcategorie/Subcategorie/Subsubcategorie).
3.3. Vernieuwde promotionele data
GA4 parameter | UA parameter | Omschrijving |
promotion_id | id | De ID van de promotie die je wilt meten. |
promotion_name | name | De naam van de promotie die je wilt meten. |
creative_name | creative | De naam of omschrijving van de gebruikte ‘creative’ (afbeelding / video). |
creative_slot | position | De naam van de promotionele advertentieruimte. |
location_id | Bestond niet in UA | De ID van de locatie waar de promotie wordt getoond. |
4. Handleiding e-commerce tracking voor GA4 via GTM
Wat je wel kunt verwachten van deze handleiding:
In deze handleiding leg ik je per actie uit:
- Wanneer je de betreffende actie moet uitvoeren.
- Welke data je moet/kunt doorsturen naar Google Tag Manager.
- Hoe het script er uit ziet om de data door te sturen naar Google Tag Manager.
- Hoe je in Google Tag Manager de juiste variabelen, trigger en tag aanmaakt.
Ik hoop dat je door middel van deze handleiding beter begrijpt welke events je kunt meten, welke parameters je moet/kunt meesturen en hoe je al deze data via GTM naar GA4 kunt sturen.
Wat je niet kunt verwachten van deze handleiding:
Wat ik je helaas niet kan uitleggen in deze blog is hoe jij in jouw situatie precies de dataLayer kunt vullen. Oftewel: hoe je de benodigde data in jouw eigen systeem ophaalt en doorstuurt naar de dataLayer. Ik kan je dus wel uitleggen welke data je moet doorsturen naar de dataLayer, maar niet waar je deze data in jouw specifieke geval vandaan kunt halen.
De reden hiervoor is dat dit sterk verschilt afhankelijk van het systeem dat je gebruikt. Wanneer jouw webshop draait op bijvoorbeeld Magento dan zal je op een andere manier de data moeten verzamelen dan wanneer je een WooCommerce shop draait. Mijn advies is daarom ook om dit samen met een developer op te pakken.
De oude UA e-commerce data gebruiken in GTM?
Had jij al netjes e-commerce tracking ingesteld via Universal Analytics en Google Tag Manager. Dan kun je in principe zonder wijzigingen in de code al een groot deel van de benodigde data ophalen vanuit jouw huidige datalayer. Deze data kun je dan vervolgens doorsturen naar Google Analytics 4. In deze handleiding laat ik je per actie zien hoe je dit doet. Let op: mijn advies is alleen wel om de benodigde data conform de nieuwe methode door te sturen naar de dataLayer. In de toekomst wil/moet je uiteindelijk toch af van de oude structuur. Dan kun je de overstap in mijn ogen beter nu al maken.
Voorbeeld website
Mocht je het fijn vinden om tijdens het implementeren van onderstaande events een werkend voorbeeld te hebben, bekijk dan eens de voorbeeld website van Google.
Alles wat je moet weten per event:
De 14 beschikbare e-commerce acties (zie hoofdstuk 2) heb ik opgedeeld in 5 categorieën, zodat het hopelijk wat duidelijker is waarvoor je acties kunt meten:
- Categorie 1: Productweergaven
- Categorie 2: Winkelwagen
- Categorie 3: Betaalproces
- Categorie 4: Transacties
- Categorie 5: Promoties
Categorie 1: Productweergaven
Actie 1: View_item_list
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een productoverzicht ziet gebruik je het ‘view_item_list’ event. Het kan hier gaan om bijvoorbeeld een ‘categorie pagina’, een ‘slider met producten op de homepage’, ‘gerelateerde producten’, ‘up-sells in het winkelwagentje’, etc.
Soort trigger: paginaweergave
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Genegeerd indien ingesteld op item-niveau. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Genegeerd indien ingesteld op item-niveau. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro Series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld wordt item_list_id op event-niveau genegeerd. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
Probeer altijd een ‘item_list_id’ en ‘item_list_name’ mee te sturen naar het ‘view_item_list’ event. Dit kun je op event-niveau doen en op item-niveau doen. Wanneer je deze twee parameters niet meestuurt op item-niveau probeert Google Analytics terug te vallen op de event-niveau parameters ‘item_list_id’ en ‘item_list_name’. Wanneer je op item-niveau deze twee parameters wel meestuurt zal het systeem de event-niveau parameters negeren.
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “view_item_list”,ecommerce: {item_list_id: “featured_items”, // If set at item-level you can omit this parameteritem_list_name: “Featured Items”, // If set at item-level you can omit this parameteritems: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,index: 1,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”,item_list_id: “featured_items”,item_list_name: “Featured Items”},{item_id: “SKU_0194253083726”,item_name: “Apple MacBook Air”,price: 1869.00,index: 2,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Air series”,item_variant: “2022”,item_list_id: “featured_items”,item_list_name: “Featured Items”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen:
Variabele 1: DLV – ecommerce.item_list_id
- Type: Data Layer Variable: Data Layer Variable
- Data Layer Variable name: ecommerce.item_list_id
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.item_list_name
- Type: Data Layer Variable: Data Layer Variable
- Data Layer Variable name: ecommerce.item_list_name
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.items
- Type: Data Layer Variable: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce impressions array gebruiken in plaats van het aanmaken van een nieuwe items array. Hiervoor maak je de volgende variabele:
Variabele 1: DLV – ecommerce.impressions
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.impressions
- Data Layer Version: Version 2
Let op: bovenstaande variabele is dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: view_item_list
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: view_item_list
Event parameters:
Parameter name: | Value: |
item_list_id | {{DLV – ecommerce.item_list_id}} als je de item_list_id parameter op event-niveau hebt gestuurd naar dataLayer. |
item_list_name | {{DLV – ecommerce.item_list_name}} als je de item_list_name parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} of {{DLV – ecommerce.impressions}} afhankelijk van de gekozen optie. |
Triggers:
Selecteer de aangemaakte trigger.
Event 2: Select_item
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een product selecteert binnen het overzicht gebruik je het ‘select_item’ event.
Soort trigger: klik
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Genegeerd indien ingesteld op item-niveau. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Genegeerd indien ingesteld op item-niveau. |
items | Array<item> | Ja* | De producten die je wilt meesturen.
* De items-array zal naar verwachting een enkel element hebben dat het geselecteerde item vertegenwoordigt. Als er meerdere elementen zijn opgegeven, wordt alleen het eerste element in items gebruikt. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Dn |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
Voorbeeld dataLayer:
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “select_item”,ecommerce: {item_list_id: “featured_items”, //If set at item-level you can omit this parameteritem_list_name: “Featured Items”, //If set at item-level you can omit this parameteritems: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,index: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbook”,item_category5: “Pro series”,item_variant: “2020”,item_list_id: “featured_items”,item_list_name: “Featured Items”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.item_list_id
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.item_list_id
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.item_list_name
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.item_list_name
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce products array gebruiken in plaats van het aanmaken van een nieuwe items array. Hiervoor maak je de volgende variabele:
Variabele 1: DLV – ecommerce.click.products
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.click.products
- Data Layer Version: Version 2
Let op: bovenstaande variabele is dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: select_item
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: select_item
Event parameters:
Parameter name: | Value: |
item_list_id | {{DLV – ecommerce.item_list_id}} als je de item_list_id parameter op event-niveau hebt gestuurd naar dataLayer. |
item_list_name | {{DLV – ecommerce.item_list_name}} als je de item_list_name parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} of {{DLV – ecommerce.click.products}} afhankelijk van de gekozen optie. |
Triggers:
Selecteer de aangemaakte trigger.
Event 3: View_item
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een productpagina bezoekt gebruik je het ‘view_item’ event.
Soort trigger: paginaweergave
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “view_item”,ecommerce: {currency: “EUR”,value: 1229.00,items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”}]}});
You can also add promotion and item list parameters (e.g. promotion_name or item_list_name) to the items in the items array if you want to add credit to a promotion or an item list for the current action.
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce products
array gebruiken in plaats van het aanmaken van een nieuwe items array. Hiervoor maak je de volgende variabele:
Variabele 1: DLV – ecommerce.detail.products
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.detail.products
- Data Layer Version: Version 2
Let op: bovenstaande variabele is dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: view_item
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: view_item
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} of {{DLV – ecommerce.detail.products}} afhankelijk van de gekozen optie. |
Triggers:
Selecteer de aangemaakte ‘view_item’ trigger.
Categorie 2: Winkelwagen
Event 4: Add_to_cart
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een product toevoegt aan het winkelwagentje gebruik je het ‘add_to_cart’ event. Dit kan getriggerd worden door het toevoegen van een nieuw product of door het verhogen van het aantal van een bestaand product in het winkelwagentje.
Soort trigger: klik
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “add_to_cart”,ecommerce: {currency: “EUR”,value: 1229.00,items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”}]}});
You can also add promotion and item list parameters (e.g. promotion_name or item_list_name) to the items in the items array if you want to add credit to a promotion or an item list for the current action.
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce products array gebruiken in plaats van het aanmaken van een nieuwe items array. Hiervoor maak je de volgende variabele:
Variabele 1: DLV – ecommerce.add.products
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.add.products
- Data Layer Version: Version 2
Let op: bovenstaande variabele is dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: add_to_cart
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: add_to_cart
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} of {{DLV – ecommerce.add.products}} afhankelijk van de gekozen optie. |
Triggers:
Selecteer de aangemaakte ‘add_to_cart’ trigger.
Event 5: Remove_from_cart
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een product verwijdert uit het winkelwagentje gebruik je het ‘remove_from_cart’ event. Dit kan zijn wanneer iemand een product volledig verwijdert of het aantal van een product in het winkelwagentje vermindert.
Soort trigger: klik
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat. Indien ingesteld, wordt de valuta op item-niveau genegeerd.Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt.* Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “remove_from_cart”,ecommerce: {currency: “EUR”,value: 1229.00,items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce products array gebruiken in plaats van het aanmaken van een nieuwe items array. Hiervoor maak je de volgende variabele:
Variabele 1: DLV – ecommerce.remove.products
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.remove.products
- Data Layer Version: Version 2
Let op: bovenstaande variabele is dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: remove_from_cart
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: remove_from_cart
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} of {{DLV – ecommerce.remove.products}} afhankelijk van de gekozen optie. |
Triggers:
Selecteer de aangemaakte ‘remove_from_cart’ trigger.
Event 6: View_cart
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand het winkelwagentje bekijkt gebruik je het ‘view_cart’ event. Deze gebeurtenis is nieuw in GA4 en bestond nog niet in UA.
Soort trigger: paginaweergave
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “view_cart”,ecommerce: {items: [{item_id: “0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”},{item_id: “SKU_0194253083726”,item_name: “Apple MacBook Air”,price: 1869.00,quantity: 1item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Air series”,item_variant: “2022”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
GTM trigger aanmaken
Trigger type: Custom Event
Event name: view_cart
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: view_cart
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} |
Triggers:
Selecteer de aangemaakte ‘view_cart’ trigger.
Event 7: Add_to_wishlist
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een product toevoegt aan een wishlist gebruik je het ‘add_to_wishlist’ event. Deze gebeurtenis is nieuw in GA4 en bestond nog niet in UA.
Soort trigger: klik
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “add_to_wishlist”,ecommerce: {items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
GTM trigger aanmaken
Trigger type: Custom Event
Event name: view_cart
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: view_cart
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} |
Triggers:
Selecteer de aangemaakte ‘view_cart’ trigger.
Categorie 3: Betaalproces
Het betaalproces wordt in GA4 anders gemeten dan in UA. Waar je in UA werkte met het ‘checkout’ event en ‘checkout_option’ event en je aangaf in welke stap je zat, zijn er in GA4 drie vaste acties die je kunt gebruiken.
Event 8: Begin_checkout
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand begint met afrekenen gebruik je het ‘begin_checkout’ event.
Soort trigger: paginaweergave
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
coupon | string | Nee | zomerkorting2022 | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “begin_checkout”,ecommerce: {items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”},{item_id: “SKU_0194253083726”,item_name: “Apple MacBook Air”,price: 1869.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Air series”,item_variant: “2022”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.coupon
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.coupon
- Data Layer Version: Version 2
Variabele 4: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce products array gebruiken in plaats van het aanmaken van een nieuwe items array. Hiervoor maak je de volgende variabele:
Variabele 1: DLV – ecommerce.checkout.products
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.checkout.products
- Data Layer Version: Version 2
Let op: bovenstaande variabele is dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: begin_checkout
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: begin_checkout
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
coupon | {{DLV – ecommerce.coupon}} als je de coupon parameter op event-niveau hebt gestuurd naar dataLayer. |
items | {{DLV – ecommerce.items}} of {{DLV – ecommerce.checkout.products}} afhankelijk van de gekozen optie. |
Triggers:
Selecteer de aangemaakte ‘begin_checkout’ trigger.
Event 9: Add_shipping_info
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een verzendoptie heeft gekozen gebruik je het ‘add_shipping_info’ event.
Soort trigger: klik
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
coupon | string | Nee | zomerkorting2022 | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
shipping_tier | string | Nee | PostNL | Het verzendniveau (bijvoorbeeld Grond, Lucht, Volgende dag) dat is geselecteerd voor de levering van de aankoop. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “add_shipping_info”,ecommerce: {shipping_tier: “PostNL”,items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: “1229.00”,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”},{item_id: “SKU_0194253083726”,item_name: “Apple MacBook Air”,price: 1869.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Air series”,item_variant: “2022”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.coupon
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.coupon
- Data Layer Version: Version 2
Variabele 4: DLV – ecommerce.shipping_tier
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.shipping_tier
- Data Layer Version: Version 2
Variabele 5: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Je kunt de UA e-commerce ‘checkout’ en ‘checkout_option’ parameters uitlezen en omvormen tot de benodigde variabelen in Google Tag Manager. Het is lastig uit te leggen hoe je dit precies moet doen aangezien dit afhankelijk is van hoe je Enhanced Ecommerce tracking had ingesteld in UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: add_shipping_info
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: add_shipping_info
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
coupon | {{DLV – ecommerce.coupon}} als je de coupon parameter op event-niveau hebt gestuurd naar dataLayer. |
shipping_tier | {{DLV – ecommerce.shipping_tier}} |
items | {{DLV – ecommerce.items}} of een zelfgemaakte variabele waarmee je de UA parameters hebt omgevormd tot een variabele geschikt voor GA4. |
Triggers:
Selecteer de aangemaakte ‘add_shipping_info’ trigger.
Event 10: Add_payment_info
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een betaaloptie heeft gekozen gebruik je de add_payment_info event.
Soort trigger: klik
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
coupon | string | Nee | zomerkorting2022 | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
payment_type | string | Nee | iDeal | De gekozen betaalmethode. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld.
Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “add_payment_info”,ecommerce: {payment_type: “iDeal”,items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”},{item_id: “SKU_0194253083726”,item_name: “Apple MacBook Air”,price: 1869.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Air series”,item_variant: “2022”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.coupon
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.coupon
- Data Layer Version: Version 2
Variabele 4: DLV – ecommerce.payment_type
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.payment_type
- Data Layer Version: Version 2
Variabele 5: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Je kunt de UA e-commerce ‘checkout’ en ‘checkout_option’ parameters uitlezen en omvormen tot de benodigde variabelen in Google Tag Manager. Het is lastig uit te leggen hoe je dit precies moet doen aangezien dit afhankelijk is van hoe je Enhanced Ecommerce tracking had ingesteld in UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: add_payment_type
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: add_payment_type
Event parameters:
Parameter name: | Value: |
currency | {{DLV – ecommerce.currency}} als je de currency parameter op event-niveau hebt gestuurd naar dataLayer. |
value | {{DLV – ecommerce.value}} als je de value parameter op event-niveau hebt gestuurd naar dataLayer. |
coupon | {{DLV – ecommerce.coupon}} als je de coupon parameter op event-niveau hebt gestuurd naar dataLayer. |
payment_type | DLV – ecommerce.payment_type}} |
items | {{DLV – ecommerce.items}} of een zelfgemaakte variabele waarmee je de UA parameters hebt omgevormd tot een variabele geschikt voor GA4. |
Triggers:
Selecteer de aangemaakte ‘add_payment_info’ trigger.
Categorie 4: Transacties
Event 11: Purchase
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een bestelling plaatst gebruik je het ‘purchase’ event.
Soort trigger: hook (wanneer het systeem terugstuurt dat de bestelling succesvol is geplaatst).
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
transaction_id | string | Ja | 01 | Een ID die je maakt voor een transactie.
Met de parameter transaction_id kun je dubbele gebeurtenissen voor een aankoop voorkomen. |
currency | string | Ja* | EUR | Valuta van de items die bij het evenement horen, in 3-letter ISO 4217-formaat.
Indien ingesteld, wordt de valuta op item-niveau genegeerd. Indien niet ingesteld, wordt de valuta van het eerste item in items gebruikt. * Als je ‘value’ instelt, is ‘currency’ vereist om opbrengststatistieken nauwkeurig te berekenen. |
value | number | Ja* | 10.00 | De totale waarde van alle producten.
* ‘value’ is doorgaans vereist voor zinvolle rapportage. Als je de gebeurtenis markeert als een conversie, raden we je aan de value parameter in te stellen. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | zomerkorting2022 | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
shipping | number | Nee | 10.00 | De verzendkosten gerelateerd aan de transactie. |
tax | number | Nee | 537.67 | De belasting gerelateerd aan de transactie. |
items | Array<item> | Ja | De producten die je wilt meesturen. |
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
item_id | string | Ja* | SKU_12345 | De ID van het item.
*Een van de item_id of item_name is vereist. |
item_name | string | Ja* | Apple MacBook Pro | De naam van het item.
*Een van de item_id of item_name is vereist. |
affiliation | string | Nee | Elektronicawinkel Arnhem | De affiliation parameter gebruik je om te registreren door welke leverancier / winkel / locatie het product wordt geleverd.
Event-niveau en item-niveau affiliation parameters staan los van elkaar. |
coupon | string | Nee | Zomerkorting | De couponnaam/code die aan het artikel is gekoppeld.
Event-niveau en item-niveau coupon parameters staan los van elkaar. |
currency | string | Nee | EUR | De currency (valuta), in 3-letter ISO 4217-formaat.
Indien ingesteld wordt currency op event-niveau genegeerd. Meerdere valuta’s per event worden niet ondersteund; de currency moet gelijk zijn bij ieder item per event. |
discount | number | Nee | 100.00 | De waarde van de korting gekoppeld aan het product. |
index | number | Nee | 1 | De index/positie van het item in een lijst. |
item_brand | string | Nee | Apple | Het merk van het item. |
item_category | string | Nee | Elektronica | De categorie van het item. Indien gebruikt als onderdeel van een categorie hiërarchie of taxonomie, is dit de eerste categorie. |
item_category2 | string | Nee | Computers | De tweede categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category3 | string | Nee | Laptops | De derde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category4 | string | Nee | Macbooks | De vierde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_category5 | string | Nee | Pro series | De vijfde categorie in de hiërarchie of aanvullende taxonomie voor het item. |
item_list_id | string | Nee | featured_items | De ID van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_id op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_id op event-niveau gebruikt, indien aanwezig. |
item_list_name | string | Nee | Featured Items | De naam van de lijst waarin het product getoond is aan de bezoeker.
Indien ingesteld, wordt item_list_name op event-niveau genegeerd. Indien niet ingesteld, wordt item_list_name op event-niveau gebruikt, indien aanwezig. |
item_variant | string | Nee | 2020 | De variant of unieke code of een beschrijving van aanvullende details. |
location_id | string | Nee | L_12345 | De locatie die aan het item is gekoppeld. Het wordt aanbevolen om de Google Place-ID te gebruiken die overeenkomt met het bijbehorende item. Een aangepaste locatie-ID kan ook worden gebruikt. |
price | number | Nee | 9.99 | De prijs van het artikel, in eenheden van de opgegeven valutaparameter. |
quantity | number | Nee | 1 | Aantal stuks. |
Make sure quantity is passed as an integer. A floating point value will cause item revenue to be incorrectly reported in the Monetization reports!
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “purchase”,ecommerce: {currency: “EUR”,value: 3098.00,tax: 537.67,shipping: 10.00,affiliation: “Elektronicawinkel Arnhem”,transaction_id: “01”,coupon: “kortingscode”,items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”},{item_id: “SKU_0194253083726”,item_name: “Apple MacBook Air”,price: 1869.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Air series”,item_variant: “2022”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.currency
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currency
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.value
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.value
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.tax
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.tax
- Data Layer Version: Version 2
Variabele 4: DLV – ecommerce.shipping
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.shipping
- Data Layer Version: Version 2
Variabele 5: DLV – ecommerce.affiliation
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.affiliation
- Data Layer Version: Version 2
Variabele 6: DLV – ecommerce.transaction_id
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.transaction_id
- Data Layer Version: Version 2
Variabele 7: DLV – ecommerce.coupon
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.coupon
- Data Layer Version: Version 2
Variabele 8: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce products
array gebruiken in plaats van het aanmaken van een nieuwe items array. Hiervoor maak je de volgende variabele:
Variabele 1: DLV – ecommerce.currencyCode
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.currencyCode
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.purchase.actionField.revenue
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.purchase.actionField.revenue
- Data Layer Version: Version 2
Variabele 3: DLV – ecommerce.purchase.actionField.tax
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.purchase.actionField.tax
- Data Layer Version: Version 2
Variabele 4: DLV – ecommerce.purchase.actionField.shipping
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.purchase.actionField.shipping
- Data Layer Version: Version 2
Variabele 5: DLV – ecommerce.purchase.actionField.affiliation
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.purchase.actionField.affiliation
- Data Layer Version: Version 2
Variabele 6: DLV – ecommerce.purchase.actionField.id
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.purchase.actionField.id
- Data Layer Version: Version 2
Variabele 7: DLV – ecommerce.purchase.actionField.coupon
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.purchase.actionField.coupon
- Data Layer Version: Version 2
Variabele 8: DLV – ecommerce.purchase.products
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.purchase.products
- Data Layer Version: Version 2
Let op: bovenstaande variabelen zijn dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: purchase
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: purchase
Event parameters:
Parameter name: | Variable GA4: | Variable UA: |
currency | {{DLV – ecommerce.currency}} | {{DLV – ecommerce.currencyCode}} |
value | {{DLV – ecommerce.value}} | {{DLV – ecommerce.purchase.actionField.revenue}} |
tax | {{DLV – ecommerce.tax}} | {{DLV – ecommerce.purchase.actionField.tax}} |
shipping | {{DLV – ecommerce.shipping}} | {{DLV – ecommerce.purchase.actionField.shipping}} |
affiliation | {{DLV – ecommerce.affiliation}} | {{DLV – ecommerce.purchase.actionField.affiliation}} |
transaction_id | {{DLV – ecommerce.transaction_id}} | {{DLV – ecommerce.purchase.actionField.id}} |
coupon | {{DLV – ecommerce.coupon}} | {{DLV – ecommerce.purchase.actionField.coupon}} |
items | {{DLV – ecommerce.items}} | {{DLV – ecommerce.purchase.products}} |
Triggers:
Selecteer de aangemaakte ‘purchase’ trigger.
Event 12: Refund
Er zijn twee type refund events: een volledige refund (wanneer de volledige transactie is geannuleerd) en een gedeeltelijke refund (wanneer een deel van de transactie is teruggestuurd).
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een bestelling annuleert gebruik je het ‘refund’ event.
Soort trigger: hook (wanneer het systeem terugstuurt dat er een annulering heeft plaatsgevonden).
Voor een volledige refund ziet de dataLayer er als volgt uit:
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “refund”,ecommerce: {transaction_id: “01”}});
Verplichte parameter is transaction_id.
Voor een gedeeltelijke refund ziet de dataLayer er als volgt uit:
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “refund”,ecommerce: {transaction_id: “01”,items: [{item_id: “SKU_0194252165973”,item_name: “Apple MacBook Pro”,price: 1229.00,quantity: 1,item_brand: “Apple”,item_category: “Elektronica”,item_category2: “Computers”,item_category3: “Laptops”,item_category4: “Macbooks”,item_category5: “Pro series”,item_variant: “2020”}]}});
Verplichte parameters zijn transaction_id en voor elk item: item_id en quantity.
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.transaction_id
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.transaction_id
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce dataLayer gebruiken. Hiervoor moet je de volgende variabelen aanmaken:
Variabele 1: DLV – ecommerce.refund.actionField.id
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.refund.actionField.id
- Data Layer Version: Version 2
Variabele 2: DLV – ecommerce.refund.products
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.refund.products
- Data Layer Version: Version 2
Let op: bovenstaande variabelen zijn dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: refund
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: refund
Event parameters:
Parameter name: | Variable GA4: | Variable UA: |
transaction_id | {{DLV – ecommerce.transaction_id}} | {{DLV – ecommerce.refund.actionField.id}} |
items | {{DLV – ecommerce.items}} | {{DLV – ecommerce.refund.products}} |
Triggers:
Selecteer de aangemaakte ‘refund’ trigger.
Categorie 5: Promoties
De laatste twee events zijn ‘view_promotion’ en ‘select_promotion’. Deze twee events worden over het algemeen minder gebruikt en de documentatie hierover is niet eenduidig. Vandaar dat de documentatie hieronder niet volledig overeenkomt met Google. Wanneer je weinig ervaring hebt me e-commerce tracking zou ik je adviseren om nog even te wachten met het implementeren hiervan totdat de documentatie klopt. Dat zou je er echter niet van moeten weerhouden met de andere acties aan de slag te gaan, die kun je nu al implementeren!
Event 13: View_promotion
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een promotie blok / banner ziet gebruik je het ‘view_promotion’ event.
Soort trigger: paginaweergave
In de officiële documentatie van GA4 staat welke velden je mee kunt geven. Echter klopt dit niet helemaal. In hun eigen voorbeeld website gebruikt Google bijvoorbeeld ook een code die niet voldoet aan de voorwaarden zoals deze in de officiële documentatie worden beschreven.
Na het lezen van diverse blogs, het bestuderen van de voorbeeld website en het draaien van een aantal tests adviseer ik je de volgende velden door te sturen:
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
items | Array<item> | Ja | De producten die je wilt meesturen.
Let op: de items array staat meerdere items toe, ook al zegt de officiële documentatie van niet.
|
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
promotion_id | string | Ja | promotion_1 | De ID van de promotie die je wilt meten. |
promotion_name | string | Ja | Summer Sale | De naam van de promotie die je wilt meten. |
creative_slot | string | Nee | banner_slide_1 | De naam van de promotionele advertentieruimte (eerder was dit ‘position’). |
creative_name | string | Nee | summer_sale_ad_1 | De naam of omschrijving van de gebruikte ‘creative’ (afbeelding / video). |
location_id | string | Nee | homepage_banner | De ID van de locatie waar de promotie wordt getoond. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “view_promotion”,ecommerce: {items: [{promotion_id: “promotion_1”,promotion_name: “Summer Sale Macbook Pro”,creative_slot: “banner_slide_1”,creative_name: “summer_sale_ad_1”,location_id: “homepage_banner”},{promotion_id: “promotion_2”,promotion_name: “Summer Sale Macbook Air”,creative_slot: “banner_slide_2”,creative_name: “summer_sale_ad_2”,location_id: “homepage_banner”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce dataLayer gebruiken. Hiervoor moet je de volgende variabelen aanmaken:
Variabele 1: DLV – ecommerce.promoView.promotions
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.promoView.promotions
- Data Layer Version: Version 2
Let op: bovenstaande variabele zijn dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: view_promotion
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: view_promotion
Event parameters:
Parameter name: | Variable GA4: | Variable UA: |
items | {{DLV – ecommerce.items}} | {{DLV – ecommerce.promoView.promotions}} |
Triggers:
Selecteer de aangemaakte ‘view_promotion’ trigger.
Event 14: Select_promotion
Bekijk de officiële GA4 documentatie hier.
Wanneer iemand een promotie heeft geselecteerd gebruik je het ‘select_promotion’ event.
Soort trigger: klik
In de officiële documentatie van GA4 staat welke velden je mee kunt geven. Echter klopt dit niet helemaal. In hun eigen voorbeeld website gebruikt Google bijvoorbeeld ook een code die niet voldoet aan de voorwaarden zoals deze in de officiële documentatie worden beschreven.
Na het lezen van diverse blogs, het bestuderen van de voorbeeld website en het draaien van een aantal tests adviseer ik je de volgende velden door te sturen:
Event parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
items | Array<item> | Ja | De producten die je wilt meesturen.
Let op: de items array staat één item toe.
|
Item parameters:
Naam | Type | Verplicht? | Voorbeeld | Omschrijving |
promotion_id | string | Ja | promotion_1 | De ID van de promotie die je wilt meten. |
promotion_name | string | Ja | Summer Sale | De naam van de promotie die je wilt meten. |
creative_slot | string | Nee | banner_slide_1 | De naam van de promotionele advertentieruimte (eerder was dit ‘position’). |
creative_name | string | Nee | summer_sale_ad_1 | De naam of omschrijving van de gebruikte ‘creative’ (afbeelding / video). |
location_id | string | Nee | homepage_banner | De ID van de locatie waar de promotie wordt getoond. |
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.dataLayer.push({event: “select_promotion”,ecommerce: {items: [{promotion_id: “promotion_1”,promotion_name: “Summer Sale Macbook Pro”,creative_slot: “banner_slide_1”,creative_name: “summer_sale_ad_1”,location_id: “homepage_banner”}]}});
GTM variabelen aanmaken
Wanneer je de dataLayer voor GA4 hebt geïmplementeerd maak je de volgende variabelen (indien je deze nog niet hebt aangemaakt):
Variabele 1: DLV – ecommerce.items
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.items
- Data Layer Version: Version 2
Gebruik maken van UA e-commerce tracking?
Als jij al e-commerce tracking had geïnstalleerd voor Universal Analytics dan kun je de Enhanced Ecommerce dataLayer gebruiken. Hiervoor moet je de volgende variabelen aanmaken:
Variabele 1: DLV – ecommerce.promoClick.promotions
- Type: Data Layer Variable
- Data Layer Variable name: ecommerce.promoClick.promotions
- Data Layer Version: Version 2
Let op: bovenstaande variabele zijn dus alleen nodig wanneer je nog de dataLayer gebruikt en daarbij de waardes doorstuurt op de manier zoals je dat deed voor UA.
GTM trigger aanmaken
Trigger type: Custom Event
Event name: select_promotion
Trigger fires on: All Custom Events
GTM tag aanmaken
Tag Type: Google Analytics: GA4 Event
Configuration Tag: GAv2 – Base tag
Event Name: select_promotion
Event parameters:
Parameter naam: | Variabele GA4: | Variabele UA: |
items | {{DLV – ecommerce.items}} | {{DLV – ecommerce.promoClick.promotions}} |
Triggers:
Selecteer de aangemaakte ‘select_promotion’ trigger.
Testen met de DebugView
Het kan tot 24 uur duren voordat rapporten en verkenningen zijn gevuld met e-commerce data. In de tussentijd kun je middels een combinatie van Google Tag Manager en de DebugView in Google Analytics 4 testen of je alle events correct hebt ingesteld.
Hoe je dit doet? Voeg in Google Tag Manager de parameter ‘debug_mode’ toe aan de GA4 configuratie tag of aan de tag voor het specifieke event dat je wilt controleren met als waarde ’true’.
Meer leren over online marketing?
Vond jij dit artikel handig en wil jij graag meer leren over online marketing? Volg me dan op <a href=”https://www.linkedin.com/in/nickvanmaaren/” target=”_blank” rel=”noopener”>LinkedIn</a> om op de hoogte te blijven van mijn toekomstige blogs over o.a. GA4, Google Ads, SEO & Strategie.