Waktu Pengguna

Panduan ini menjelaskan cara mengukur periode waktu menggunakan analytics.js.

Ringkasan

Studi menunjukkan bahwa mengurangi waktu muat halaman meningkatkan pengalaman pengguna situs secara keseluruhan. Google Analytics memiliki sejumlah laporan efektif yang otomatis mengukur dan melaporkan waktu muat halaman. Namun, Anda juga dapat mengukur informasi waktu kustom untuk mengukur performa khusus untuk situs Anda.

Waktu pengguna memungkinkan developer mengukur periode waktu menggunakan library analytics.js. Ini sangat berguna bagi developer untuk mengukur latensi, atau waktu yang digunakan, dalam membuat permintaan AJAX dan memuat resource web.

Penerapan

Hit waktu pengguna dapat dikirim menggunakan perintah send dan menentukan hitType dari timing. Perintah send memiliki signature berikut untuk jenis hit timing:

ga('send', 'timing', [timingCategory], [timingVar], [timingValue], [timingLabel], [fieldsObject]);

Kolom waktu pengguna

Tabel berikut meringkas kolom waktu pengguna:

Nama Kolom Jenis Nilai Wajib Deskripsi
timingCategory teks ya String untuk mengelompokkan semua variabel waktu pengguna ke dalam grup logis (misalnya, 'JS Dependencies').
timingVar teks ya String untuk mengidentifikasi variabel yang dicatat (misalnya, 'load').
timingValue bilangan bulat ya Jumlah waktu berlalu dalam milidetik untuk dilaporkan ke Google Analytics (misalnya, 20).
timingLabel teks tidak String yang dapat digunakan untuk menambah fleksibilitas dalam memvisualisasikan waktu pengguna dalam laporan (misalnya, 'Google CDN').

Contoh:

Perintah berikut mengirimkan hit waktu pengguna ke Google Analytics yang menunjukkan bahwa halaman web saat ini memerlukan waktu 3.549 milidetik untuk memuat semua dependensi JavaScript eksternalnya:

ga('send', 'timing', 'JS Dependencies', 'load', 3549);

Perlu diingat bahwa seperti semua perintah send, kolom yang diteruskan dalam parameter praktis juga dapat ditentukan dalam fieldsObject. Perintah di atas dapat ditulis ulang seperti berikut:

ga('send', {
  hitType: 'timing',
  timingCategory: 'JS Dependencies',
  timingVar: 'load',
  timingValue: 3549
});

Mengukur waktu

Saat mengirimkan data waktu pengguna, Anda menentukan jumlah waktu yang dihabiskan dalam milidetik di parameter timingValue. Anda bebas menulis kode untuk mencatat periode waktu ini.

Cara termudah untuk melakukannya adalah dengan membuat stempel waktu di awal periode dan membuat stempel waktu lain di akhir periode. Kemudian Anda dapat mencatat selisih kedua stempel waktu tersebut untuk mendapatkan waktu yang dihabiskan.

Sebagian besar browser modern mendukung Navigation Timing API, yang mencakup metode di objek window.performance untuk mengukur performa halaman web melalui data waktu resolusi tinggi.

Contoh berikut menggunakan metode performance.now(), yang menampilkan jumlah waktu yang telah berlalu sejak halaman pertama kali mulai dimuat:

// Feature detects Navigation Timing API support.
if (window.performance) {
  // Gets the number of milliseconds since page load
  // (and rounds the result since the value must be an integer).
  var timeSincePageLoad = Math.round(performance.now());

  // Sends the timing hit to Google Analytics.
  ga('send', 'timing', 'JS Dependencies', 'load', timeSincePageLoad);
}

Pertimbangan pengambilan sampel

Google Analytics akan mengambil sampel hit waktu selama pemrosesan untuk memastikan resource sistem didistribusikan secara setara untuk fitur ini.

Rasio saat hit waktu diambil sampelnya ditentukan oleh total jumlah hit kunjungan halaman yang diterima pada hari sebelumnya untuk properti tersebut. Tabel berikut menjelaskan cara menentukan rasio pengambilan sampel waktu:

Total jumlah hit kunjungan halaman (hari sebelumnya) Jumlah maksimum hit waktu yang akan diproses
0—1.000 100
1.000—100.000 10% dari total jumlah hit kunjungan halaman
100.000—1.000.000 10.000
1.000.000+ 1% dari total jumlah hit kunjungan halaman

Membatasi jumlah hit yang dikirim

Untuk menghindari pengiriman hit Google Analytics yang tidak akan diproses, analytics.js memungkinkan Anda mengontrol persentase hit yang dikirim dengan opsi konfigurasi sampleRate dan siteSpeedSampleRate. Secara default, kolom tersebut masing-masing ditetapkan sebesar 100% dan 1%. Anda dapat menyesuaikan nilai ini agar lebih mendekati jumlah hit waktu yang akan diproses Google Analytics berdasarkan rata-rata jumlah kunjungan halaman harian.