Tentang Interaction to Next Paint
Apa itu Interaction to Next Paint?
Interaction to Next Paint mengukur berapa lama halaman merespons secara visual saat seseorang berinteraksi dengannya—ketukan, klik, atau penekanan tombol. Pengukuran ini berlangsung sejak interaksi terjadi hingga layar diperbarui berikutnya.
Yang diukur adalah kesan bahwa halaman tidak merespons: menu yang tidak terbuka, tombol yang ditekan dua kali karena tidak terjadi apa-apa saat pertama kali ditekan. Penundaan tersebut hampir selalu disebabkan oleh thread utama yang sedang sibuk melakukan hal lain.
INP menjadi Core Web Vital pada Maret 2024, menggantikan First Input Delay. Perubahan ini penting karena metrik lama hanya mengukur jeda sebelum interaksi pertama mulai diproses, sehingga halaman yang merespons dengan cepat sekali lalu melambat setelahnya terlihat lebih baik dari kondisi sebenarnya.
Apa yang dianggap sebagai INP yang baik?
Google menganggap 200 milidetik atau kurang sebagai baik, 200 hingga 500 milidetik sebagai perlu ditingkatkan, dan apa pun di atas 500 milidetik sebagai buruk, juga pada persentil ke-75 dari interaksi nyata.
Berbeda dengan LCP, ini bukan satu pengukuran untuk setiap pemuatan halaman. Pengunjung berinteraksi berkali-kali dalam satu sesi, dan INP melaporkan hasil yang mendekati interaksi terburuk tersebut, sehingga halaman dinilai berdasarkan momen paling lambatnya, bukan kondisi biasanya.
Hal ini menjadikannya metrik yang paling sulit dimanipulasi di antara ketiganya. Halaman dapat dibuat memuat dengan cepat saat diuji; tetapi tetap responsif sepanjang sesi merupakan hasil dari cara halaman tersebut dibangun.
Apa yang biasanya menyebabkan INP buruk
Masalah INP hampir selalu berkaitan dengan JavaScript, khususnya tugas panjang yang memblokir thread utama saat pengunjung mencoba menggunakan halaman.
- Event handler yang berat menjalankan pekerjaannya secara sinkron sebelum menyerahkan kontrol.
- Skrip besar masih diproses dan dieksekusi meskipun halaman terlihat sudah siap.
- Tag pihak ketiga—widget chat, analitik, pengujian A/B, skrip iklan—saling berebut thread yang sama.
- Pekerjaan tata letak yang mahal dipicu oleh sebuah interaksi, seperti merender ulang daftar yang panjang.
- Framework merender ulang bagian halaman yang lebih besar daripada yang sebenarnya berubah akibat interaksi tersebut.
Pihak ketiga patut dicurigai secara khusus, karena mereka adalah bagian halaman yang tidak dimiliki siapa pun dan dapat berubah tanpa ada yang menerapkan perubahan apa pun.
Cara memperbaikinya
- Pecah tugas yang panjang dan beri kesempatan browser untuk merender di antaranya.
- Tampilkan hasil interaksi yang terlihat terlebih dahulu, lalu lakukan pekerjaan yang tersisa.
- Tunda apa pun yang tidak diperlukan untuk interaksi pertama, terutama skrip pihak ketiga.
- Audit pengelola tag. Sebagian besar situs memuat tag yang sudah bertahun-tahun tidak dibutuhkan siapa pun.
- Hindari merender ulang seluruh bagian ketika hanya satu elemen yang berubah.
- Uji pada ponsel kelas menengah, karena thread jauh lebih mudah terbebani dibandingkan pada laptop.
Yang diperiksa alat ini
Tes INP membaca data lapangan Google untuk halaman tersebut—pengukuran yang dikumpulkan dari pengunjung nyata di Chrome—dan menunjukkan posisinya terhadap ambang batas di atas.
INP hanya dapat diukur ketika seseorang benar-benar berinteraksi, sehingga metrik ini paling mungkin tidak tersedia pada halaman yang sepi atau yang hanya dibaca orang. Itu bukan kegagalan; artinya belum ada yang dapat dilaporkan.
Ke mana selanjutnya
Responsivitas adalah masalah pada skrip, jadi mulailah dengan memeriksa apa yang dijalankan halaman. Periksa
Error JavaScript, lihat berapa banyak file terpisah yang dimuat menggunakan alat
permintaan halaman, dan pastikan tidak ada yang benar-benar rusak dengan
audit situs lengkap.