Mengukur sesi dan engagement pengguna

Untuk ringkasan konseptual cakupan pengguna dan sesi, termasuk cara Google Analytics menentukan dan membatasi sesi secara ketat berdasarkan tidak adanya aktivitas, lihat Dimensi dan metrik: Tentang sesi Analytics dan panduan Cakupan dimensi sumber traffic.

Panduan ini mencakup tantangan khusus developer dan praktik terbaik untuk mengelola konfigurasi sesi dan pelacakan pasif.

Memasangkan dimensi tingkat halaman dengan metrik sesi

Salah satu nuansa pelaporan yang paling umum terjadi saat Anda memasangkan dimensi cakupan halaman (misalnya, jalur halaman dan class layar) dengan metrik Sesi tingkat sesi.

Definisi sesi dan tampilan

  • Sesi menghitung periode waktu unik saat jalur halaman tertentu dimuat setidaknya sekali.

  • Penayangan (tayangan halaman) menghitung total kumulatif frekuensi jalur halaman dimuat.

Contoh

Pertimbangkan satu sesi dengan jalur navigasi pengguna berikut: /home/products/home → Keluar

Jika ini adalah satu-satunya sesi, laporan yang dikonfigurasi dengan metrik Jalur halaman dan class layar serta Sesi atau Tampilan akan menampilkan:

Jalur halaman Sesi Penayangan
/home 1 2
/products 1 1
Total (diduplikasi Google Analytics) 1 3

Jika Anda menjumlahkan baris, hasilnya adalah 2 sesi, tetapi total properti yang sebenarnya dihapus duplikasinya menjadi 1.

Aturan penyesuaian

  • Sesi dengan jalur halaman mengacu pada sesi unik yang mengunjungi jalur setidaknya sekali.
  • Sesi dengan halaman landing mengacu pada sesi unik yang dimulai di jalur. Untuk melihat traffic landing, selalu gunakan Halaman landing + string kueri, bukan Sesi dengan jalur halaman.
  • Penayangan selalu menghitung total frekuensi pemuatan.

Praktik terbaik untuk developer dan analis

  • Pertahankan cakupan yang konsisten: Jangan mencampuradukkan dimensi traffic cakupan pengguna (misalnya, Grup saluran default pengguna pertama) dengan metrik cakupan sesi (misalnya, Durasi sesi rata-rata) jika sasaran Anda adalah memahami performa sesi.
  • Validasi session_start di DebugView: Selama fase QA dan verifikasi, gunakan alat debug standar seperti DebugView Google Analytics untuk mengonfirmasi bahwa session_start diaktifkan dengan benar saat inisiasi sesi.

Praktik terbaik untuk mengelola waktu tunggu sesi

Durasi default sesi Google Analytics adalah 30 menit.

Sebaiknya jangan menerapkan kode kustom untuk "membuat ping" Google Analytics secara berkala guna mencegah waktu tunggu karena tidak ada aktivitas. Jika Anda memalsukan metrik sesi, data perilaku pengguna akan terdistorsi. Sebagai gantinya, manfaatkan fitur bawaan Google Analytics atau targetkan peristiwa engagement yang bermakna untuk menawarkan solusi yang lebih bersih.

Alasan ping "tetap aktif" generik merupakan praktik yang buruk

  • Metrik inti yang terdistorsi: Jika pengguna menjauh dari tabnya, mereka benar-benar tidak aktif. Jika Anda memaksa sesi tetap terbuka, hal ini akan membuat "sesi zombie" dan secara keliru meningkatkan Durasi Sesi Rata-Rata Anda. Hal ini menyamarkan titik sebenarnya saat pengguna kehilangan minat atau meninggalkan situs Anda.
  • Dampak pada sesi engagement: Google Analytics mendefinisikan sesi engagement sebagai sesi yang berlangsung lebih dari 10 detik, menampilkan 2 tayangan halaman atau lebih, atau memicu peristiwa utama (sebelumnya peristiwa konversi). Jika Anda membuat sesi tetap terbuka secara buatan, sesi tersebut akan tampak sebagai sesi engagement, yang akan meningkatkan rasio engagement Anda.
  • Pembengkakan dan biaya data: Jika Anda terus-menerus memicu peristiwa ping latar belakang kosong, hal ini akan meningkatkan gangguan jumlah peristiwa dan meningkatkan biaya data warehouse jika Anda mengekspor data Google Analytics ke BigQuery.

Kapan harus melacak engagement pasif (dan cara melakukannya)

Ada skenario yang sah saat pengguna berinteraksi aktif dengan konten, tetapi tidak memicu peristiwa interaksi Google Analytics standar (seperti klik atau perubahan halaman). Dalam kasus ini, alih-alih ping tetap aktif generik, catat peristiwa progres yang bermakna dan dimulai pengguna:

  • Konten video panjang: Pengguna yang menonton video sematan berdurasi 45 menit akan tetap pasif selama lebih dari 30 menit, dan berisiko sesi berakhir.
  • Artikel mendalam: Pengguna dapat menghabiskan waktu 40 menit untuk membaca panduan teknis, dan men-scroll perlahan tetapi tidak memicu tindakan navigasi.
  • Aplikasi web interaktif: Pengguna yang memantau feed live, ticker saham, atau dasbor data menggunakan informasi secara pasif tanpa mengklik.

Jika pengguna meminimalkan jendela browser atau beralih tab, ping latar belakang harus berhenti.

Contoh kode: Ping peristiwa yang mengetahui visibilitas

Pola JavaScript berikut menunjukkan cara melacak engagement pasif dan mematuhi visibilitas tab. Sesuaikan interval dan nilai parameter pelacakan (misalnya, 5 menit atau 300.000 md) berdasarkan kasus penggunaan spesifik Anda, seperti durasi umum video atau artikel panjang Anda:

const TRACKING_INTERVAL_MILLIS = 5 * 60 * 1000;

let engagementInterval;

function startEngagementTracking() {
  // Prevent duplicate intervals if tab becomes visible
  if (engagementInterval) return;

  engagementInterval = setInterval(() => {
    gtag('event', 'passive_engagement', {
      'engagement_time_msec': TRACKING_INTERVAL_MILLIS
    });
  }, TRACKING_INTERVAL_MILLIS);
}

function stopEngagementTracking() {
  if (engagementInterval) {
    clearInterval(engagementInterval);
    engagementInterval = null;
  }
}

// Start tracking initially if the page is visible
if (!document.hidden) {
  startEngagementTracking();
}

// Stop tracking when tab is hidden, resume when visible
document.addEventListener('visibilitychange', () => {
  if (document.hidden) {
    stopEngagementTracking();
  } else {
    startEngagementTracking();
  }
});

Pengukuran yang ditingkatkan Google Analytics versus pelacakan kustom

Fitur Google Analytics Pengukuran yang Ditingkatkan, yang secara otomatis menangani beberapa skenario pelacakan pasif secara langsung, meskipun memiliki batasan tertentu.

Jenis interaksi Ditangani oleh pengukuran yang ditingkatkan? Persyaratan / item tindakan
Penyematan video YouTube Ya Memicu tonggak video_start, video_complete, dan video_progress secara otomatis pada 10%, 25%, 50%, dan 75% (memerlukan dukungan JS API diaktifkan).
Video non-YouTube (HTML5, Vimeo) Tidak Memerlukan implementasi kustom. Aktifkan peristiwa secara terprogram menggunakan gtag.js atau kelola pemicu menggunakan Google Tag Manager (GTM).
Scrolling halaman standar Parsial Memicu satu peristiwa scroll hanya saat pengguna mencapai tanda 90% halaman.
Progres membaca inkremental Tidak Nonaktifkan pelacakan scroll Google Analytics default dan terapkan nilai minimum scroll kustom (misalnya, 25%, 50%, 75%) secara terprogram atau di GTM.

Alternatif paling bersih: Sesuaikan batas waktu tunggu sesi Google Analytics

Jika situs Anda secara alami berpusat pada konten panjang, kursus video, atau penggunaan aplikasi berkelanjutan, Anda tidak perlu menyisipkan peretasan skrip kustom. Anda dapat menyesuaikan nilai minimum default 30 menit di dalam antarmuka Google Analytics hingga maksimal 7 jam 55 menit. Untuk mengetahui petunjuknya, lihat Menyesuaikan waktu tunggu sesi.