Блог · PPC

dataLayer у GTM що це і навіщо маркетологу

Пояснює маркетологу, навіщо dataLayer між сайтом і тегами, і як зібрати з розробкою словник подій без хаосу у звітах.

~2 хв читання PPC

Сайт передає структуровані дані через dataLayer у Google Tag Manager і далі в аналітику

Контекст і терміни

Пакети даних event ecommerce user з CMS у контейнер GTM
dataLayer — спільна «мова» між сайтом і тегами. Без неї маркетолог залежить від хардкоду в кожній кнопці.

dataLayer — це JavaScript-масив на сторінці, куди сайт «кладе» структуровані дані про дії користувача. Google Tag Manager читає цей шар і вже з нього збирає теги GA4, Ads, пікселі. Офіційний опис — у документації dataLayer.

Маркетологу dataLayer потрібен не як «код заради коду», а як контракт із розробкою. Без нього кожна нова кнопка чи форма знову вимагає ручного втручання в шаблон, а звіти в GA4 починають роз’їжджатися.

  • event — ім’я події (generate_lead, purchase).
  • ecommerce / value / currency — гроші й склад кошика.
  • user / user_id — за потреби для крос-девайс (обережно з PII).
  • page / content — тип шаблону, категорія, author.

Що зробити на практиці

Чекліст полів dataLayer які маркетолог просить у розробників
Просіть у розробки зрозумілий словник. event, value, currency, form_id, user_id за потреби.
  1. Опишіть 5–10 бізнес-дій (лід, покупка, дзвінок, підписка) і дайте кожній одне канонічне event.
  2. Передайте розробці таблицю полів. Що обов’язково, що опційно, приклад JSON для кожної дії.
  3. Домовтеся, що dataLayer.push відбувається до або синхронно з дією, а не «коли зручно після редіректу».
  4. У GTM зробіть змінні Data Layer Variable під ці поля й тригери Custom Event.
  5. Підключіть GA4 Event tags до тих самих імен, що в словнику конверсій.
  6. Зафіксуйте власника словника (маркетинг + розробка) і забороніть «одноразові» event-імена в тікетах.

Мінімальний приклад для ліда:

dataLayer.push({
  event: 'generate_lead',
  form_id: 'contacts',
  lead_type: 'callback',
  value: 0,
  currency: 'UAH'
});

Типові помилки та ризики

Порожні поля та зламані теги через некоректний dataLayer
Типові збої. Різні імена подій, відсутній value, push після кліку тега, дубль dataLayer.
  • Різні назви однієї дії (lead, formSubmit, generate_lead).
  • Push після того, як GTM уже відпрацював клік. Тег не бачить нових даних.
  • Немає value/currency на purchase.
  • Подвійний dataLayer (тема + плагін) або очищення масиву скриптом «оптимізації».
  • Персональні дані в відкритому вигляді (email, телефон) без потреби.
  • Маркетинг просить «усі кліки», замість короткого списку бізнес-подій.

Як перевірити результат

GTM Preview і GA4 DebugView з підтвердженням даних з dataLayer
Спочатку Preview у GTM, потім DebugView у GA4. Одна дія користувача має дати очікуваний пакет даних.
  • GTM Preview. У вкладці Data Layer після дії видно ваш об’єкт з очікуваними ключами.
  • Tags Fired. Потрібні теги спрацювали один раз, не двічі.
  • GA4 DebugView. Та сама подія з параметрами доходить до аналітики.
  • Порівняйте з CRM/заявками за тестовий день. Порядок величин має збігатися.
  • Регресія після релізу фронту. Новий шаблон форми не «з’їв» push.

Висновок

dataLayer у GTM — це міст між сайтом і вимірюванням. Маркетологу він дає стабільні події для GA4 і конверсій, розробці — чітке ТЗ, бізнесу — менше сюрпризів у звітах. Почніть зі словника подій, закрийте ключові поля й перевіряйте Preview + DebugView. Якщо потрібна схема dataLayer під ліди чи e-commerce — команда SEO-Studio допоможе з проєктуванням і впровадженням.