Cara Google Penelusuran menggunakan aturan spekulasi

Dipublikasikan: 12 Feb 2025

Google Penelusuran adalah salah satu situs paling populer di web, dan juga salah satu yang tercepat. Tim Penelusuran terus berinvestasi untuk membuat pengalaman penelusuran lebih cepat. Di halaman yang populer seperti Google Penelusuran, peningkatan performa dalam milidetik pun akan sangat terasa! Minat terhadap kecepatan ini mencakup halaman beranda Google yang terkenal, Halaman Hasil Mesin Telusur (SERP), dan klik ke situs lain dari hasil penelusuran tersebut.

Google Penelusuran telah menggunakan Speculation Rules API untuk meningkatkan kecepatan navigasi dari halaman hasil penelusuran ke link hasil dan telah menggunakan beberapa fitur API yang mungkin menarik bagi pemilik situs lain.

Melakukan pengambilan data awal untuk dua hasil pertama

Salah satu penggunaan pertama aturan spekulasi adalah untuk melakukan pengambilan data terlebih dahulu dari dua hasil penelusuran pertama. Misalnya, menelusuri "test" akan menyertakan aturan spekulasi berikut di halaman:

{
    "prefetch": [{
        "source": "list",
        "requires": [
            "anonymous-client-ip-when-cross-origin"
        ],
        "referrer_policy": "strict-origin",
        "urls": [
            "https://www.merriam-webster.com/dictionary/test",
            "https://dictionary.cambridge.org/dictionary/english/test"
        ]
    }]
}

Dua URL di bagian bawah adalah dua hasil penelusuran pertama, dan keduanya langsung di-prefetch. Jika pengguna mengkliknya, mereka akan mendapatkan permulaan yang lebih baik karena dokumen HTML seharusnya sudah tersedia untuk browser.

Aturan dan upaya pengambilan data sebelumnya dapat dilihat di tab Spekulasi Aplikasi DevTools -> seperti yang didokumentasikan sebelumnya:

Panel Spekulasi DevTools menampilkan dua definisi kamus kata teks, yang keduanya berhasil di-prefetch
Panel spekulasi dengan dua pengambilan data awal yang berhasil.

Pengambilan data awal yang menjaga privasi

Karena link ini ditujukan untuk konten di situs lain, ada beberapa pertimbangan privasi tambahan untuk pengambilan data awal karena pengguna belum mengunjungi situs tersebut.

Untungnya, API ini didesain dengan mempertimbangkan hal ini, dan Google Penelusuran menggunakan dua fitur untuk menjaga privasi pengguna.

Yang pertama adalah menggunakan konfigurasi requires, untuk memastikan pengambilan data awal menggunakan proxy pengambilan data awal pribadi di Chrome:

"requires": [
    "anonymous-client-ip-when-cross-origin"
],

Tindakan ini menggunakan proxy untuk memastikan koneksi menganonimkan alamat IP sehingga kami tidak membocorkan IP pengguna ke situs sebelum pengguna mengklik link untuk membuka situs tersebut dari halaman hasil penelusuran.

Kedua, Google Penelusuran menggunakan setelan referrer_policy untuk memastikan tidak ada detail yang dienkode di URL halaman penelusuran yang dikirim ke situs di header HTTP referer:

"referrer_policy": "strict-origin",

Sebagian besar browser kini secara default menggunakan strict-origin-when-cross-origin, tetapi setelan ini menggunakan setelan yang lebih ketat untuk menggunakan kebijakan perujuk strict-origin meskipun untuk pengambilan data awal dari origin yang sama.

Perlindungan ketiga terjadi secara otomatis jika pengguna memiliki cookie untuk situs tersebut. Dalam hal ini, mereka mungkin menerima hasil yang berbeda berdasarkan cookie tersebut, dan Chrome tidak akan menggunakan HTML yang telah diambil sebelumnya:

Panel Spekulasi DevTools menampilkan dua URL, tetapi salah satunya gagal mengambil data dengan error yang menyatakan bahwa URL tersebut tidak memenuhi syarat karena pengguna memiliki cookie untuk origin tersebut
Panel spekulasi dengan satu pengambilan data gagal karena cookie.

Artinya, pengguna dengan cookie tidak akan mendapatkan manfaat dari peningkatan performa yang diberikan pengambilan data sebelumnya saat mengklik situs tersebut, tetapi perlindungan privasi dan pemuatan halaman yang akurat diprioritaskan. Selain itu, jika pengguna telah mengunjungi situs dan memiliki cookie untuk situs tersebut, mereka cenderung memiliki beberapa aset dari situs tersebut yang di-cache dan kemungkinan akan mengalami pemuatan halaman yang lebih cepat meskipun tanpa pengambilan data terlebih dahulu.

Dampak pada pengguna yang melakukan pengambilan data awal untuk dua hasil pertama

Seperti kebanyakan perubahan, Google Penelusuran meluncurkan pengambilan data terlebih dahulu dalam eksperimen pengujian A/B, dan mengukur dampaknya. Mereka melihat peningkatan signifikan pada Largest Contentful Paint (LCP). Di Chrome untuk Android, LCP untuk klik dari Google Penelusuran berkurang 67 milidetik. Peluncuran lanjutan untuk Chrome desktop menghasilkan peningkatan LCP serupa sebesar 58,6 milidetik. Peningkatan ini dilakukan pada situs yang dituju, bukan pada situs Google Penelusuran itu sendiri, tetapi memberikan manfaat bagi pengguna Google Penelusuran.

Peningkatan LCP ini mungkin tampak tidak signifikan, tetapi untuk situs yang sangat dioptimalkan seperti Google Penelusuran, kami merayakan peningkatan bahkan dalam milidetik untuk pengguna kami, sehingga peningkatan dalam kisaran puluhan milidetik adalah hal yang tidak biasa. Situs Anda mungkin akan memperoleh manfaat yang jauh lebih besar—Anda harus mencobanya untuk mengetahuinya.

Pengambilan data menggunakan Aturan Spekulasi telah diaktifkan secara default di Penelusuran di Android sejak Oktober 2022 dan diluncurkan ke desktop pada September 2024.

Di luar dua hasil pertama

Sejak peluncuran awal Speculation Rules API, API ini ditingkatkan dengan properti kesiapan yang memungkinkan spekulasi hanya terjadi saat pengguna mengarahkan kursor ke, atau mulai mengklik link.

Google Penelusuran memutuskan untuk melampaui dua hasil penelusuran pertama dan juga melakukan pengambilan data terlebih dahulu untuk hasil penelusuran yang tersisa—tetapi hanya saat pengguna mengarahkan kursor ke link, dengan menggunakan setelan moderate eagerness. Tindakan ini mencegah pemborosan sumber daya yang tidak perlu untuk link yang cenderung tidak diklik.

Sekali lagi, aturan ini dapat dilihat di DevTools saat Anda melakukan penelusuran di Chrome, dan identik dengan aturan sebelumnya, tetapi kali ini dengan opsi "eagerness": "moderate" yang ditetapkan:

Panel Aturan DevTools yang menampilkan aturan daftar menggunakan anonymouse-client-ip-when-cross-origin, kebijakan perujuk strict-origin, eagerness sedang, dan tujuh URL
Aturan spekulasi yang digunakan oleh Google Penelusuran.

Mengarahkan kursor ke link ini akan memicu pengambilan data. Perhatikan bahwa Google Penelusuran mencantumkan URL secara eksplisit, bukan menggunakan fitur aturan dokumen Speculation Rules API, karena tidak ingin melakukan pengambilan data awal URL lain seperti iklan.

Dampak bagi pengguna yang melakukan pengambilan data di luar dua hasil pertama

Chrome Desktop mengurangi First Contentful Paint (FCP) untuk navigasi dari Google Penelusuran sebesar 7,6 milidetik dan LCP sebesar 9,5 milidetik (seperti yang ditunjukkan oleh pengujian A/B). Hal ini menunjukkan peningkatan yang lebih kecil dibandingkan dengan peningkatan 58,6 milidetik yang terlihat pada dua hasil pertama, tetapi hal ini tidak mengejutkan mengingat waktu tunggu yang lebih kecil karena tidak di-prefetch dengan antusias. Namun, ini masih merupakan peningkatan yang baik karena alasan yang sama seperti yang diberikan sebelumnya.

Pengambilan data terlebih dahulu untuk hasil penelusuran yang tersisa di desktop diluncurkan secara default pada Desember 2024.

Untuk perangkat seluler—tempat pengarahan kursor biasanya tidak tersedia—tidak ada peningkatan nyata yang terlihat, sehingga, meskipun tidak ada regresi, pengambilan data awal tambahan ini tidak diaktifkan di perangkat seluler.

Google belum selesai bereksperimen dengan API baru yang menarik ini, dan harapan kami adalah membuat penjelajahan web secepat mungkin. Kami memiliki beberapa trik lain yang sedang kami kerjakan.

Sebagai salah satu contoh, Chrome meluncurkan halaman hasil penelusuran yang telah di-prerender—untuk pengguna yang mengaktifkan pramuat—saat pengguna mengetik kueri penelusuran di kolom URL Chrome, dan di tempat lain seperti kotak penelusuran di Android. Hal ini juga terbuka untuk diterapkan oleh mesin telusur lain—bukan hanya Google Penelusuran—meskipun saat ini kami tidak mengetahui adanya penerapan untuk mesin telusur lain.

Google Penelusuran tidak berencana untuk melangkah lebih jauh dan menerapkan pra-render untuk link hasil itu sendiri, karena fitur ini tidak tersedia untuk navigasi lintas situs (dan bahkan harus diaktifkan untuk pra-render lintas origin, dalam situs).

Catatan tentang dukungan browser

Browser Support

  • Chrome: 109.
  • Edge: 109.
  • Firefox: not supported.
  • Safari: behind a flag.

Source

Speculation Rules API saat ini diterapkan di browser berbasis Chromium, tetapi Chrome memublikasikan spesifikasi API melalui proses standar W3C dan ingin browser lain menerapkan API ini.

Saat ini, proxy pengambilan data pribadi hanya diterapkan di Chrome, bukan di browser berbasis Chromium lainnya. Namun, jika browser lain menerapkan proxy pengambilan data pribadi mereka sendiri, Google Penelusuran juga dapat menerapkan peningkatan ini di sana.

Karena implikasi privasi dari pengambilan data tanpa proxy pengambilan data pribadi, Google Penelusuran tidak melakukan pengambilan data di browser yang tidak mendukung teknologi ini, dan oleh karena itu belum menerapkan penggantian menggunakan teknologi lain untuk browser lain. Namun, sebagai peningkatan progresif, hal ini hanya berarti pengguna di browser tersebut tidak mendapatkan manfaat dari peningkatan kecil kecepatan ini.

Coba di situs Anda.

Speculation Rules API tersedia untuk digunakan semua situs, bukan hanya Google Penelusuran. Selain kemampuan pengambilan data sebelumnya yang dibahas di sini, pra-rendering menawarkan manfaat lebih lanjut jika dan di mana pun fitur ini dapat digunakan. Dengan situs besar seperti Google Penelusuran yang menunjukkan manfaat jelas dari API ini untuk pengalaman pengguna, kami mendorong semua pemilik situs untuk mempelajari cara menggunakan dan berpotensi mendapatkan manfaat dari API ini.

Selain itu, perlindungan privasi yang dijelaskan dalam postingan ini juga tersedia untuk situs lain—dengan catatan bahwa pengguna harus mengaktifkan dukungan Pemuatan Awal yang Diperluas di setelan mereka agar situs non-Google dapat merutekan traffic menggunakan proxy pengambilan data pribadi Google. Hal ini karena Google diperkenalkan sebagai pihak tambahan antara pengguna dan situs, padahal hal ini tidak diperlukan di situs Google karena Google sudah menjadi salah satu pihak yang terlibat.