Digital Marketing
Catatan Praktik #3: Memasang GA4 dan Menghitung Klik WhatsApp Sebagai Lead
Hampir semua calon klien menghubungiku lewat WhatsApp, tapi GA4 tidak tahu klik itu berarti apa. Ini cara aku memasang GA4 tanpa memperlambat situs, menghitung klik WhatsApp sebagai lead, dan satu kesalahan yang mengotori data.

Catatan Praktik adalah seri tentang task yang aku kerjakan sendiri di situs ini. Episode sebelumnya membahas redirect, 404, dan 410. Kali ini soal pengukuran: bagaimana tahu halaman mana yang menghasilkan chat.
Jawaban singkatnya: pasang GA4, lalu kirim satu event bernama generate_lead setiap kali pengunjung mengklik link chat WhatsApp, lengkap dengan posisi tombolnya. Tandai event itu sebagai key event di GA4. Hasilnya, kamu bisa melihat halaman dan tombol mana yang mengarah ke chat.
Masalahnya: GA4 tidak tahu klik WhatsApp itu lead
Situs ini tidak punya formulir kontak. Semua ajakan berakhir di tombol WhatsApp. Secara bawaan, GA4 hanya mencatat klik ke situs lain sebagai event umum bernama click, bercampur dengan klik ke LinkedIn atau artikel sumber. Dari data mentah, klik ke WhatsApp tidak bisa dibedakan dari klik lain.
Langkah 1: Pasang GA4 tanpa memperlambat situs
Skrip GA4 berukuran sekitar 180 KB dan butuh waktu proses yang terasa di HP. Saat PageSpeed Insights versi mobile situs ini turun ke 81, salah satu penyebabnya adalah skrip ini berjalan bersamaan dengan tampilan pertama halaman. Solusinya: skrip dimuat setelah halaman selesai tampil, saat browser tidak sibuk. Setelah perubahan itu dan beberapa perbaikan lain, LCP mobile turun dari 4,3 detik di PageSpeed Insights ke sekitar 2,1 sampai 2,5 detik di pengujian Lighthouse lokal. Dasar membaca PageSpeed ada di Catatan Praktik #1.
Risikonya kecil: kunjungan yang sangat singkat, kurang dari satu atau dua detik, mungkin tidak tercatat.
Langkah 2: Kirim event generate_lead saat link WhatsApp diklik
Google menyediakan nama event yang direkomendasikan, dan generate_lead adalah salah satunya, untuk saat pengunjung menunjukkan minat menjadi pelanggan (daftar event rekomendasi GA4). Di situs ini, setiap klik ke link wa.me yang memuat nomor telepon dikirim sebagai generate_lead. Link berbagi ke WhatsApp tanpa nomor tidak ikut dihitung, karena itu bukan chat ke aku.
document.addEventListener("click", (e) => {
const a = e.target.closest("a[href]");
// Hanya link chat yang membawa nomor, bukan link berbagi.
if (!a || !/^https:\/\/wa\.me\/\d/.test(a.href)) return;
gtag("event", "generate_lead", {
lead_source: "whatsapp",
link_text: a.textContent.trim().slice(0, 100),
cta_position: "hero", // atau "konten" / "penutup", dari letak tombolnya
transport_type: "beacon",
});
});Kenapa posisi tombol ikut dikirim
Setiap halaman jasa punya tombol WhatsApp di bagian atas, di tengah, dan di penutup. Dengan parameter cta_position, aku bisa melihat apakah orang langsung chat dari bagian atas atau baru setelah membaca sampai bawah. Ini menentukan halaman mana yang perlu dirapikan.
Transport beacon
Klik WhatsApp langsung membuka aplikasi lain dan meninggalkan halaman. Opsi beacon membuat browser tetap mengirim event walaupun halamannya sudah ditinggalkan.
Langkah 3: Uji, dan kesalahan yang aku buat
Untuk memastikan event terkirim, aku mengklik tombol-tombol WhatsApp di berbagai halaman. Masalahnya, pengujian itu dilakukan di situs produksi, bukan di mode debug. Hasilnya, GA4 mencatat 44 event generate_lead pada 16 Oktober 2026, dan semuanya klik uji.
Data itu tidak bisa dihapus dari laporan standar. Jadi aku mencatat bahwa lead dihitung mulai 17 Oktober. Cara yang benar: uji dengan DebugView, yang menampilkan event dari perangkat dalam mode debug secara terpisah (DebugView), atau saring lalu lintas internal berdasarkan alamat IP (filter internal traffic).
Langkah 4: Jadikan key event, dan daftarkan parameternya
- Di Admin GA4, buka daftar event, lalu tandai generate_lead sebagai key event. Setelah itu, setiap generate_lead dihitung sebagai konversi (Mark events as key events).
- Parameter seperti cta_position tidak otomatis muncul di laporan. Daftarkan sebagai custom dimension dengan cakupan event (custom dimensions). Data baru terbaca sejak didaftarkan, tidak mundur ke belakang.
- Jangan menjadikan page_view sebagai key event. Setiap kunjungan akan terhitung sebagai lead.
Angkanya sejauh ini
Periode | Event generate_lead | Catatan |
|---|---|---|
16 Oktober 2026 | 44 | Semua klik uji, diabaikan |
17 sampai 21 Oktober 2026 | 0 | Belum ada klik WhatsApp dari pengunjung |
Nol juga data. Situs ini baru pindah platform dan sebagian besar halaman jasa belum lama terindeks, jadi kunjungannya masih sedikit. Yang penting, pengukurannya sudah siap sebelum kunjungan datang, sehingga lead pertama nanti langsung tercatat lengkap dengan halaman dan posisi tombolnya.
Yang aku pelajari
- Uji event di DebugView, bukan di data produksi. Klik uji tidak bisa dihapus dari laporan.
- Klik bukan chat. Orang bisa membuka WhatsApp lalu batal mengirim. Untuk melengkapi, tanyakan "tahu dari mana" di awal percakapan.
- Mengukur sedikit hal dengan benar lebih berguna daripada mengukur semuanya.
Versi budget terbatas
Pilihan | Biaya | Waktu | Catatan |
|---|---|---|---|
Event generate_lead dengan kode seperti di atas | Gratis | Satu sampai dua jam | Butuh akses ke kode atau tema website |
Google Tag Manager dengan pemicu klik link | Gratis | Dua sampai tiga jam | Tanpa mengubah kode website, tapi ada kurva belajar |
Pesan pembuka berbeda per halaman | Gratis | Beberapa menit | Tanpa GA4 pun bisa tahu halaman asal chat |
Dipasangkan jasa | Sekali bayar | Hampir tanpa waktumu | Pastikan kamu tetap pemilik akun GA4 |
Kapan saran ini tidak berlaku
- Kalau kamu memakai website builder yang tidak mengizinkan kode tambahan, gunakan fitur integrasi GA4 bawaannya, atau pakai pesan pembuka berbeda per halaman.
- Kalau kamu memasang iklan, event ini perlu dihubungkan juga ke akun iklan. Artikel ini hanya membahas GA4.
Mulai dari mana minggu ini
- Cek apakah GA4 sudah terpasang dengan membuka laporan Realtime sambil membuka websitemu.
- Ubah link WhatsApp di setiap halaman supaya membawa pesan pembuka berbeda. Ini langkah gratis yang langsung berguna.
- Kalau punya akses kode, tambahkan event generate_lead dan uji di DebugView.
Pertanyaan singkat
Apa bedanya key event dan conversion? Key event adalah istilah GA4 untuk event yang penting bagi bisnismu. Istilah conversion di GA4 sekarang dipakai untuk yang terhubung ke Google Ads.
Kenapa data lama tidak muncul setelah parameter didaftarkan? Custom dimension hanya membaca data sejak dibuat. Karena itu sebaiknya didaftarkan segera setelah event mulai dikirim.
Apakah perlu Google Tag Manager? Tidak wajib. Untuk satu dua event, kode langsung lebih sederhana. Tag Manager berguna kalau event bertambah banyak atau dikelola orang yang tidak mengubah kode.
Cerita lengkap perpindahan situs ini ada di studi kasus migrasi. Cara aku melaporkan angka seperti ini ke klien ada di cara aku bekerja.
Tulisan lain


