RoomSome 2.0 mérési rendszer működése
Beállítás Google Tag Manager (GTM) sablonnal
Itt tölthető le a GTM sablon: RS2 GTM sablon.json
A sablon kliens oldali tárolókhoz készült és tartalmazza a legszükségesebb eseményeket, de nem minden eseményt. Az összes esemény leírása megtalálható és kidolgozható az “Egyedi beállítás” rész alapján. Ez egy kliens oldali tároló, így a Facebook események is csak kliens oldalról kerülnek feladásra (Facebook CAPI-ra nem megoldás, ahhoz egy szerver oldali tároló kidolgozására is szükség lesz).
Google Tag Manager-be kell importálni a tárolót, majd a változóknál (variables) megadni az összes Cookiebot-hoz, GA4-hez, Google Ads-hez, és FB-hoz tartozó állandó (constant) értéket.
A beállítások elvégzése után a GTM tároló kódját a következő címekre kell elküldeni:
Jelezzük, amint beillesztettük a kódokat.
Egyedi beállítás
Itt elérhető az összes dataLayer-be feladott esemény és a hozzájuk tartozó paraméterek. Ezek alapján bővíthető az előző pontban mellékelt GTM sablon.
Bevezetésként néhány gondolat
Az Analytics rendszerben az e-kereskedelmi részek alapvetően webshopok logikájára lettek felépítve, mégis elég jól lehet ezeket szállásfoglalásra is használni. Helyenként pár lépést másképp kell értelmezni és néhány adatot pl. termékkategória, terméknév újra kell értelmezhetünk a szálláshelyi logika miatt, de alapvetően a logika a bemutatott eseménysorozat erősen webshop jellegű lesz.
Elő fog fordulni néhány egyéni dimenzió (adat attribútum) és egyéni mutató (metrika) a szálláshelyi logika és néhány extra mérési lehetőség miatt.
A rendszer pontosabb magyarázatához helyenként az adatstruktúra könnyebb átláthatósága végett (mivel ezt Analyicsből visszafelé bemutatni már jóval töredezettebb), az eredeti, beküldéskori struktúrát fogja tartalmazni a leírás, mert ott még jobban együtt vannak az adatok, mint az Analyticsben az olvasási nézetben. A kód irányú megközelítés továbbá azt hivatott megmutatni, hogy milyen esetben mi a termék, a kategória, a lista, stb.
Ajánlatkérési rendszer
Működési modell:
- Ajánlatkéréskor az ajánlatkérés forrás adatai tárolásra kerülnek.
- Ajánlat kimegy a kapott adatokkal paraméterezve: paraméterek az eredeti forrásokat veszik figyelembe
- Vendég az ajánlatot ebből a paraméterezett levélből nyitja meg
- Vendég a paraméterezett levélből érkezve fogadja el az ajánlatot
- Google Analytics rögzíti a foglalást, lefut az e-kereskedelmi tranzakciós adatokat tartalmazó script és bekerül az ajánlatból foglalás az e-kereskedelmi jelentésekbe
Az ajánlatból történt foglalások későbbi megkülönböztetésére a tranzakciós azonosító egy megkülönböztetett értéket kap egy REQ_ előtagot. Így fog kinézni tranzakciós azonosító szinten egy ajánlatból történt foglalás a jelentésben: REQ_112233
Forrás modell példaként Google / cpc
Google / cpc ⇒ ajánlatkérés beérkezik => ajánlati email megy a vendégnek (forrás Google / cpc), ebből vendég elfogadja az ajánlatot ⇒ Google Analytics rögzíti a foglalást Google / cpc forrásal.
Egyéb adatok az ajánlatkérés vonatkozásában:
- Érkezési dátum
- Távozási dátum
Számított érték lehetőségek ezekből: átlagos tartózkodási idő, ajánlatkérés dátuma a mai naphoz képest (proposal window)
Felnőttek és gyermekek száma
Gyermekek száma >= 0 családi / nem családi ajánlatkérés
A fenti adatok az ajánlatkérés gomb megnyomásakor kerülnek elküldésre.
Ajánlatkérés megkezdése (proposal_step0)
Az ajánlatkérés oldal megtekintésekor következik be:
{event: "proposal_step0"}
Dátum küldés (senddate)
Ajánlatkéréssel együtt következik be:
{
event: “senddate”,
arrival: “2023-06-08”,
arrival_week: “23”
departure: “2023-06-11”,
adults: “3”,
children: “2”,
rooms: “2”,
children_age: “2,6”, // pl.: ha üres akkor ""
site_language: “hu”
}
Ajánlatkérés (generate_lead)
Ajánlatkéréskor a küldés pillanatában esemény alapon is lesz egy hívás:
{
event: “generate_lead”,
currency: "HUF", // ez lehet statikusan HUF és az érték is statikus
value: 100000 // ha ezek nincsenek, attól még működik
emailAddress: “tester@email.com”, //enhanced conversion
phoneNumber: “+36301234567”, //enhanced conversion
arrival: “2023-06-08”,
arrival_week: “23”
departure: “2023-06-11”,
adults: “3”,
children: “2”,
rooms: “2”,
children_age: “2,6”, // pl.: ha üres akkor "",
country: “hu”,
site_language: “hu”
}
REAL TIME FOGLALÁSI rendszer
A fentiekhez képest a modell egyszerűbb, a forrás adatok rendelkezésre állnak, mivel nincs közbülső folyamat.
Egyéb adatok a foglalás vonatkozásában:
- Érkezési dátum
- Távozási dátum
Számított érték lehetőségek ezekből: átlagos tartózkodási idő, foglalás dátuma a mai naphoz képest (booking window)
- Felnőttek és gyermekek száma
Gyermekek száma >=0 családi / nem családi foglalás
Küldése a foglalási folyamat 2. fázisában, szobaválasztáskor történik meg.
Választható szobatípusok megjelenítése (impressions / view_item_list)
{
event: “view_item_list”,
ecommerce: {
currency: "HUF",
items: [{
item_name: "Kényeztető hétköznapok standard szobában",
item_id: "0288b84e066b028ae6d886cca55e2001",
price: "30470",
item_brand: "Szállodanév",
item_category: "Csomagok",
item_list_name: "Standard kétágyas szoba",
item_list_id: "FI1",
index: 1,
quantity: "1"
},
{
item_name: "Kényeztető hétköznapok standard szobában",
item_id: "0288b84e066b028ae6d886cca55e2001",
price: "30470",
item_brand: "Szállodanév",
item_category: "Csomagok",
item_list_name: "Standard háromágyas szoba",
item_list_id: "FI1",
index: 2,
quantity: "1"
}]
}
}
Csomag kattintás és csomag részletei (select_item és view_item)
Több csomagajánlat esetén lenyitáskor történik egy termékkattintás (productClick / select_item) és egy detailView / view_item esemény is egyben.
{
event: "select_item",
ecommerce: {
currency: "HUF",
items: [{
item_name: "Kényeztető hétköznapokstandard szobában",
item_id: "5eb58ab820cff40987055ae164f0f34b",
price: "25390",
item_brand: "Szálloda neve",
item_category: "Csomagok",
item_list_name: "Standard háromágyas szoba",
item_list_id: "FI1",
index: 1,
quantity: "1"
}]
}
}
{
event: "view_item",
ecommerce: {
currency: "HUF",
items: [{
item_name: "Kényeztető hétköznapok standard szobában",
item_id: "5eb58ab820cff40987055ae164f0f34b",
price: "25390",
item_brand: "Hotel neve",
item_category: "Csomagok",
quantity: "1"
}]
}
}
Kosárba helyezés (add_to_cart)
{
event: “add_to_cart”,
ecommerce: {
currency: “HUF”,
items: [
{
item_name: “Napi árak önellátással standard szobában”,
item_id: “5eb58ab820cff40987055ae164f0f34b”,
price: “25390”,
item_brand: “Hotelnév”,
item_category: “Csomagok”,
quantity: “1”
}
]
}
"eventCallback": function(){
//submit és következő oldal
},
"eventTimeout": 2000
}
Választható extrák megjelenítése (impressions / view_item_list)
Ha van upsell a foglalási folyamatban, akkor a választható elemek megjelenítésekor történik egy view_item_list az oldal betöltésekor, ennek adattartalma:
{
event: "view_item_list",
ecommerce: {
currency: "HUF",
items: [{
item_name: "Háziállat díja X éjszakára (standard szobában)",
item_id: "bdedc0b79f0b229d6f90ead5524bf344",
price: "4500",
item_brand: "Szállodanév",
item_category: "Extrák",
item_list_name: "Általános szolgáltatások",
item_list_id: "FI1",
index: 1,
quantity: "1"
},{
item_name: "Lávaköves masszázs erdei madárcsicsergéssel (30 perc)",
item_id: "f606ef8d7dcc97b4cce1f71895a06848",
price: "7500",
item_brand: "Szállodanév",
item_category: "Extrák",
item_list_name: "Wellness kezelések",
item_list_id: "FI1",
index: 2,
quantity: "1"
},{
item_name: "Kerékpárkölcsönzés 3 óra időtartamra",
item_id: "76a763914243bf9be523c4b3ee7c2ff1",
price: "1200",
item_brand: "Szállodanév",
item_category: "Extrák",
item_list_name: "Sport- és programlehetőségek",
item_list_id: "FI1",
index: 3,
quantity: "1"
}]
}
}
Extrák - Kattintás és extrák részletei (select_item és view_item)
A view_item és a select_item extráknál is a fentiekben bemutatott adattartalommal működik.
Extrák - Kosárba helyezés (add_to_cart)
Szintén az upsellhez kötődően a kiválasztott tételek jóváhagyásakor, tehát az adatmegadáshoz történő továbblépéskor következik be az add_to_cart esemény.
event: "add_to_cart",
ecommerce: {
currency: "HUF",
items: [{
item_name: "Virágcsokor bekészítés",
item_id: "76a763914243bf9be523c4b3ee7c2ff1",
price: "1200",
item_brand: "Hotelnév",
item_category: "Extrák",
quantity: "1"
},
{
item_name: "Borbekészítés",
item_id: "f606ef8d7dcc97b4cce1f71895a06848",
price: "7500",
item_brand: "Hotelnév",
item_category: "Extrák",
quantity: "1"
}
]
}
Checkout folyamat, adatmegadás lépéskor (begin_checkout):
event: "begin_checkout",
site_language: “hu”,
ecommerce: {
currency: "HUF",
items: [{
item_name: "Kényeztető hétköznapok standard szobában",
item_id: "5eb58ab820cff40987055ae164f0f34b",
price: "25390",
item_brand: "Hotelnév",
item_category: "Csomagok",
quantity: "1"
},{
item_name: "Virágcsokor bekészítés",
item_id: "76a763914243bf9be523c4b3ee7c2ff1",
price: "1200",
item_brand: "Hotelnév",
item_category: "Extrák",
quantity: "1"
}]
}
Foglalás (purchase)
Ajánlatból történő és direkt foglalásokra is érvényes.
{
event: "purchase",
site_language: “hu”,
emailAddress: "teszt@t.tu", //enhanced conversion
phoneNumber: "+361234567", //enhanced conversion
arrival: [dátum kötőjeles],
arrival_week: [év hete az 52 hétből],
departure: [dátum kötőjeles],
adults: “3”,
children: “2”,
rooms: “2”,
children_age: “2,6”, // pl.: ha üres akkor ""
channel: [inquiry/direct/voucher/ticket], // inquiry: ajánlatból, direct: foglalási folyamat
bookingID: "RS/1541", //belső RS foglalási azonosító (D-Edge connect és debug)
payment_details: {payment_name: "Banki Átutalás", payment_value: 90412},
ecommerce: {
currency: "HUF", //pénznem
value: 26590,
tax: 0,
shipping: 0,
affiliation: "",
transaction_id: "534", // ha ajánlatból van, akkor ez itt REQ_534
coupon: "VOUCH14,VOUCH15", // beváltott utalványok sorszáma
items: [{
item_name: "Wellness pihenés standard szobában",
item_id: "d63abf9ae309b42b2bc12fb04f098d4e",
price: "40390",
item_brand: "Hotelnév",
item_category: "Csomagok",
quantity: "1"
metric5: 2, //felnőttek száma
metric6: 2, //gyermekek száma
metric7: 3 //éjszakák száma
},{
item_name: "Standard kétágyas szoba-külön ágyakkal",
item_id: "2a1148a612b158ab29afda07775ecacf",
booking_room_id: “RS/1541-2118”,
roomtype_code: “SUPDB”,
price: "0",
item_brand: "Hotelnév",
item_category: "Szobák",
quantity: "1",
},
{
item_name: "Kerékpárkölcsönzés 3 óra időtartamra",
item_id: "76a763914243bf9be523c4b3ee7c2ff1",
price: "1200",
item_brand: "Hotelnév",
item_category: "Extrák",
quantity: "1",
},{
item_name: "VOUCH14",
item_id: "76a763914243bf9be523c4b3ee68135d",
price: "10000", //utalvány értéke
metric1: 10000, //utalvány vásárlási ára
item_brand: "Hotelnév",
item_category: "Utalvány",
quantity: "-1",
},{
item_name: "VOUCH15",
item_id: "86w963914243bf9be523c4b3ee68135d",
price: "15000", //utalvány értéke
metric1: 15000, //utalvány vásárlási ára
item_brand: "Hotelnév",
item_category: "Utalvány",
quantity: "-1",
}]
},
}
{
"ecommerce": {
...
},
"payment_details": {
"payment_name": "Helyszíni fizetési mód",
"payment_value": 26590
}
}
Foglalási folyamat utalvány beváltáskor
1 egyéni dimenzióval több gyárilag: az utalvány vásárláskori értéke kerül felvezetésre, mivel a foglalási érték az eredeti értékkel nem feltétlen fog egyezni. Utalvány beváltásakor a revenue csökken, kerülve ezzel azt, hogy duplán kerüljön beszámításra a vásárláskor keletkezett bevétel.
Tranzakció törlése (refund) - fejlesztés alatt
Tranzakciót a foglalási rendszerből történő törléskor a Measurement Protocol-on keresztül végezzük. Ez a Google közvetlen kommunikációs csatornája, ahol közvetlen hívást lehet intézni a Google mérési szerver felé, ahol a megfelelő azonosítók megadásával adott tranzakciók részben vagy egészben törölhetők. Ehhez GTM oldalról már nem kell semmi, hiszen szerver-szerver kommunikációban történik.
Felhasználó saját maga által kezdeményezett lemondás kezelése
Szerver oldalon Measurement Protocol segítségével, kód minta:
{
event: "refund",
ecommerce: {
transaction_id: "p115-20202000"
}
}
Hibás kalkuláció esemény:
Kalkulációs hibaüzenet esetén futtatandó esemény:
Unsuccessful calculation:
{
event: "unsuccessful_calculation",
arrival: “2023-06-08”,
arrival_week: “23”
departure: “2023-06-11”,
adults: “3”,
children: “2”,
rooms: “2”,
children_age: “2,6”, // pl.: ha üres akkor ""
site_language: “hu”
}
}
Foglalási folyamat lépéseinek eseményei:
- Foglalási folyamat megkezdése - Dátumválasztás (booking_step0)
- Szobaválasztás (booking_step1)
- Extra választás (booking_step2)
- Adatmegadás (booking_step3)
{
'event': 'booking_step1',
'site_language': 'hu',
'currency_selected': 'HUF', //RS 2.0 specifikus
'arrival': 'YYYY-MM-DD',
'arrival_week': 26, //numeric év hányadik hete
'departure': 'YYYY-MM-DD',
'adults': 2,
'children': 2,
'rooms': 2, //numeric választott szobák száma
}
Voucher modul
Az e-kereskedelmi események ugyanolyan néven jelennek meg mint a foglalási folyamatban, azonban a channel paraméterrel elkülöníthetőek.
Választható utalványtípusok megjelenítése (impressions / view_item_list)
{
event: "view_item_list",
channel: “voucher”,
ecommerce: {
currency: "HUF",
items: [
{
item_name: "Élményutalvány",
item_id: "c4ca4238a0b923820dcc509a6f75849b",
price: 0,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
item_list_name: "Élményutalvány",
item_list_id: "VOUCHER4911",
index: 1,
quantity: 1
},
{
item_name: "Tesztutalvány CÍMLETES",
item_id: "45c48cce2e2d7fbdea1afc51c7c6ad26",
price: 1000,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
item_list_name: "Tesztutalvány CÍMLETES",
item_list_id: "VOUCHER4919",
index: 1,
quantity: 1
},
]
}
Részletek megtekintése (detailView/ view_item):
{
event: "view_item",
channel: “voucher”,
ecommerce: {
currency: "HUF",
items: [
{
item_name: "Élményutalvány",
item_id: "c4ca4238a0b923820dcc509a6f75849b",
price: 0,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
quantity: 1
}
]
},
}
Rendelés megkezdése (voucher_order_start)
A megrendelem gomb megnyomásakor:
{
event: "voucher_order_start",
}
Mentés és kosárhoz adás
A választott utalványok mindegyikét menteni kell a kosárba helyezéshez (voucher_save):
{
event: "voucher_save"
}
Kosárhoz adás (add_to_cart):
{event: "add_to_cart",
channel: “voucher”,
ecommerce: {
currency: "HUF",
items: [
{
item_name: "Élményutalvány",
item_id: "c4ca4238a0b923820dcc509a6f75849b",
price: 10000,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
quantity: 1
}
]
}
}
Adatok megadása (begin_checkout)
{event: "begin_checkout",
site_language: “hu”,
channel: “voucher”,
ecommerce: {
currency: "HUF",
items: [
{
item_name: "Élményutalvány",
item_id: "c4ca4238a0b923820dcc509a6f75849b",
price: 10000,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
quantity: 1
}]
}
}
Kosár megtekintése (view_cart)
A teljes folyamat alatt elérhető a fejlécben:
{
event: "view_cart",
channel: “voucher”,
ecommerce: {
currency: "HUF",
items: [
{
item_name: "Élményutalvány",
item_id: "c4ca4238a0b923820dcc509a6f75849b",
price: 10000,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
quantity: 1
}
]
}
}
Kivétel a kosárból (remove_from_cart)
A kosár megtekintésekor lehet törölni a már hozzáadott utalványokat (az esemény, akkor megy végbe, ha a felhasználó a felugró táblán megerősíti a törlést):
{
event: "remove_from_cart",
channel: “voucher”,
ecommerce: {
currency: "HUF",
items: [
{
item_name: "Élményutalvány",
item_id: "c4ca4238a0b923820dcc509a6f75849b",
price: 10000,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
quantity: 1
}
]
}
}
Összesítés (voucher_checkout_final)
{
event: "voucher_checkout_final"
}
Vásárlás (purchase)
{
event: "purchase",
channel: "voucher",
emailAddress: "teszt@teszt.hu", //enhanced conversion
phoneNumber: "100000000" //enhanced conversion
ecommerce: {
currency: "HUF",
orderID: "RSU-000284",
value: 20000,
tax: 0,
shipping: 0,
transaction_id: "284",
payment_details: {
payment_name: "Banki Átutalás",
payment_value: 20000
},
items: [
{
item_name: "Élményutalvány",
item_id: "c4ca4238a0b923820dcc509a6f75849b",
price: 10000,
item_brand: "Morgens Premium Hotel",
item_category: "Utalványok",
quantity: 1,
metric5: "SZ-000417-JAWBR"
},
]
},
}
Loyalty modul
Regisztráció megkezdése (rs_loy_registration_begin)
A regisztrációs űrlap leadásakor:
{
event: "rs_loy_registration_begin",
email_address: "teszt@gmail.com",
user_id: 10,
site_language: "hu",
}
Regisztráció (sign_up)
Az e-mailben kapott link lekattintását követően lesz végleges.
{
event: "sign_up",
email_address: "teszt@gmail.com",
user_id: "10",
site_language: "hu",
}
Bejelentkezés (login)
{
event: "login",
email_address: "teszt@gmail.com",
user_id: 10,
site_language: "hu",
}
Ticket
Az e-kereskedelmi események ugyanolyan néven jelennek meg mint a foglalási folyamatban, azonban a channel: ticket paraméterrel elkülöníthetőek.
Kosárhoz adás (add_to_cart)
Minden kosárba gombra kattintáskor:
{
event: "add_to_cart",
channel: "ticket",
ecommerce: {
currency: "HUF",
items: [
{
item_id: "6",
item_name: "Felnőtt belépő 14 órától",
price: "2500.00",
currency: "HUF",
item_category: "Teszt belépők",
quantity: "1"
}
]}
}
Kosár megtekintése (view_cart)
{
event: "view_cart",
channel: "ticket",
ecommerce: {
currency: "HUF",
items: [
{
item_id: "6",
item_name: "Felnőtt belépő 14 órától",
price: "2500.00",
currency: "HUF",
item_category: "Teszt belépők",
quantity: 2
}
]
}
}
Kivétel kosárból (remove_from_cart)
Az oldalsávban elérhető még a view_cart előtt, illetve a view_cart-nál:
{
event: "remove_from_cart",
channel: "ticket",
ecommerce: {
currency: "HUF",
items: [
{
item_id: "6",
item_name: "Felnőtt belépő 14 órától",
price: "2500.00",
currency: "HUF",
item_category: "Teszt belépők",
quantity: 1
}
]
}
}
Elérhetőségek (begin_checkout)
{
event: "begin_checkout",
channel: "ticket",
ecommerce: {
currency: "HUF",
items: [
{
item_id: "6",
item_name: "Felnőtt belépő 14 órától",
price: "2500.00",
currency: "HUF",
item_category: "Teszt belépők",
quantity: 2
}
]
}
}
Szállítási információk (add_shipping_info)
A “Fizetési információk” alatt kerül megadásra a cím is.
{
event: "add_shipping_info",
channel: "ticket",
ecommerce: {
currency: "HUF",
items: [
{
item_id: "6",
item_name: "Felnőtt belépő 14 órától",
price: "2500.00",
currency: "HUF",
item_category: "Teszt belépők",
quantity: 2
}
]
}
}
Rendelés összegzése + fizetési információk küldése (add_payment_info)
{
event: "add_payment_info",
channel: "ticket",
ecommerce: {
currency: "HUF",
payment_type: "Banki átutalás",
items: [
{
item_id: "6",
item_name: "Felnőtt belépő 14 órától",
price: "2500.00",
currency: "HUF",
item_category: "Teszt belépők",
quantity: 2
}
]
}
}
Vásárlás (purchase)
A purchase esemény csak sikeresen kifizetés esetén következik be.
{
event: "purchase",
channel: "ticket",
emailAddress: "teszt@t.tu", //enhanced conversion
phoneNumber: "+361234567", //enhanced conversion
ecommerce: {
currency: "HUF",
transaction_id: "63",
value: 2500,
tax: 531.5,
items: [
{
item_id: "16",
item_name: "Napijegy felnőtteknek",
price: "2500.00",
currency: "HUF",
item_category: "Teszt időpontos jegyek",
quantity: 1
}
]
}
}
Amennyiben a méréseket részben vagy egészben segítséggel szeretnétek kidolgozni, egyedi ajánlatért keressetek bennünket bizalommal. Ügyfeleknek és ügynökségeknek kész kivitelezéseket is kínálunk, korszerű szerver oldali megoldásokkal.
![]() |
sales@morgens.hu |
![]() |
+36 30 489 29 05 |
![]() |
morgens.hu |
No Comments