Digital Marketing
Data Layer (GTM)
TL;DR: Data Layer adalah objek JavaScript bernama
window.dataLayeryang menjadi sumber kebenaran untuk semua event tracking di Google Tag Manager (GTM). Marketer push data terstruktur sepertipurchase,user_id, atauitem_category, lalu GTM bertugas mengirimnya ke GA4, Meta, atau tag lain tanpa mengotak-atik kode HTML.
Apa itu Data Layer?
Data Layer, biasa disebut dataLayer, adalah array objek JavaScript yang berisi event dan parameternya. Konsep ini diperkenalkan Google Tag Manager untuk memisahkan data tracking dari logika tampilan. Developer cukup push event ke dataLayer satu kali, lalu marketer mengkonfigurasi tag mana yang membaca event itu di GTM.
Pendekatan ini berlawanan dengan hard-coded tracking di mana setiap tool (GA4, Meta, TikTok) butuh snippet sendiri di halaman. Dengan dataLayer, satu push bisa men-trigger banyak tag, dan ganti vendor analitik tidak perlu redeploy website. Ini sangat berharga untuk situs Next.js karena event dapat di-push di hook React tanpa menyentuh layout.
Struktur Push Event
| Komponen | Contoh |
|---|---|
event | purchase, add_to_cart, form_submit |
ecommerce.value | 129000 |
ecommerce.currency | IDR |
ecommerce.items[] | array produk dengan item_id, item_name, price |
user_id | Hash user logged-in untuk first-party data |
Contoh push minimal:
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({
event: 'purchase',
ecommerce: { value: 129000, currency: 'IDR' }
});
GTM trigger akan mendengar event: purchase dan mengeksekusi tag terkait. Skema ini kompatibel dengan GTM server-side untuk forwarding lanjutan ke Meta Conversion API atau GA4 server-side.
Kenapa Penting?
Tanpa dataLayer rapi, tracking jadi titik patah utama saat ganti tools. Vito Atmo sering menemukan kasus di mana brand pindah dari Universal Analytics ke GA4 butuh berminggu-minggu hanya untuk re-implementasi event karena setiap tag hard-coded. Dengan dataLayer terstandardisasi, migrasi cukup ubah mapping di GTM.
Bagi marketer Indonesia yang bekerja lintas tim, dataLayer juga menjadi kontrak antara developer dan marketing. Developer push data dengan nama dan tipe yang disepakati, marketer bebas mengkonfigurasi tag tanpa request ke developer setiap kali butuh event baru. Untuk pemilik SaaS, data layer menjadi fondasi observability marketing yang scalable.
Spesifikasi lengkap di Google Tag Manager Data Layer documentation.
Pertanyaan Umum
Apakah dataLayer hanya untuk GTM?
Tidak, meskipun GTM yang mempopulerkannya. Adobe Launch dan Tealium pakai konsep serupa. Untuk situs Next.js tanpa GTM, Anda tetap bisa pakai struktur dataLayer sendiri lalu push ke endpoint analitik manual.
Bagaimana hindari double-tracking dengan SPA Next.js?
Pastikan event push hanya jalan di client-side dan setelah hydration selesai. Untuk page view, gunakan event page_view manual di useEffect saat route berubah, bukan auto pageview GTM yang dirancang untuk MPA.
Istilah Terkait