Met de widgets van HolidayAgent kan er data worden verzonden naar de Google Tag Manager (GTM). Als de GA4 tracking is geactiveerd dan sturen bepaalde widgets automatisch data naar de datalayer. Deze data kan vervolgens gebruikt worden om GA4 te voorzien van de juiste gegevens.
Om in GA4 de e-commerce weergave te laten werken moeten er custom events worden ingesteld in GTM. Hieronder een overzicht welke data we standaard versturen en hoe deze middels tags in GTM naar bijvoorbeeld GA4 kan worden gestuurd.
Op dit moment kan bij de volgende widgets de tracking worden geactiveerd:
- Searcher
- Quickesearch (Legacy)
- Calendar
- Pricetable
- Datepicker (Legacy)
- Onepage boekstraat
- 4 staps boekstraat (Legacy)
- Standalone 2.0 (https://booking.holidayagent.nl/booking/?booking_resort={resortname})
DataLayer
Lijstweergave:
Event: search_list
Aantal: Bij elke nieuwe datumselectie of andere aanpassing in de Searcher
Datalayer:
{
event: 'search_list',
searchdata: {
arrival: 'dd-mm-jjjj',
duration: xx,
departure: 'dd-mm-jjjj',
arrival_departure: 'dd-mm-jjjj - dd-mm-jjjj (x)'
},
ecommerce: {
items: [{
item_name: 'object(type)',
item_id: 'x',
price: xxx,
quantity: 1
},{
item_name: 'object(type)',
item_id: 'x',
price: xxx,
quantity: 1
}]
}
}
Accommodatie detailpagina:
Event: view_item (Ecommerce)
Aantal: Eenmaal per pagina weergave waar de Calendar widget op staat
Datalayer:
{
event: 'view_item',
ecommerce: {
items: [{
item_name: 'object(type)',
item_id: xxx
}]
}
}
Event: period_item (voor het bijhouden van gezochte periodes)
Aantal: Bij elke nieuwe datumselectie in de Calendar
Datalayer:
{
event: 'period_item',
searchdata: {
arrival: 'dd-mm-jjjj',
departure: 'dd-mm-jjjj',
arrival_departure: 'dd-mm-jjjj - dd-mm-jjjj (x)',
duration: xx
}
}
One-Page Boekstraat:
Event: add_to_cart (Ecommerce)
Aantal: Eenmaal bij start boeking
Datalayer:
{
event: 'add_to_cart',
ecommerce: {
items: [{
item_name: 'object(type)',
item_id: 'x',
price: xxx,
quantity: 1
}]
},
searchdata: {
arrival: 'dd-mm-jjjj',
departure: 'dd-mm-jjjj',
arrival_departure: 'dd-mm-jjjj - dd-mm-jjjj (x)',
duration: xx
}
}
Event: purchase (Ecommerce)
Aantal: Eenmaal bij afronden boeking
Datalayer:
{
event: 'purchase',
ecommerce: {
purchase:{
currency: 'EUR',
value: xxxx,
transaction_id: xxxxx,
items: [{
item_name: 'object(type)',
item_id: xxx,
price: xxx,
quantity: 1
}]
}
},
searchdata: {
arrival: 'dd-mm-jjjj',
departure: 'dd-mm-jjjj',
arrival_departure: 'dd-mm-jjjj - dd-mm-jjjj (x)',
duration: xx
}
}
Google Tagmanager (GTM)
In GTM werkt het dan als volgt:
Stap 1: Je maakt de volgende variabelen aan die data uit de datalaag uitlezen.
- Reserveringnummer (ecommerce.purchase.transaction_id)
- Totaalprijs (ecommerce.purchase.value)
- Items (ecommerce.items)
- Items purchase (ecommerce.purchase.items)
- Currency (ecommerce.purchase.currency)
- Aankomstdatum* (searchdata.arrival)
- Vertrekdatum* (searchdata.departure)
- Aankomst & Vertrekdatum* (searchdata.arrival_departure)
* De zoekdata is niet nodig om e-commerce werkend te krijgen. De data is echter heel interessant om wel op te slaan, want daaruit kan worden bekeken welke periodes er wel en niet populair zijn in de website.
Stap 2: Je maakt de volgende triggers aan onder de noemer aangepast event:
- search_list
- view_item (eenmaal per pagina)
- period_item
- add_to_cart (eenmaal per pagina)
- purchase (eenmaal per pagina)
Voorbeeld van add_to_cart Trigger instelling:
Stap 3: Je maakt de volgende 5 tags aan waarvan er 3 nodig zijn voor de standaard e-commerce weergave in GA4, waarbij je per tag de juiste trigger koppelt die je hierboven al hebt aangemaakt:
- view_item_list
- view_item (ecommerce)
- period_item
- add_to_cart (ecommerce)
- purchase (ecommerce)
View item list
View item
Period item
Add to cart
Purchase
Custom Dimensions in te stellen in GA4
- arrival -> Aankomstdatum
- departure -> Vertrekdatum
- arrival_departure -> Aankomst & vertrekdatum
- ha_message -> Boekstraat gebeurtenis (deze is optioneel)