Sonraki boyamayla etkileşim (INP)

Tarayıcı Desteği

  • 96
  • 96
  • x
  • x

Kaynak

Sonraki Boyamayla Etkileşim (INP), Etkinlik Zamanlaması API'sinden gelen verileri kullanarak sayfa duyarlılığını değerlendiren kararlı bir Önemli Web Verileri metriğidir. INP, sayfa ömrü boyunca sayfayla gerçekleştirilen tüm tıklama, dokunma ve klavye etkileşimlerinin gecikmesini gözlemler ve aykırı değerleri göz ardı ederek en uzun süreyi bildirir. Düşük bir INP, sayfanın kullanıcı etkileşimlerinin büyük çoğunluğuna tutarlı bir şekilde hızlı yanıt verebildiği anlamına gelir.

Hızlı yanıt verme süresi, bir sayfanın etkileşimlere hızlı yanıt vermesi anlamına gelir. Bir sayfa etkileşime yanıt verdiğinde, tarayıcı etkileşimin başarılı olduğunu göstermek için oluşturduğu sonraki karede görsel geri bildirim sunar. Örneğin, aşağıdaki konularda geri bildirim sağlayabilir:

  • Çevrimiçi alışveriş sepetine eklediğiniz bir öğenin gerçekten eklenip eklenmediği.
  • Bir mobil gezinme menüsünün açılıp açılmadığı.
  • Giriş içeriğinin sunucu tarafından doğrulanıp doğrulanmadığı.

Bazı etkileşimler doğal olarak diğerlerinden daha uzun sürer ancak özellikle karmaşık etkileşimlerde, kullanıcıya bir şey olduğunu söylemek için hızlıca başlangıçtaki görsel geri bildirimler sunmak önemlidir. Bunun için bir sonraki boyaya geçmek için gereken süre budur. Bu nedenle, INP'nin amacı etkileşimin tüm nihai etkilerini (ör. diğer eşzamansız işlemlerden gelen ağ getirmeleri ve kullanıcı arayüzü güncellemeleri) ölçmek değil, sonraki boyamanın engellendiği süreyi ölçmektir. Görsel geri bildirimi geciktirerek kullanıcıların sayfanın eylemlerine yanıt vermediğini düşünmesini sağlarsınız.

INP'nin amacı, kullanıcının başlattığı tüm etkileşimler veya çoğu etkileşim için, bir kullanıcının bir etkileşimi başlatmasından sonraki karenin boyanmasına kadar geçen süreyi en aza indirmektir.

Kötü ve iyi duyarlılık karşılaştırması örneği. Sol tarafta, uzun görevler akordeonun açılmasını engelliyor. Bu, kullanıcının deneyimin bozuk olduğunu düşünerek birden fazla kez tıklamasına neden olur. Ana iş parçacığı yetiştiğinde gecikmeli girişleri işler ve bu da akordeonun beklenmedik bir şekilde açılıp kapanmasına neden olur. Sağ taraftaki daha duyarlı bir sayfa, akordeonu hızlı ve olaysız bir şekilde açar.
INP'nin nasıl hesaplandığına ilişkin not

INP, bir sayfayla yapılan tüm etkileşimler gözlemlenerek hesaplanır. Çoğu site için en düşük gecikmeyle etkileşim INP olarak raporlanır. Ancak çok sayıda etkileşim bulunan sayfalarda rastgele kesintiler, normalde duyarlı olan bir sitede alışılmadık derecede yüksek gecikmeli bir etkileşime neden olabilir. Etkileşim ne kadar fazla olursa bu gerçekleşme olasılığı da o kadar artar. Buna karşı koymak ve bu tür sayfaların gerçek yanıtlama düzeyini daha iyi ölçmek amacıyla her 50 etkileşim için en yüksek bir etkileşimi göz ardı ederiz. Sayfa deneyimlerinin büyük çoğunluğunda 50'den fazla etkileşim bulunmadığından tarayıcı neredeyse her zaman en kötü etkileşimi bildirmeye devam eder. Daha sonra, tüm sayfa görüntülemelerinin 75. yüzdelik dilimi her zamanki gibi raporlanır ve böylece genel kullanıcı deneyimini daha iyi temsil eden bir değer sunmak için aykırı değerler de kaldırılır.

Etkileşim, aynı mantıksal kullanıcı hareketi sırasında tetiklenen bir etkinlik işleyici grubudur. Örneğin, dokunmatik ekranlı bir cihazdaki "dokunma" etkileşimleri pointerup, pointerdown ve click gibi birden fazla etkinliği içerir. Etkileşimler JavaScript, CSS, form öğeleri gibi yerleşik tarayıcı kontrolleri veya bunların bir kombinasyonu tarafından yönlendirilebilir.

Bir etkileşimin gecikmesi, etkileşimi artıran bir etkinlik işleyici grubunun en uzun süresinden oluşur. Bu süre, kullanıcının etkileşimi başlatmasından sonraki karenin görsel geri bildirimle sunulduğu ana kadar sürer.

Önemli nokta: INP'nin nasıl ölçüldüğü hakkında daha fazla bilgi için "Etkileşimde neler var?" bölümüne bakın.

İyi bir INP puanı nedir?

Kullanıcı deneyimlerini iyi yanıt verme hızıyla sunduğunuzdan emin olmak için ölçülmesi gereken bir eşik, alanda kaydedilen sayfa yüklemelerinin mobil ve masaüstü cihazlar genelinde segmentlere ayrılmış 75. yüzdelik dilimidir:

  • 200 milisaniye'ye eşit veya daha az olan bir INP, sayfanızın iyi duyarlılığa sahip olduğu anlamına gelir.
  • 200 milisaniye ile 500 milisaniye arasında bir INP olması, sayfanızın yanıt verme hızının iyileştirmesi gerektiği anlamına gelir.
  • 500 milisaniye'den büyük bir INP, sayfanızın düşük yanıt hızına sahip olduğu anlamına gelir.
İyi INP değerleri en fazla 200 milisaniye, düşük değerler 500 milisaniyeden fazladır ve aradaki tüm değerlerin iyileştirilmesi gerekir.
İyi INP değerleri 200 ms veya daha kısadır. Düşük değerler 500 ms'den fazladır.

Etkileşimde neler bulunur?

Ana iş parçacığındaki bir etkileşimi gösteren diyagram. Kullanıcı, görevlerin çalıştırılmasını engellerken bir giriş yapar. Giriş, bu görevler tamamlanana kadar geciktirilir. Sonrasında işaretçi yukarı, fareyle yukarı ve tıklama etkinlik işleyicileri çalışır, ardından bir sonraki kare sunulana kadar oluşturma ve boyama çalışması başlatılır.
Etkileşimlerin ömrü. Muhtemelen ana iş parçacığındaki uzun görevler gibi faktörler nedeniyle etkinlik işleyiciler çalışmaya başlayana kadar giriş gecikmesi devam eder. Ardından, etkileşimin etkinlik işleyicileri çalışır ve sonraki kare sunulmadan önce bir gecikme daha gerçekleşir.

Etkileşimin birincil sürücüsü genellikle JavaScript'tir. Ancak tarayıcılar, onay kutuları, radyo düğmeleri ve CSS tarafından desteklenen denetimler gibi JavaScript tarafından desteklenmeyen kontroller aracılığıyla etkileşim sağlar.

INP amaçları doğrultusunda yalnızca aşağıdaki etkileşim türleri gözlemlenir:

  • Fare ile tıklama.
  • Dokunmatik ekranı olan bir cihaza dokunulduğunda.
  • Fiziksel klavyede veya ekran klavyede bir tuşa basma.

Önemli nokta: Fareyle reklamın üzerine gelme ve kaydırma, INP'yi etkilemez. Bununla birlikte, klavyeyle kaydırma (boşluk çubuğu, sayfa yukarı, sayfa aşağı vb.), INP'nin ölçtüğü diğer etkinlikleri tetikleyebilen bir tuş vuruşu içerir. Sonuçta oluşan kaydırma işlemleri, INP hesaplamasına dahil edilmez.

Etkileşimler ana dokümanda veya dokümana yerleştirilmiş iframe'lerde gerçekleşir. Örneğin, yerleştirilmiş bir videoda oynat düğmesini tıklama. Son kullanıcılar sayfanın hangi bölümlerinin iframe içinde olduğunu bilmediğinden, INP'yi tüm sayfa için doğru bir şekilde ölçmek için iframe'ler içinde INP'yi ölçmeniz gerekir. Ancak JavaScript Web API'lerinin iframe içeriğine erişimi yoktur ve bir iframe içinde INP'yi ölçemeyebilirler. Bu durum, CrUX ve RUM arasındaki fark olarak gösterilir.

Etkileşimler birden fazla etkinlikten oluşabilir. Örneğin, tuş vuruşu keydown, keypress ve keyup etkinliklerini, dokunma etkileşimleri ise pointerup ve pointerdown etkinliklerini içerir. Etkileşim içindeki en uzun süreli etkinlik, etkileşimin gecikmesi olarak seçilir.

İki etkileşim içeren daha karmaşık bir etkileşimin tasviri. Bunlardan ilki, fare düğmesi serbest bırakılmadan önce bir kare oluşturan fareyle aşağı inme etkinliğidir. Bu etkinlik, sonuç olarak başka bir kare oluşturulana kadar daha fazla işin başlatılmasını sağlar.
Kullanıcı, tıklamak için fare düğmesine bastığında, tarayıcı etkileşimi işler ve bir görsel geri bildirim çerçevesi sunar. Kullanıcı fare düğmesini serbest bıraktığında, tarayıcı başka bir kare sunmadan önce başka bir etkinlik işleyici dizisi çalışır.

INP, kullanıcı sayfadan ayrıldığında hesaplanır ve yaşam döngüsü boyunca sayfanın genel yanıt verme gücünü temsil eden tek bir değer elde edilir. Düşük bir INP, bir sayfanın kullanıcı girişine güvenilir şekilde yanıt verdiği anlamına gelir.

INP ile First Input Delay (FID) arasındaki fark nedir?

INP, First Input Delay (FID) özelliğinin yerini alan metriktir. Her ikisi de yanıt verme metriğidir ancak FID yalnızca bir sayfadaki ilk etkileşimin giriş gecikmesini ölçmüştür. INP, giriş gecikmesinden etkinlik işleyicileri çalıştırmak için gereken süreye ve son olarak tarayıcının bir sonraki kareyi boyayana kadar tüm sayfa etkileşimlerini dikkate alarak FID'yi iyileştirir.

Bu farklılıklar, hem INP hem de FID'nin farklı duyarlılık metrikleri türleri olduğu anlamına gelir. FID'nin, sayfanın kullanıcı üzerindeki ilk gösterimini değerlendirmek için tasarlanmış bir yükleme duyarlılığı metriği olduğu durumlarda, INP sayfa etkileşimlerinin süresi içinde ne zaman gerçekleştiğine bakılmaksızın genel yanıt verme süresine ilişkin daha güvenilir bir göstergedir.

Herhangi bir INP değeri bildirilmezse ne olur?

Bir sayfa hiçbir INP değeri döndürmeyebilir. Bu, aşağıdakiler dahil olmak üzere çeşitli nedenlerle ortaya çıkabilir:

  • Sayfa yüklendi, ancak kullanıcı sayfayla hiç etkileşim kurmadı.
  • Sayfa yüklendi ancak kullanıcı, kaydırma veya öğelerin üzerine gelme gibi ölçülmeyen hareketler kullanarak sayfayla etkileşime geçti.
  • Sayfayla etkileşimde bulunmak için komut dosyası çalıştırılmamış bir arama tarayıcısı veya gözetimsiz tarayıcı gibi bir bot sayfaya erişmektedir.

INP'yi ölçme

INP, çeşitli araçlar kullanılarak hem sahada hem de laboratuvarda ölçülebilir.

Önemli nokta: Web sitenizin INP'sini ölçmenin en iyi yolu, alandaki gerçek kullanıcılardan metrikler toplamaktır. Performansı değerlendirmek için laboratuvar verilerinden yararlanmaya alışkınsanız Laboratuvar ve alan verileri neden farklı olabilir? (Bu konuda ne yapılabilir) başlıklı makaleyi okumanızı öneririz.

Sahada

İdeal olarak INP'yi optimize etme yolculuğunuz alan verileriyle başlar. En iyi şekilde, Gerçek Kullanıcı İzleme'den (RUM) alınan alan verileri size yalnızca bir sayfanın INP değerini değil, aynı zamanda INP değerinden hangi belirli etkileşimin sorumlu olduğunu, etkileşimin sayfa yükleme sırasında mı yoksa sonrasında mı gerçekleştiğini, etkileşimin türünü (tıklama, tuşa basma veya dokunma) ve diğer değerli bilgileri vurgulayan bağlamsal veriler sunar.

Web siteniz Chrome Kullanıcı Deneyimi Raporu (CrUX)'na dahil edilmeye uygunsa, diğer Önemli Web Verileri'ndeki verilerin yanı sıra INP alanı verilerini PageSpeed Insights'taki CrUX üzerinden hızlıca alabilirsiniz. En azından, web sitenizin INP'sinin kaynak düzeyindeki resmini alabilirsiniz. Ancak bazı durumlarda, sayfa düzeyinde veriler de elde edebilirsiniz.

Ancak CrUX, üst düzeyde bir sorun olduğunu bildirse de genellikle sorunun ne olduğunu tam olarak anlamanıza yardımcı olacak kadar ayrıntı sağlamaz. RUM çözümü, yavaş etkileşimlere sahip sayfalar, kullanıcılar veya kullanıcı etkileşimleri hakkında daha fazla ayrıntıya ulaşmanıza yardımcı olabilir. INP'yi bireysel etkileşimlerle ilişkilendirebilmek, tahmin yürütmekten ve boşa çaba harcanmasını önlemeye yardımcı olur.

Laboratuvarda

Etkileşimlerinizin yavaş olduğunu gösteren alan verileriniz olduğunda, ideal olarak laboratuvarda testlere başlamanız önerilir. Bununla birlikte, alan verileri olmadığında laboratuvardaki yavaş etkileşimleri yeniden oluşturmak için bazı stratejiler vardır. Stratejiler arasında, yaygın kullanıcı akışlarını takip etme ve yol boyunca etkileşimleri test etme, ayrıca yükleme sırasında ana iş parçacığının genellikle en yoğun olduğu zamanlarda sayfayla etkileşimde bulunma yer alır. Böylece kullanıcı deneyiminin söz konusu önemli kısmı sırasında yavaş etkileşimleri ortaya çıkarır.

INP'yi iyileştirme

Sahadaki yavaş etkileşimleri belirleme ve bunları optimize etmek için laboratuvar verilerini kullanma hakkında rehberlik almak amacıyla INP'yi optimize etme rehberleri koleksiyonumuzu inceleyin.

Değişiklik günlüğü

Bazen metrikleri ölçmek için kullanılan API'lerde, bazen de metriklerin tanımlarında hatalar keşfedilir. Bu nedenle, değişikliklerin bazen yapılması gerekir ve bu değişiklikler dahili raporlarınızda ve kontrol panellerinizde iyileştirme veya regresyon olarak gösterilebilir.

Bu durumu yönetmenize yardımcı olmak için söz konusu metriklerin uygulanmasında veya tanımında yapılan tüm değişiklikler bu Değişiklik Günlüğü'nde gösterilmiştir.

Bu metriklerle ilgili geri bildiriminiz varsa web-önemli geri bildirim Google grubunda geri bildiriminizi paylaşın.