Fejlesztés

dataLayer specifikáció fejlesztőnek: hogyan kérd meg úgy, hogy elsőre jó legyen

Így írj dataLayer specifikációt fejlesztőnek eseménynévvel, paraméterekkel, push-kóddal, lead- és kosársablonnal, valamint GTM átvételi tesztlistával.

Scheo · · olvasási idő ~10 perc · Szerző: Schmidt Péter

Röviden: A „mérjük az űrlapot” kérés túl sok döntést hagy a fejlesztőre. Egy jó dataLayer specifikáció minden eseményhez megadja a nevet, a pontos kiváltó pillanatot, a paramétereket adattípussal, és egy bemásolható push-kódot. Az átvételt a GTM előnézeti módjában egy előre megírt tesztlistával érdemes lezárni.
Kulcs tanulságok
  • Az eseménynek a sikeres beküldés vagy a sikeres kosárba helyezés után kell tüzelnie, a gombra kattintás ehhez kevés.
  • A specifikációban minden paraméterhez szerepeljen a név, az adattípus, a kötelezőség és egy példaérték.
  • Ahol a GA4-nek van ajánlott eseménye, például generate_lead vagy add_to_cart, azt a nevet és szerkezetet érdemes használni.
  • Személyazonosításra alkalmas adat (név, e-mail-cím, telefonszám) nem kerülhet a dataLayerbe.
  • Az átvétel akkor kész, ha a GTM előnézeti módjában minden esemény a megadott néven, egyszer és helyes típusú paraméterekkel jelenik meg.

Miért nem elég azt kérni a fejlesztőtől, hogy „mérjük az űrlapot”?

Ez a mondat öt-hat döntést hagy nyitva, és a fejlesztő mindegyiket a saját logikája szerint hozza meg. Mi számít mérendő eseménynek, a gombra kattintás vagy a sikeres beküldés? Milyen néven érkezzen az esemény? Kell-e mellé az űrlap azonosítója, a kiválasztott szolgáltatás, egy becsült érték? Mi történjen, ha a validáció elbukik? A fejlesztő ezekre ésszerű, de tőled független válaszokat ad, és hogy ezek megfelelnek-e neked, az csak a GA4-riportban vagy a hirdetési konverzióknál derül ki, sokszor hetekkel később.

dataLayer specifikáció fejlesztőnek: hogyan kérd meg úgy, hogy elsőre jó legyen
dataLayer specifikáció fejlesztőnek: hogyan kérd meg úgy, hogy elsőre jó legyen

Saját tapasztalat. Átvételkor a leggyakrabban azt látjuk, hogy az esemény a gomb megnyomására tüzel, így a hibás vagy félbehagyott kitöltés is konverziónak számít. A második leggyakoribb hiba, hogy ugyanaz az esemény oldalanként más néven jön (form_submit, formSubmit, ajanlatkeres), és a GTM-ben egyik trigger sem kapja el mindet. Mindkettő megelőzhető egy írott specifikációval, amely ezekre a kérdésekre előre válaszol.

Mi a dataLayer, és mit kell róla tudnia a marketingesnek?

A dataLayer egy JavaScript-tömb az oldalon. A weboldal kódja üzeneteket tesz bele, a Google Tag Manager pedig ezekből olvas, és ezek alapján indítja el a címkéket.

Hivatalosan igazolt. A Google Tag Manager dokumentációja szerint az adatréteget a window.dataLayer = window.dataLayer || []; sor hozza létre, új adatot pedig a dataLayer.push() hívással adunk hozzá. Ha a push tartalmaz egy event kulcsot, a GTM-ben az azonos nevű egyéni esemény (Custom Event) trigger reagálni tud rá, a többi kulcsot pedig adatréteg-változóval (Data Layer Variable) olvassuk ki. A GA4 szabályai szerint az eseménynév betűvel kezdődik, csak betűt, számot és aláhúzást tartalmazhat, és legfeljebb 40 karakter hosszú.

A marketingesnek ebből három dolog fontos. A fejlesztő az adat átadásáért felel, a GA4-be vagy a hirdetési fiókba küldést te állítod be a GTM-ben. Az esemény neve és a kulcsok nevei szerződésként működnek, és ha valamelyik megváltozik, a mérés csendben leáll. Végül a dataLayer tartalma bárki számára látható a böngésző konzoljában, ezért személyes adat nem kerülhet bele.

Milyen elemekből áll egy jól megírt dataLayer specifikáció?

Egy jó specifikáció minden eseményhez megadja a nevet, a pontos kiváltó pillanatot, a paraméterek listáját típussal és kötelezőséggel, és egy bemásolható példa-kódot. Ha ezek közül bármelyik hiányzik, a fejlesztőnek találgatnia kell.

  1. Eseménynév. Kisbetűs, aláhúzással tagolt angol név (snake_case). Ahol a GA4-nek van ajánlott eseménye, használd azt (generate_lead, add_to_cart), mert a riportok egy része ezekre a nevekre épül.
  2. Mikor tüzel. Egy mondat, ami kizárja a félreértést, például „a szerver sikeres válasza után, a köszönőüzenet megjelenésekor, egyszer”. Írd le azt is, mikor nem tüzelhet (validációs hiba, dupla kattintás, oldalfrissítés).
  3. Paraméterek. Táblázatszerűen a név, az adattípus, a kötelező vagy opcionális jelölés, egy példaérték és a megengedett értékek.
  4. Adattípus. A szám legyen szám (2), a szöveg szöveg ('HUF'). A szóközzel tagolt, idézőjelbe tett összeg szövegnek számít, és a GA4-ben nem összegezhető.
  5. Példa push-kód. Konkrét értékekkel, pontosan úgy, ahogy a böngészőben meg kell jelennie.
  6. Előfordulás. Azoknak az oldalaknak vagy sablonoknak a listája, ahol az eseménynek tüzelnie kell.
  7. Átvételi feltétel. Az, ami alapján kimondod, hogy a munka kész.

Szakmai feltételezés. A specifikáció egyetlen közös dokumentumban (táblázatban vagy wiki-oldalon) működik a legjobban, verziószámmal és dátummal. Ha a fejlesztő e-mailből, chatüzenetből és hívásjegyzetből rakja össze a feladatot, jó eséllyel kimarad valami.

Hogyan néz ki egy dataLayer sablon lead-űrlapra?

A lead-űrlapnál az a lényeg, hogy az esemény csak sikeres beküldés után, egyszer tüzeljen, és azonosítsa, melyik űrlapról jött a megkeresés.

A generate_lead esemény specifikációja

A példa push-kód a sikeres válasz ágában.

window.dataLayer = window.dataLayer || []; dataLayer.push({ event: 'generate_lead', form_id: 'ajanlatkeres_fooldal', form_name: 'Ajánlatkérés', lead_type: 'ajanlat', service: 'weboldal_karbantartas' });

Hivatalosan igazolt. A Google Analytics szabályai tiltják, hogy személyazonosításra alkalmas adat (név, e-mail-cím, telefonszám) kerüljön a mérésbe. A specifikációba ezért írd bele kifejezetten, hogy a beírt mezőértékek nem kerülhetnek a dataLayerbe. A hirdetési rendszerek bővített konverziójának saját, dokumentált beállítási módja van, ezt ne keverd az általános eseménnyel.

Saját tapasztalat. Oldalújratöltés nélküli (AJAX-os) űrlapoknál a GTM beépített űrlapküldés-triggere gyakran nem jelez, vagy a sikertelen próbálkozást is elkapja. Ilyenkor a fejlesztő által a sikeres válasz ágába tett push a megbízható megoldás.

Hogyan néz ki egy dataLayer sablon kosárba helyezésre?

Kosárba helyezésnél a GA4 ajánlott add_to_cart eseményét és annak ecommerce objektumát érdemes követni, mert a webshop-riportok erre a szerkezetre épülnek.

Hivatalosan igazolt. A GA4 e-kereskedelmi dokumentációja szerint az add_to_cart eseménynél a currency, a value és az items tömb a meghatározó paraméterek, és minden tételnél meg kell adni az item_id vagy az item_name közül legalább az egyiket. A Google azt is javasolja, hogy egy új e-kereskedelmi esemény előtt a kód ürítse az előző ecommerce objektumot, különben a korábbi esemény adatai átkerülhetnek az újba.

Az add_to_cart esemény specifikációja

A példa push-kód, az ürítéssel együtt. A számok csak illusztrációk.

dataLayer.push({ ecommerce: null }); dataLayer.push({ event: 'add_to_cart', ecommerce: { currency: 'HUF', value: 25980, items: [{ item_id: 'SKU-1042', item_name: 'Kerámia bögre', item_variant: 'kék', price: 12990, quantity: 2 }] } });

Saját tapasztalat. Ha a feedben szereplő azonosító eltér a dataLayer item_id értékétől, a hirdetési rendszerek gyakran nem tudják a konverziót a termékhez kötni. Ezt egy mondattal rögzíteni a specifikációban sokkal kevesebb munka, mint utólag kideríteni. Akciós terméknél írd le azt is, hogy a price a ténylegesen fizetendő egységár legyen, mert erre a fejlesztő magától ritkán kérdez rá.

Milyen kérdéseket tegyen fel a fejlesztő az átvételkor?

A jó átvétel kérdésekkel kezdődik. Ha a fejlesztő nem kérdez, add át neki ezt a listát, mert a válaszok a legtöbb későbbi hibát előre kiszűrik.

Szakmai feltételezés. A hozzájárulásnál általában az a legtisztább felállás, ha a dataLayer-push mindig megtörténik, és a címkék viselkedéséről a Google hozzájárulási mód (Consent Mode) és a GTM beállításai döntenek. Ez sütikezelőnként eltérhet, ezért a választ az adott eszköz dokumentációja alapján érdemes meghozni.

Hogyan teszteld az átadást a GTM előnézeti módjában?

Az átvétel akkor kész, ha a GTM előnézeti módjában (Tag Assistant) minden esemény a megadott néven, a megadott pillanatban, egyszer és helyes adattípusú paraméterekkel jelenik meg, és a hozzá tartozó címke elindul.

Hivatalosan igazolt. Az előnézeti mód a bal oldali idővonalon listázza a dataLayer üzeneteit. Eseményenként megmutatja, mely címkék indultak el és melyek nem, a Változók és az Adatréteg (Data Layer) fülön pedig az adott pillanatban érvényes értékeket látod.

Az átvételi tesztlistát lépésenként érdemes végigvinni.

  1. Nyisd meg az előnézetet a tesztelendő URL-lel, és ellenőrizd, hogy a Tag Assistant csatlakozott.
  2. Töltsd ki az űrlapot hibásan, és küldd be. Az idővonalon nem jelenhet meg generate_lead.
  3. Töltsd ki helyesen. Pontosan egy generate_lead jelenjen meg, a köszönőüzenettel egy időben.
  4. Kattints az eseményre, nyisd meg az Adatréteg fület, és vesd össze minden kulcs nevét és értékét a specifikációval, betűre.
  5. Ellenőrizd a típusokat. A szám idézőjel nélkül jelenik meg, a szöveg idézőjelben.
  6. Nézd meg, hogy egyik paraméterbe sem került név, e-mail-cím vagy telefonszám.
  7. Frissítsd a köszönőoldalt, és nyomd meg kétszer gyorsan a küldés gombot. Egyik sem okozhat második eseményt.
  8. Kosárnál adj hozzá egy terméket a terméklapról, egyet a listanézetből, és egy több változatú terméket másik változattal. Mindháromnál nézd meg az items tömböt, és azt, hogy előtte megjelent-e az ecommerce ürítése.
  9. Számold utána, hogy a value egyezik az ár és a mennyiség szorzatával.
  10. A Címkék nézetben ellenőrizd, hogy a GA4- és a hirdetési címke az eseményre elindult, máshol pedig nem.
  11. A GA4 DebugView nézetében nézd meg, hogy az esemény a paraméterekkel együtt beérkezett.
  12. Ismételd meg mobilon is, ha a mobilos űrlap vagy kosár külön kódot használ.

Saját tapasztalat. A tesztet érdemes képernyőképekkel dokumentálni, és a specifikáció mellé tenni. Ha hónapok múlva eltűnnek a konverziók, ebből gyorsan kiderül, mi változott az átadás óta.

Mit írj még bele, hogy a mérés hosszú távon is működjön?

A specifikációt élő dokumentumként érdemes kezelni, verziókövetéssel, felelősökkel és rögzített névkonvencióval, mert a mérési hibák nagy része egy későbbi weboldal-módosításnál keletkezik.

Szakmai feltételezés. Egy jól megírt specifikáció nem garantál hibátlan mérést, de jó eséllyel lerövidíti az átadást, és a hibákat még az élesítés előtt hozza felszínre, amikor a javításuk a legkisebb munka.

Források és további olvasnivalók

Gyakori kérdések

Ki írja a dataLayer specifikációt, a marketinges vagy a fejlesztő?

Jellemzően a marketinges vagy a mérésért felelős szakember írja, mert ő tudja, milyen adatra lesz szükség a riportokban és a hirdetéseknél. A fejlesztő az átvételkor kérdez vissza, és jelzi, ha valami technikailag nem oldható meg.

Miért nem elég a GTM beépített űrlapküldés-triggere?

Oldalújratöltés nélküli űrlapoknál a beépített trigger saját tapasztalatunk szerint gyakran nem jelez, vagy a sikertelen beküldést is elkapja. A sikeres szerverválasz után futó dataLayer-push megbízhatóbb.

Kerülhet-e e-mail-cím vagy telefonszám a dataLayerbe?

Az általános eseménybe nem, mert a Google Analytics szabályai tiltják a személyazonosításra alkalmas adatok küldését. A hirdetési rendszerek bővített konverziójához külön, dokumentált beállítás tartozik.

Számít-e, hogy a value számként vagy szövegként érkezik?

Igen. A szövegként érkező összeg a GA4-ben nem összegezhető, ezért a specifikációban az értéket és az árat számként, pénznemjel és szóköz nélkül kell kérni.

Miért kell az ecommerce objektumot üríteni az add_to_cart előtt?

A Google e-kereskedelmi dokumentációja ezt javasolja, mert enélkül egy korábbi esemény adatai átkerülhetnek az új eseménybe. Az ürítés egy rövid push, amit a fejlesztő közvetlenül az esemény elé tesz.

Mikor tekinthető késznek a fejlesztő munkája?

Akkor, ha a GTM előnézeti módjában minden esemény a megadott néven, egyszer, a megfelelő pillanatban és helyes típusú paraméterekkel jelenik meg, és a GA4 DebugView nézetében is beérkezik.

Források és további olvasnivalók

Ezen az oldalon a hivatalosan igazolt információt elsődleges forrásokból építjük fel; a saját tapasztalatot és a szakmai becslést mindig külön jelöljük a szövegben.

A cikk szerzője

Schmidt Péter, online marketing szakértő, a Scheo Tanácsadó Kft. alapítója. Székesfehérvárról, országosan dolgozó csapattal végzünk keresőoptimalizálást, AI-láthatóság mérést, Google és Meta hirdetéskezelést, weboldalkészítést. Amit itt leírunk, azt ügyfélmunkában is használjuk. Rólunk bővebben · Szolgáltatásaink

Kapcsolódó olvasnivaló

Kapcsolódó

A/B teszt indítása előtt: a mérési előfeltételek ellenőrzése

Kapcsolódó

Ügynöki vásárlás: mire készítsd fel a webshopodat

Kapcsolódó

A fejlesztőm elérhetetlenné vált - ki veszi át a wordpress oldalam karbantartását?: amit tudnod kell róla

Helyi szolgáltatás a környékeden

Országosan dolgozunk, online és személyesen. Válaszd ki a városodat, és nézd meg, hogyan segítünk helyben:

Online marketing & AI SEO SzolnokOnline marketing & AI SEO TatabányaOnline marketing & AI SEO KaposvárOnline marketing & AI SEO BékéscsabaOnline marketing & AI SEO EgerOnline marketing & AI SEO Zalaegerszeg

Weboldalkészítés városra bontva

Ha először a honlap kell, itt városonként arról írtunk:

Weboldalkészítés SalgótarjánWeboldalkészítés SzékesfehérvárWeboldalkészítés BudapestWeboldalkészítés VeszprémWeboldalkészítés DunaújvárosWeboldalkészítés Győr

Mind a 20 városunk és az összes szolgáltatás →

15 perces AI-láthatósági gyorselemzés - díjmentesen

Megnézzük három, számodra fontos keresőkérdésnél, hogy megjelenik-e a céged a ChatGPT, a Gemini és a Google AI-válaszaiban, mely versenytársakat ajánlják helyetted, és melyik három területen érdemes először javítani. A weboldaladat előzetesen átnézzük, tehát nem sablonos, automata riportot kapsz.

Adataidat kizárólag a kapcsolatfelvételhez használjuk. Kapcsolat: m@rketinges.hu
💬 Konzultáció