Siirry sisältöön

GTM-analytiikka-integraatio

Voit yhdistää minkä tahansa Google Tag Manager (GTM) -säiliön Winkiin syöttämällä sen GTM Container ID:n Wink-portaaliin. Kun säiliö on yhdistetty, se ladataan automaattisesti kiinteistöllesi ja lukee Wink:n varaus tapahtumat suoraan — kattaen koko vieraan matkan hausta aina varauksen vahvistamiseen asti. Yleinen käyttötapaus on Sojern-säiliö uudelleenmarkkinointiin ja mainontaan, mutta mikä tahansa GTM-säiliö toimii samalla tavalla.


  1. Hanki GTM Container ID

    Hanki GTM Container ID (muodossa GTM-XXXXXXX). Jos se tulee kumppanilta kuten Sojern, pyydä nimenomaan GTM Container ID — se eroaa pikseli- tai tagi-ID:stä.

  2. Syötä se Wink-portaaliin

    Kirjaudu sisään osoitteessa app.wink.travel, valitse tilisi ja siirry Customizations-välilehdelle. Liitä GTM Container ID GTM-kenttään ja tallenna. Integraatiosi on nyt käytössä.

  3. (Valinnainen) Lisää GA4 Measurement ID + API-salaisuus palvelinpuolen ostotapahtumia varten

    GTM-säiliöt toimivat kokonaan vieraan selaimessa, joten vahvistettu varaus voi jäädä rekisteröitymättä, jos vieras sulkee välilehden maksun uudelleenohjauksen aikana. Jos säiliösi lataa GA4-omaisuuden ja haluat varmistaa varauksien luotettavan kirjaamisen, syötä myös kyseisen GA4:n Measurement ID ja Measurement Protocol API -salaisuus GTM-kohdassa. Wink lähettää tällöin purchase-tapahtuman palvelinpuolella, kuten on kuvattu GA4 Analytics Integration -oppaassa. Jätä nämä tyhjiksi, jos tarvitset vain selaimessa tapahtuvaa seurantaa.

  4. Vahvista palveluntarjoajasi kanssa

    Jos säiliösi tulee kumppanilta kuten Sojern, ilmoita tilinhoitajallesi, että integraatio on aktiivinen. He voivat tarkistaa omalta puoleltaan, että tagit laukeavat oikein wink.travel-sivustolla kiinteistöllesi ja että data virtaa tilillesi.


Läpinäkyvyyden vuoksi tässä on, mitä Wink konfiguroi tämän integraation toimimiseksi:

  • GTM Container ID -kenttä on saatavilla Wink-portaalin Customizations-välilehdellä. Kun syötät Container ID:n, Wink tarkistaa muodon (GTM-XXXXXXX) ja tallentaa sen turvallisesti kiinteistöösi.
  • Jokaisella sivulla, jolla kiinteistösi on aktiivinen Winkissä, säiliösi upotetaan suoraan sivulle — jakamalla Wink:n oma window.dataLayer — joten se ladataan rinnakkain Wink:n oman säiliön kanssa ilman lisäkonfiguraatiota. Tämä tapahtuu automaattisesti, ilman erillistä työtä Wink-tiimiltä.
  • Säiliösi ladataan asynkronisesti, joten se ei vaikuta sivun latausnopeuteen vieraille.
  • Wink:n oma seuranta ja säiliösi toimivat rinnakkain, lukien samaa jaettua dataLayer-objektia. Jokainen varauksen tapahtuma, jonka Wink seuraa, on samanaikaisesti saatavilla säiliöllesi.
  • Kun kiinteistöäsi ei katsota — esimerkiksi kun vieras selaa toista hotellia Winkissä — säiliötäsi ei ladata, joten se saa vain kiinteistöäsi koskevat tiedot.
  • Jos annoit GA4 Measurement ID:n + API-salaisuuden (kohdassa 3 yllä), vahvistettujen varausten purchase-tapahtuma lähetetään lisäksi palvelinpuolella GA4 Measurement Protocolin kautta, joten myynti kirjautuu, vaikka vieras ei palaisi vahvistussivulle.

Wink työntää GA4-yhteensopivia tapahtumia dataLayer-objektiin koko vieraan matkan ajan. GTM-säiliösi lukee tästä samasta jaetusta dataLayer-objektista, joten kaikki määrittämäsi triggerit tai muuttujat pääsevät käsiksi alla kuvattuihin ominaisuuksiin.

Jokainen tapahtuma noudattaa standardia GA4 Enhanced Ecommerce -rakennetta: ylin event-merkkijono ja ecommerce-objekti. Ennen jokaista push-toimintoa Wink tyhjentää edellisen ecommerce-payloadin estääkseen vanhojen tietojen vuotamisen uusiin triggereihin.


Nämä tapahtumat laukeavat automaattisesti, kun vieras etenee varausputkessa. Määritä GTM-triggerisi Custom Event -triggereiksi, jotka vastaavat alla olevia tapahtumanimiä.

VaiheTapahtumaMilloin laukeaa
1view_item_listHotellin varausnäkymä tai lista latautuu
2view_itemVieras katsoo tiettyä kiinteistön sivua
3add_to_cartVieras lisää huoneen ostoskoriin
4begin_checkoutKassalle/maksusivulle siirrytään
5add_payment_infoVieras valitsee maksutavan
6loginVieras kirjautuu sisään SSO:n kautta
7purchaseVahvistettu varaus
8refundVarauksen peruutus

Laukeaa, kun hotellin varausnäkymä tai lista renderöidään.

{
"event": "view_item_list",
"ecommerce": {
"item_list_id": "featured_hotels",
"item_list_name": "Featured Hotels",
"items": [ ]
}
}

Laukeaa, kun vieras katsoo tiettyä kiinteistöä.

{
"event": "view_item",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}

Laukeaa, kun vieras lisää huoneen ostoskoriin.

{
"event": "add_to_cart",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}

Laukeaa, kun kassalle/maksusivulle siirrytään.

{
"event": "begin_checkout",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"coupon": "SUMMER10",
"items": [ ]
}
}

coupon on mukana vain, jos alennuskoodi on käytössä.


Laukeaa, kun vieras valitsee tai vahvistaa maksutavan.

{
"event": "add_payment_info",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"coupon": "SUMMER10",
"payment_type": "STRIPE",
"items": [ ]
}
}

payment_type täytetään maksun hankkijan tyypistä. coupon on mukana vain, jos alennuskoodi on käytössä.


Laukeaa, kun vieras kirjautuu sisään single sign-on -menetelmällä.

{
"event": "login",
"ecommerce": {
"method": "IAM"
}
}

Laukeaa, kun varaus vahvistetaan.

{
"event": "purchase",
"ecommerce": {
"currency": "USD",
"transaction_id": "bc-a1b2c3d4",
"value": 299.00,
"coupon": "SUMMER10",
"shipping": 0.00,
"tax": 0.00,
"items": [
{
"item_id": "rr-xyz789",
"item_name": "Deluxe Ocean Suite",
"item_brand": "Grand Resort",
"item_category": "GUEST_ROOM",
"price": 299.00,
"quantity": 1,
"property_id": "prop-abc123",
"property_name": "Grand Resort Maldives",
"property_brand": "Grand Collection",
"property_chain": "Luxury Hotels International",
"city_name": "Malé",
"country_code": "MV",
"start_date": "2026-06-01",
"end_date": "2026-06-05",
"num_adults": 2,
"num_children": 0,
"cancellation_policy": "Refundable",
"rate_plan_id": "rp-summer2026",
"room_rate_id": "rr-xyz789",
"room_rate_name": "Summer Escape — Bed & Breakfast",
"num_perks": 2,
"room_location": "Overwater",
"room_view": "Ocean",
"room_classification": "Suite"
}
]
}
}

transaction_id on varauksen yksilöllinen sopimusnumero. coupon, shipping ja tax ovat mukana vain, jos sovellettavissa.


Laukeaa, kun varaus peruutetaan.

{
"event": "refund",
"ecommerce": {
"currency": "USD",
"transaction_id": "bc-a1b2c3d4",
"value": 299.00,
"coupon": "SUMMER10",
"shipping": 0.00,
"tax": 0.00,
"items": [ ]
}
}

transaction_id vastaa samaa purchase-tapahtumaa kyseiselle varaukselle. coupon, shipping ja tax ovat mukana vain, jos sovellettavissa.


Kaikilla tapahtumilla, jotka sisältävät items-taulukon, on sama kohteen skeema. Jokainen ominaisuus on valinnainen, ellei toisin mainita.

Nämä kentät ovat GA4:n natiivisti ymmärtämiä ja näkyvät standardeissa ecommerce-raporteissa ilman lisäkonfiguraatiota.

OminaisuusTyyppiPakollinenKuvaus
item_idstringKylläHuoneen tai tuotteen yksilöllinen tunniste
item_namestringHuoneen tai tuotteen nimi
affiliationstringKumppani- tai myyjän nimi
couponstringKohteeseen sovellettu alennuskoodi
currencystringISO 4217 valuuttakoodi (esim. USD)
creative_namestringKampanjan nimi
creative_slotstringKampanjan sijoituspaikka
discountnumberSovellettu alennusmäärä
indexnumberSijainti listalla (1-pohjainen)
item_brandstringHotelli tai tuotemerkki
item_categorystringTuotetyyppi — esim. GUEST_ROOM, ACTIVITY, ATTRACTION, MEETING_ROOM, RESTAURANT, SPA
item_list_idstringListan tunniste, johon kohde kuuluu
item_list_namestringListan näyttönimi
location_idstringKiinteistön maantieteelliset koordinaatit
pricenumberYksikköhinta
promotion_idstringKampanjan tunniste
promotion_namestringKampanjan näyttönimi
quantitynumberMäärä (oletus 1)

Nämä parametrit sisältävät Wink-spesifisen varauskontekstin. GA4 ei automaattisesti näytä niitä raporteissa — sinun tulee rekisteröidä jokainen niistä kohdekohtaiseksi mukautetuksi ulottuvuudeksi GA4-omaisuudessasi ennen kuin ne näkyvät tutkimuksissa tai standardiraporteissa. Katso Mukautetut ulottuvuudet GA4:ssa alla asennusohjeet.

OminaisuusTyyppiKuvaus
property_idstringWink-kiinteistön tunniste
property_namestringKiinteistön näyttönimi
property_brandstringKiinteistön brändi
property_chainstringKiinteistöketju
property_url_namestringKiinteistön URL-ystävällinen tunniste
city_namestringKaupunki, jossa kiinteistö sijaitsee
country_codestringISO 3166-1 alpha-2 -maakoodi
start_datestringSaapumispäivä muodossa YYYY-MM-DD
end_datestringLähtöpäivä muodossa YYYY-MM-DD
num_adultsnumberAikuisten määrä varauksessa
num_childrennumberLasten määrä varauksessa
cancellation_policystringYksi seuraavista: Refundable, Non-Refundable, Refundable-With-Restrictions, Non-Refundable-With-Restrictions
rate_plan_idstringHintasuunnitelman tunniste
room_rate_idstringTietyn huonehinnan tunniste
room_rate_namestringHuonehinnan näyttönimi
num_perksnumberHintaan sisältyvien etujen määrä
room_locationstringHuoneen sijaintikuvaus (esim. Overwater, Garden)
room_viewstringHuoneen näkymäkuvaus (esim. Ocean, City)
room_classificationstringHuoneen luokitus tai taso (esim. Suite, Standard)
bed_typestringHuoneen vuodejärjestely (esim. King, Twin)

GA4 ei huomioi mukautettuja kohdeparametreja raporteissa, ennen kuin rekisteröit ne nimenomaan kohdekohtaisiksi mukautetuiksi ulottuvuuksiksi. Sinun tarvitsee rekisteröidä vain ne parametrit, joita aiot käyttää raporteissa — kaikkia 20 ei tarvitse rekisteröidä.

  1. Avaa Mukautetut määritelmät

    GA4:ssa siirry kohtaan Admin (vasen alakulman rataskuvake) → valitse omaisuutesi → Data displayCustom definitions.

  2. Luo uusi mukautettu ulottuvuus

    Klikkaa Create custom dimensions.

  3. Täytä ulottuvuuden tiedot

    • Dimension name — ihmisen luettava nimi, joka näkyy GA4-raporteissa (katso alla oleva taulukko)
    • Scope — valitse Item
    • Event parameter — tarkka parametri nimi, kuten dataLayerissa (katso alla oleva taulukko)
    • Description — valinnainen, mutta suositeltava
  4. Tallenna ja toista

    Klikkaa Save ja toista jokaiselle seurattavalle parametrille.

Käytä alla olevaa taulukkoa viitteenä mukautettuja ulottuvuuksia luodessasi. Event parameter -arvon on oltava täsmälleen sama — GA4 on kirjainkoolla herkkä.

Ulottuvuuden nimiEvent parameterTyyppi
Kiinteistön tunnisteproperty_idTeksti
Kiinteistön nimiproperty_nameTeksti
Kiinteistön brändiproperty_brandTeksti
Kiinteistöketjuproperty_chainTeksti
Kiinteistön URL-nimiproperty_url_nameTeksti
Kaupungin nimicity_nameTeksti
Maakoodicountry_codeTeksti
Saapumispäivästart_dateTeksti
Lähtöpäiväend_dateTeksti
Aikuisten määränum_adultsNumero
Lasten määränum_childrenNumero
Peruutusehdotcancellation_policyTeksti
Hintasuunnitelman tunnisterate_plan_idTeksti
Huonehinnan tunnisteroom_rate_idTeksti
Huonehinnan nimiroom_rate_nameTeksti
Etujen määränum_perksNumero
Huoneen sijaintiroom_locationTeksti
Huoneen näkymäroom_viewTeksti
Huoneen luokitusroom_classificationTeksti
Vuodetyyppibed_typeTeksti

Seuraavat tapahtumat ovat saatavilla Wink:n dataLayerissa, mutta eivät kuulu standardiin varausputkeen. Ne voivat laueta muista vuorovaikutuksista alustalla.

{
"event": "add_to_wishlist",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}
{
"event": "remove_from_cart",
"ecommerce": {
"currency": "USD",
"value": 299.00,
"items": [ ]
}
}
{
"event": "select_item",
"ecommerce": {
"item_list_id": "featured_hotels",
"item_list_name": "Featured Hotels",
"items": [ ]
}
}
{
"event": "view_cart"
}

Tässä tapahtumassa ei ole ecommerce-objektia.

{
"event": "view_promotion",
"ecommerce": {
"creative_name": "Summer Banner",
"creative_slot": "hero",
"promotion_id": "promo_001",
"promotion_name": "Summer Sale",
"items": [ ]
}
}
{
"event": "select_promotion",
"ecommerce": {
"creative_name": "Summer Banner",
"creative_slot": "hero",
"promotion_id": "promo_001",
"promotion_name": "Summer Sale",
"items": [ ]
}
}
{
"event": "search",
"ecommerce": {
"search_term": "beachfront resort"
}
}
{
"event": "select_content",
"ecommerce": {
"content_type": "hotel",
"content_id": "prop_12345"
}
}
{
"event": "share",
"ecommerce": {
"method": "copy_link",
"content_type": "hotel",
"item_id": "prop_12345"
}
}
{
"event": "sign_up",
"ecommerce": {
"method": "email"
}
}
{
"event": "generate_lead",
"ecommerce": {
"currency": "USD",
"value": 0.00
}
}
{
"event": "join_group",
"ecommerce": {
"group_id": "group_abc"
}
}
{
"event": "earn_virtual_currency",
"ecommerce": {
"virtual_currency_name": "WinkPoints",
"value": 100
}
}
{
"event": "spend_virtual_currency",
"ecommerce": {
"virtual_currency_name": "WinkPoints",
"value": 50,
"item_name": "Room Upgrade"
}
}
{
"event": "level_start",
"ecommerce": {
"level_name": "Gold"
}
}
{
"event": "level_end",
"ecommerce": {
"level_name": "Gold",
"success": true
}
}
{
"event": "level_up",
"ecommerce": {
"level": 2,
"character": "traveler"
}
}
{
"event": "post_score",
"ecommerce": {
"score": 980,
"level": 2,
"character": "traveler"
}
}
{
"event": "unlock_achievement",
"ecommerce": {
"achievement_id": "first_booking"
}
}
{
"event": "tutorial_begin",
"ecommerce": {}
}
{
"event": "tutorial_complete",
"ecommerce": {}
}

Tämä on Wink-spesifinen tapahtuma — ei osa standardia GA4-tapahtumasarjaa. Se työntyy jokaisella sivunavigoinnilla ja sisältää laitteen ja istunnon kontekstin. Se ei sisällä ecommerce-objektia.

{
"event": "virtualPageView",
"device": "Desktop",
"deviceAgent": "Mozilla/5.0 ...",
"os": "MacOS",
"path": "/hotels/grand-resort",
"title": "Grand Resort — Wink",
"userId": "user_abc123",
"startDate": "2026-06-01",
"endDate": "2026-06-05",
"guests": "2",
"rooms": "1"
}
OminaisuusKuvaus
deviceHavaitun laitteen tyyppi — Desktop, Android, iPhone, iPad tai vastaava
deviceAgentRaaka käyttäjäagenttijono
osHavaittu käyttöjärjestelmä — Windows, MacOS, Linux, UNIX
pathNykyisen sivun polku
titleNykyisen sivun otsikko
userIdTunnistettu käyttäjätunniste (pois jätetty, jos ei kirjautunut)
startDateSaapumispäivä nykyisestä hakusessiosta
endDateLähtöpäivä nykyisestä hakusessiosta
guestsVieraiden määrä nykyisessä hakusessiosta
roomsHuoneiden määrä nykyisessä hakusessiosta