Cara Mengatur Google Tag Manager dan Menemukan GTM ID Anda
Google Tag Manager (GTM) adalah sistem manajemen tag (TMS) gratis dari Google yang memungkinkan Anda menerapkan dan mengelola cuplikan pelacakan JavaScript — yang disebut tag — di situs web Anda melalui antarmuka web terpusat, tanpa menyentuh kode sumber situs Anda secara langsung. GTM container ID Anda (diformat sebagai GTM-XXXXXXX) adalah pengenal unik yang menghubungkan cuplikan container yang terpasang di situs web Anda ke akun GTM Anda, dan diperlukan setiap kali Anda mengintegrasikan GTM dengan platform eksternal seperti Google Analytics 4, Meta Pixel, atau konsumen lapisan data pihak ketiga mana pun.
Panduan ini mencakup proses pengaturan lengkap dari awal hingga akhir: pembuatan akun dan container, pemasangan cuplikan di berbagai platform, menemukan container ID Anda, dan langkah-langkah verifikasi pasca-pemasangan yang penting yang sering dilewatkan oleh sebagian besar tutorial.
Apa Itu Google Tag Manager dan Mengapa Penting untuk Arsitektur Situs
Sebelum menyentuh konfigurasi apa pun, ada baiknya memahami apa yang sebenarnya dilakukan GTM di tingkat infrastruktur. Ketika browser memuat halaman Anda, cuplikan container GTM mengirimkan permintaan ke https://www.googletagmanager.com/gtm.js?id=GTM-XXXXXXX. Server Google mengembalikan bundel JavaScript yang dikompilasi yang hanya berisi tag, pemicu, dan variabel yang telah Anda publikasikan di versi container Anda saat ini. Ini berarti:
- Tidak ada skrip pelacakan yang dikodekan secara keras yang tersebar di seluruh template HTML Anda.
- Pemicuan tag bersifat kondisional — pemicu mengevaluasi peristiwa DOM, pola URL, atau JavaScript kustom sebelum tag dieksekusi.
- Kontrol versi sudah terintegrasi — setiap versi container yang diterbitkan disimpan, dan Anda dapat melakukan rollback secara instan.
- Satu container dapat menampung ratusan tag dari berbagai vendor, semuanya dikelola dari satu dasbor.
Arsitektur ini sangat berharga ketika situs Anda berjalan di lingkungan VPS Hosting di mana Anda mengontrol seluruh tumpukan, karena ini memisahkan instrumentasi pemasaran dari pipeline deployment Anda sepenuhnya.
Langkah 1: Buat Akun dan Container Google Tag Manager
Akun vs. Container — Memahami Hierarki
GTM menggunakan hierarki dua tingkat:
- Akun: Biasanya mewakili perusahaan atau organisasi Anda. Satu akun per bisnis adalah praktik standar.
- Container: Mewakili satu unit yang dapat diterapkan — biasanya satu situs web, satu aplikasi seluler, atau satu properti AMP. Satu akun dapat menampung beberapa container.
Mencampuradukkan kedua tingkat ini adalah kesalahan umum. Jika Anda mengelola pelacakan untuk shop.example.com dan blog.example.com sebagai properti terpisah, keduanya harus menjadi container terpisah di bawah akun yang sama — bukan akun terpisah.
Membuat Akun
- Navigasikan ke tagmanager.google.com dan masuk dengan akun Google yang memiliki atau memiliki akses admin ke properti Google Analytics Anda.
- Klik Buat Akun.
- Masukkan Nama Akun Anda (nama perusahaan atau merek Anda).
- Pilih Negara Anda.
- Biarkan Bagikan data secara anonim dengan Google dicentang atau hapus centangnya sesuai persyaratan kebijakan privasi Anda.
Mengonfigurasi Container
Dalam alur pembuatan yang sama:
- Masukkan Nama Container — gunakan domain lengkap (mis.,
example.com) untuk kejelasan. - Di bawah Platform target, pilih opsi yang sesuai:
| Opsi Platform | Kasus Penggunaan |
|---|---|
| — | — |
| Web | Situs web HTML/JavaScript standar |
| iOS | Aplikasi iOS native menggunakan Firebase SDK |
| Android | Aplikasi Android native menggunakan Firebase SDK |
| AMP | Accelerated Mobile Pages |
| Server | Penandaan sisi server (GTM server container) |
Untuk sebagian besar proyek web, pilih Web.
- Klik Buat dan terima Persyaratan Layanan Google Tag Manager. Jika Anda beroperasi di bawah yurisdiksi GDPR, baca Amandemen Pemrosesan Data sebelum menerima.
Setelah menerima, GTM segera menampilkan dua cuplikan kode container Anda. Jangan tutup jendela ini sebelum menyalinnya.
Langkah 2: Pasang Cuplikan Container GTM di Situs Web Anda
GTM memerlukan dua cuplikan kode terpisah yang ditempatkan di lokasi tertentu. Menempatkannya secara tidak benar adalah salah satu kesalahan implementasi yang paling umum dan dapat menyebabkan tag terpicu terlambat, melewatkan tampilan halaman, atau gagal sepenuhnya di browser tertentu.
Dua Cuplikan yang Diperlukan
Cuplikan 1 — Penempatan <head> (JavaScript):
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXXXXX');</script>
<!-- End Google Tag Manager -->Tempatkan ini setinggi mungkin di <head> — idealnya segera setelah tag pembuka <head>.
Cuplikan 2 — Penempatan <body> (fallback noscript):
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-XXXXXXX"
height="0" width="0"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->Tempatkan ini segera setelah tag pembuka <body>. iframe <noscript> ini adalah fallback untuk browser dengan JavaScript dinonaktifkan — ini memastikan pemicuan tag dasar tetap terjadi melalui pemuatan piksel iframe.
Catatan penting: Ganti GTM-XXXXXXX dengan container ID Anda yang sebenarnya di kedua cuplikan.
Pemasangan di WordPress
WordPress adalah CMS yang paling umum untuk penerapan GTM. Anda memiliki tiga metode:
Metode A — functions.php tema (langsung, tanpa ketergantungan plugin):
// Add to your child theme's functions.php
function add_gtm_head() {
echo "<!-- Google Tag Manager --><script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-XXXXXXX');</script><!-- End Google Tag Manager -->";
}
add_action('wp_head', 'add_gtm_head', 1);
function add_gtm_body() {
echo '<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-XXXXXXX" height="0" width="0"></iframe></noscript>';
}
add_action('wp_body_open', 'add_gtm_body', 1);Metode B — Plugin (Insert Headers and Footers atau GTM4WP): Pasang plugin, tempel Cuplikan 1 ke bidang header dan Cuplikan 2 ke bidang body/after-body. Plugin GTM4WP lebih disukai daripada plugin header/footer generik karena juga mendorong data spesifik WordPress (jenis posting, penulis, data keranjang WooCommerce) ke dalam dataLayer secara otomatis.
Metode C — Pengeditan template langsung: Edit header.php di tema Anda untuk menyisipkan kedua cuplikan di posisi yang benar. Selalu gunakan child theme — mengedit tema induk secara langsung berarti perubahan Anda akan terhapus pada pembaruan tema berikutnya.
Pemasangan di Shopify
Shopify membatasi akses <head> langsung ke file theme.liquid. Navigasikan ke Online Store > Themes > Edit Code > Layout > theme.liquid dan sisipkan kedua cuplikan di posisi yang sesuai. Perhatikan bahwa halaman checkout Shopify memerlukan paket Shopify Plus untuk menambahkan skrip kustom.
Pemasangan di Situs HTML Kustom/Server-Rendered
Jika Anda mengelola aplikasi kustom di Dedicated Server atau VPS, edit template HTML dasar Anda secara langsung. Untuk framework yang dirender di sisi server (Node.js/Express, Django, Laravel), tambahkan cuplikan ke file template tata letak dasar Anda.
Untuk aplikasi Node.js/Express yang menggunakan template EJS:
# Locate your base layout template
find /var/www/myapp/views -name "layout.ejs"Kemudian edit file untuk menyisipkan kedua cuplikan GTM di posisi yang benar di dalam <head> dan segera setelah <body>.
Pertimbangan Content Security Policy
Jika situs Anda menerapkan header Content Security Policy (CSP) — yang seharusnya ada di server produksi yang diperkuat — Anda harus memasukkan domain GTM ke dalam daftar putih. Tambahkan yang berikut ke direktif CSP Anda:
script-src 'self' https://www.googletagmanager.com;
img-src 'self' https://www.googletagmanager.com;
frame-src https://www.googletagmanager.com;Gagal memperbarui CSP Anda akan memblokir GTM dari pemuatan secara diam-diam, dan tidak ada kesalahan yang akan muncul di antarmuka GTM sendiri — hanya di konsol browser.
Langkah 3: Temukan ID Google Tag Manager Anda
GTM container ID Anda selalu diformat sebagai GTM- diikuti oleh string alfanumerik (mis., GTM-K2F9XP3). Ada tiga cara yang dapat diandalkan untuk menemukannya.
Metode 1 — Dasbor Container (Metode Utama)
- Masuk di tagmanager.google.com.
- Di halaman ikhtisar Akun, Anda akan melihat semua akun dan container terkait yang terdaftar dalam kartu.
- Container ID (
GTM-XXXXXXX) ditampilkan langsung di bawah nama container pada setiap kartu — terlihat tanpa mengklik ke dalam container.
Metode 2 — Panel Admin Container
- Buka container yang Anda inginkan.
- Klik Admin di bilah navigasi atas.
- Di bawah kolom Container, klik Pengaturan Container.
- Bidang Container ID di bagian atas halaman ini menampilkan GTM ID lengkap Anda.
Metode 3 — Sumber Halaman yang Terpasang
Jika GTM sudah terpasang di situs Anda dan Anda perlu mengambil ID tanpa masuk ke GTM:
curl -s https://example.com | grep -o 'GTM-[A-Z0-9]*'Perintah ini mengambil sumber halaman Anda dan mengekstrak string GTM container ID menggunakan pola regex — berguna untuk mengaudit situs pihak ketiga atau memverifikasi container mana yang sebenarnya aktif.
Langkah 4: Verifikasi Pemasangan
Melewati verifikasi adalah kesalahan paling mahal dalam penerapan GTM. Cuplikan yang salah tempat, blokir CSP, atau penimpaan tema dapat merusak seluruh pengaturan pelacakan Anda secara diam-diam.
Mode Pratinjau GTM (Direkomendasikan)
- Di dalam container Anda, klik Pratinjau di sudut kanan atas.
- Masukkan URL situs web Anda dan klik Hubungkan.
- Tab browser baru membuka situs Anda dengan panel Tag Assistant terpasang.
- Panel menampilkan setiap tag yang terpicu saat pemuatan halaman, pemicu mana yang mengaktifkannya, dan status
dataLayerlengkap.
Jika container dimuat dengan benar, Anda akan melihat gtm.js terdaftar sebagai tag yang terpicu dan gtm.load sebagai peristiwa yang selesai di panel ringkasan.
Ekstensi Chrome Google Tag Assistant
Pasang ekstensi Tag Assistant Legacy atau gunakan ekstensi Tag Assistant Companion yang lebih baru. Navigasikan ke situs Anda dan ekstensi akan mengonfirmasi apakah GTM terdeteksi, menampilkan container ID yang ditemukan, dan menandai kesalahan implementasi apa pun (seperti cuplikan yang ditempatkan di lokasi yang salah atau terpicu beberapa kali).
Pemeriksaan Konsol Browser Manual
Buka Chrome DevTools (F12), buka tab Network, filter berdasarkan gtm.js, dan muat ulang halaman. Anda seharusnya melihat respons 200 yang berhasil dari www.googletagmanager.com. Jika Anda melihat permintaan yang diblokir atau gagal, periksa header CSP dan aturan firewall server Anda.
# Check response headers from GTM's script endpoint
curl -I "https://www.googletagmanager.com/gtm.js?id=GTM-XXXXXXX"Langkah 5: Menggunakan GTM ID Anda dengan Platform Pihak Ketiga
Setelah container Anda diverifikasi, GTM ID digunakan dalam beberapa konteks integrasi:
Google Analytics 4
Jangan pasang cuplikan gtag.js GA4 langsung di halaman jika GTM sudah ada. Sebagai gantinya, buat Google Tag (sebelumnya GA4 Configuration Tag) di dalam GTM, masukkan GA4 Measurement ID Anda (G-XXXXXXXXXX), dan atur pemicu ke Semua Halaman. Ini menjaga semua pelacakan terpusat di GTM.
Meta (Facebook) Pixel
Tambahkan tag HTML Kustom di GTM yang berisi kode dasar Meta Pixel. Gunakan variabel bawaan GTM ({{Page URL}}, {{Click URL}}) untuk mengisi parameter peristiwa secara dinamis daripada mengkodekannya secara keras.
Plugin WordPress yang Meminta GTM ID
Plugin seperti Rank Math, MonsterInsights, atau WooCommerce Google Analytics mungkin meminta GTM ID Anda secara langsung. Jika Anda sudah memasang cuplikan GTM secara manual atau melalui GTM4WP, jangan masukkan GTM ID Anda ke plugin-plugin ini juga — ini akan menyebabkan container dimuat dua kali, menggandakan semua pemicuan tag dan menggelembungkan data analitik Anda.
GTM Sisi Server (Lanjutan)
Untuk situs dengan lalu lintas tinggi atau penerapan yang sensitif terhadap privasi, GTM mendukung container sisi server yang berjalan di infrastruktur Anda sendiri. Alih-alih browser memuat tag langsung dari CDN vendor, semua permintaan terlebih dahulu masuk ke server Anda. Ini meningkatkan performa pemuatan halaman, melewati pemblokir iklan, dan memberi Anda kendali penuh atas data apa yang meninggalkan infrastruktur Anda. Menjalankan container GTM sisi server sangat cocok untuk VPS dengan cPanel atau VPS mentah di mana Anda dapat mengonfigurasi Node.js atau server penandaan yang dikontainerisasi.
Perbandingan Jenis Container GTM
| Jenis Container | Lokasi Penerapan | Kasus Penggunaan Utama | Memerlukan Infrastruktur Server |
|---|---|---|---|
| — | — | — | — |
| Web | Browser (sisi klien) | Pelacakan situs web standar | Tidak |
| iOS / Android | Aplikasi seluler | Pelacakan peristiwa aplikasi melalui Firebase | Tidak |
| AMP | Halaman AMP | Pelacakan di Accelerated Mobile Pages | Tidak |
| Server | Server Anda | Pelacakan yang mengutamakan privasi dan berperforma tinggi | Ya |
Jebakan Umum dan Kasus Tepi
Container yang terpicu ganda: Jika tema WordPress Anda sudah menyertakan GTM melalui cuplikan yang dikodekan secara keras dan Anda juga mengaktifkan plugin yang menyuntikkan GTM, keduanya akan terpicu. Selalu audit sumber halaman Anda dengan curl -s https://example.com | grep -c 'GTM-' untuk menghitung kemunculan.
Lingkungan container yang salah: GTM mendukung beberapa Lingkungan (Live, Development, Staging). Jika pengembang berbagi tautan pratinjau menggunakan token lingkungan non-live, tag mungkin berperilaku berbeda dari produksi. Selalu uji terhadap lingkungan Live sebelum persetujuan akhir.
Urutan inisialisasi dataLayer: Jika situs Anda mendorong data ke window.dataLayer sebelum cuplikan GTM dimuat, dorongan tersebut akan hilang. Array dataLayer harus diinisialisasi sebelum cuplikan GTM, atau cuplikan itu sendiri menangani inisialisasi — tetapi dorongan apa pun yang terjadi sebelum cuplikan dieksekusi tidak akan ditangkap. Ini adalah sumber umum data e-commerce yang hilang di halaman yang memuat lambat.
Persyaratan HTTPS: gtm.js GTM selalu disajikan melalui HTTPS. Jika situs Anda masih berjalan melalui HTTP, kebijakan konten campuran di browser modern akan memblokir skrip GTM. Pastikan situs Anda memiliki sertifikat SSL yang valid — SSL Certificates adalah prasyarat untuk penerapan GTM produksi apa pun.
Pengurutan tag: Ketika beberapa tag terpicu pada pemicu yang sama, urutan eksekusi tidak dijamin kecuali Anda secara eksplisit mengonfigurasi Pengurutan Tag (Setup Tag / Cleanup Tag) di pengaturan tag lanjutan GTM.
Matriks Keputusan Praktis
Gunakan daftar periksa ini sebelum menganggap pengaturan GTM Anda siap produksi:
- [ ] Cuplikan container ada di
<head>dan segera setelah<body>di setiap halaman, termasuk halaman yang dihasilkan secara dinamis. - [ ] GTM ID muncul tepat satu kali per halaman — dikonfirmasi melalui
curlatau inspeksi sumber browser. - [ ] Header CSP memasukkan
www.googletagmanager.comke daftar putih untukscript-src,img-src, danframe-src. - [ ] Mode Pratinjau mengonfirmasi container dimuat dan
gtm.jsterpicu saat pemuatan halaman. - [ ] Tidak ada cuplikan GA4 duplikat atau vendor lain yang ada di luar GTM.
- [ ]
dataLayerdiinisialisasi sebelum cuplikan GTM dalam sumber HTML. - [ ] Jika menggunakan WordPress, child theme atau plugin khusus (bukan tema induk) yang menyimpan cuplikan.
- [ ] Aturan firewall server mengizinkan permintaan keluar ke
www.googletagmanager.com:443. - [ ] Untuk e-commerce: dorongan
dataLayeruntuk peristiwapurchase,add_to_cart, danview_itemdiverifikasi dalam Mode Pratinjau sebelum ditayangkan. - [ ] Container telah diterbitkan — perubahan yang belum diterbitkan hanya ada di ruang kerja dan tidak memengaruhi situs langsung.
Jika lingkungan hosting Anda adalah paket Shared Web Hosting terkelola tanpa akses server langsung, fokus pada metode pemasangan tingkat CMS (plugin atau file tema) dan andalkan Mode Pratinjau GTM untuk verifikasi daripada perintah curl tingkat server.
FAQ
Apa itu GTM container ID dan di mana digunakan?
GTM container ID adalah pengenal unik dalam format GTM-XXXXXXX yang menghubungkan cuplikan JavaScript yang terpasang di situs web Anda ke container GTM spesifik Anda. Ini digunakan dalam kode cuplikan container, dalam integrasi platform pihak ketiga, dan di antarmuka admin GTM sendiri untuk mengidentifikasi konfigurasi tag container mana yang harus dimuat.
Bisakah saya menggunakan container GTM yang sama di beberapa domain?
Secara teknis ya — cuplikan yang sama dapat ditempatkan di beberapa domain — tetapi tidak disarankan. Tag dan pemicu yang dikonfigurasi untuk struktur URL satu domain akan menghasilkan data yang tidak dapat diandalkan di domain yang berbeda. Pendekatan yang benar adalah membuat container terpisah per domain dan menggunakan konfigurasi pelacakan lintas domain dalam GA4 jika Anda perlu melacak perjalanan pengguna di keduanya.
Mengapa container GTM saya tidak terpicu meskipun cuplikan sudah terpasang?
Penyebab paling umum adalah: Content Security Policy yang memblokir www.googletagmanager.com, cuplikan yang ditempatkan di dalam komentar kondisional atau bagian template yang dimuat secara async, plugin caching WordPress yang menyajikan halaman yang di-cache yang dibuat sebelum cuplikan ditambahkan, atau container yang tidak memiliki versi yang diterbitkan. Periksa konsol browser untuk pelanggaran CSP dan gunakan Mode Pratinjau GTM untuk mengisolasi masalah.
Apa perbedaan antara Mode Pratinjau GTM dan Tag Assistant?
Mode Pratinjau GTM adalah fitur bawaan GTM yang menghubungkan sesi debug langsung ke container Anda, menampilkan pemicuan tag secara real-time, evaluasi pemicu, dan status dataLayer untuk sesi browser spesifik Anda. Tag Assistant adalah ekstensi Chrome yang menyediakan overlay yang lebih ringan yang menampilkan tag Google mana (GTM, GA4, Ads) yang terdeteksi di halaman dan menandai kesalahan implementasi dasar. Untuk debugging mendalam, Mode Pratinjau bersifat otoritatif; Tag Assistant berguna untuk pemeriksaan tingkat permukaan yang cepat.
Apakah Google Tag Manager memengaruhi performa situs web atau kecepatan pemuatan halaman?
Cuplikan GTM itu sendiri dimuat secara asinkron, sehingga tidak memblokir penguraian HTML atau sumber daya yang memblokir render. Namun, tag yang dipicu oleh GTM — khususnya tag HTML kustom yang sinkron atau skrip pihak ketiga yang berat — dapat berdampak signifikan pada waktu pemuatan halaman. Audit tag container Anda secara teratur, gunakan kontrol prioritas dan pengurutan pemicuan tag bawaan GTM, dan pertimbangkan GTM sisi server untuk situs dengan lalu lintas tinggi di mana overhead skrip sisi klien menjadi perhatian yang terukur.
