Ne anlama gelir?
INP, kullanıcı bir şeye tıkladığında, dokunduğunda veya klavyeyle etkileşime girdiğinde sayfanın görsel olarak yanıt vermesine kadar geçen süreyi ölçer.
Tıkladınız ve hiçbir şey olmadı — bir saniye sonra menü açıldı. INP tam olarak bu deneyimi ölçer.
Hedef değerler
- İyi: 200 ms altı
- İyileştirme gerekli: 200 - 500 ms
- Zayıf: 500 ms üstü
Nasıl hesaplanır?
Sayfa ziyareti boyunca tüm etkileşimler ölçülür ve genellikle en kötüye yakın bir değer raporlanır. Yani tek bir yavaş etkileşim bile skoru bozabilir — ilk etkileşim değil, en kötü etkileşim belirleyicidir.
Üç bileşeni
- Giriş gecikmesi: Etkileşim algılandı ama ana iş parçacığı meşgul, işlenemiyor
- İşleme süresi: Olay yöneticilerinin çalışma süresi
- Sunum gecikmesi: Sonucun ekrana çizilmesi
Başlıca nedenler
- Uzun süren JavaScript görevleri: Ana iş parçacığını bloke eder
- Ağır üçüncü taraf betikleri: Sohbet widget'ları, izleme kodları, reklam betikleri
- Aşırı büyük DOM: Binlerce öğeli sayfalarda her güncelleme pahalıdır
- Gereksiz yeniden çizimler
- Etkileşim anında yapılan senkron işlemler
İyileştirme yaklaşımı
- Uzun görevleri parçalara bölün
- Kritik olmayan betikleri erteleyin
- Üçüncü taraf betiklerini denetleyin — her birinin gerçekten gerekli olup olmadığını sorgulayın
- Etkileşime anında görsel geri bildirim verin (buton durumu değişsin), ağır işi arkada yapın
- DOM boyutunu makul tutun
Neden LCP'den zor?
LCP tek bir ana ölçümdür ve genellikle görsel optimizasyonuyla çözülür. INP ise tüm sayfa yaşam döngüsü boyunca ölçülür ve genellikle JavaScript mimarisiyle ilgilidir. Bu nedenle iyileştirilmesi daha fazla teknik müdahale gerektirir.
Not
INP, daha önce kullanılan FID (First Input Delay) metriğinin yerini almıştır. FID yalnızca ilk etkileşimin gecikmesini ölçüyordu; INP tüm etkileşimleri ve tam yanıt süresini kapsadığı için gerçek deneyimi daha doğru yansıtır.
Ne anlama gelir?
INP (Interaction to Next Paint / Etkileşimden Sonraki Boyamaya Kadar Geçen Süre), kullanıcının bir etkileşiminden (tıklama, dokunma, tuş basımı) sonra sayfanın görsel olarak yanıt vermesinin ne kadar sürdüğünü ölçer. Core Web Vitals'ın üç metriğinden biridir ve sayfanın "ne kadar akıcı ve tepkili hissettirdiğini" yansıtır. Eski FID metriğinin yerini almıştır ve daha kapsamlı bir ölçümdür.
Neden önemli?
Bir kullanıcı bir butona tıkladığında hiçbir şey olmuyorsa veya yanıt gecikiyorsa, sayfa "donmuş" veya "ağır" hissettirir. Bu, özellikle etkileşimli sitelerde ve düşük donanımlı mobil cihazlarda deneyimi ciddi biçimde bozar. INP, bu tepkisellik sorununu doğrudan ölçtüğü için kullanıcı memnuniyetiyle yakından ilişkilidir.
Neyi kötüleştirir, nasıl düzeltilir?
- Ağır JavaScript, ana iş parçacığını meşgul edip yanıtı geciktirir
- Çözüm: gereksiz JavaScript'i temizlemek ve kod bölme uygulamak
- Uzun süren işlemleri parçalara bölmek
- Üçüncü taraf betikleri sınırlamak ve ertelemek
Gerçek örnek
Etkileşimli bir web uygulamasında kullanıcılar butonlara bastıktan sonra belirgin bir gecikme yaşıyordu; INP değeri zayıftı. Ağır JavaScript kod bölme ile parçalanıp gereksiz betikler kaldırıldığında, etkileşimler anında yanıt vermeye başladı ve INP hedef değerin altına indi. Bu, INP'nin çoğunlukla JavaScript kaynaklı olduğunu gösterir.
Sık sorulanlar
İyi bir INP değeri nedir? Genellikle 200 ms altı "iyi", 200-500 ms "iyileştirme gerekli", 500 ms üstü "zayıf" kabul edilir.
INP ile LCP farkı ne? LCP yükleme hızını (içerik ne zaman göründü), INP ise etkileşim tepkiselliğini (tıklamaya ne kadar hızlı yanıt verildi) ölçer.
Özet
INP, kullanıcı etkileşimlerine sayfanın ne kadar hızlı görsel yanıt verdiğini ölçen bir Core Web Vitals metriğidir. Genellikle ağır JavaScript'ten kaynaklanır; kod bölme, gereksiz betik temizliği ve işlemleri parçalamayla iyileştirilir.