INP als Core Web Vital Messwert
Die Core Web Vitals Kennzahl INP (Interaction to Next Paint) war bis vor kurzem (bis zum 10. Mai 2023) noch ein experimenteller Messwert, welcher nun bereits in der Google PageSpeed Insights Prüfung angezeigt wird. Die neue KPI wird ab März 2024 offiziell die Kennzahl FID (First Input Delay) als Teil der Core Web Vitals ersetzen. Bis dahin wird sie als ausstehende Metrik behandelt. Das bedeutet, dass sie bereits geprüft wurde und fertig ist, um FID zu ersetzen, aber noch nicht im Score gewertet wird.
Was wird mit Interaction to Next Paint gemessen?
Durch die Kennzahl Interaction to Next Paint wird die Reaktionsfähigkeit der Seite bei allen Benutzerinteraktionen mit dieser gemessen. Eine niedrige Latenz bei der Verwendung einer Website ist für ein gutes Nutzererlebnis wünschenswert. Alle Reaktionszeiten werden in der Kennzahl INP zusammengefasst. Der INP-Wert für eine Seite ist die jeweils längste gemessene Interaktion.
Beispiele für Nutzerinteraktionen
Das Ergebnis der Interaktion mit der Seite ist immer ein visuelles Feedback. In Online Shops zeigt häufig eine kleine Zahl am Warenkorb an, ob der Artikel wirklich hinzugefügt wurde. Ein weiteres Beispiel ist der Klick auf das häufig verwendete sogenannte Burger-Menü (3 Balken übereinander) als Mobile-Navigation oder auch das Öffnen und Schließen einer Akkordeon-Navigation (Aufklapp-Mechanismus).
Was kann für einen schlechten INP-Wert sorgen?
Warum sehe ich die Kennzahl nicht in meiner Google PageSpeed Insights Messung?
Der Messwert kann nur über die Zugriffe echter Nutzer innerhalb der letzten 28 Tage erhoben werden. Deswegen wird die neue KPI nur dann angezeigt, wenn für die URL bereits ausreichend Felddaten (Nutzerdaten als Verlaufsbericht) zur Verfügung stehen.
Weitere Ursachen können sein:
- Keine Nutzerintaktionen
- Interaktion mit der Seite mittels Gesten (Gesten-Steuerung)
- Bot-Zugriffe (bspw. Crawler), die mit der Seite nicht in Aktion treten
Innerhalb der Labor-Daten (jeweils aktuelle Messung/Abfrage) wird die KPI aktuell nicht angezeigt. Der beste Weg für die Messung sind echte Benutzerdaten, aber man kann die INP-Daten ebenfalls mit Lighthouse in den Chrome Dev Tools messen oder aber mit der Web Vitals Erweiterung für den Chrome Browser.
INP in der Google Search Console
Im Core Web Vital Bericht der Google Search Console sind nun auch die INP-Daten integriert worden. So kann man bereits jetzt schon die betreffenden URLs abrufen, bei denen es Probleme mit diesem Wert gibt.
Wie unterscheidet sich INP von FID (First Input Delay)?
INP miss alle Seiten-Interaktionen und FID berücksichtigt lediglich die erste Interaktion mit der Seite und auch nur die Eingabeverzögerung, nicht die Ausführungszeit und Ergebnisdarstellung des nächsten Frames. FID misst sozusagen nur den ersten Eindruck, den der Nutzer bei der Verwendung der Seite hat, während INP die allgemeine Reaktionsfähigkeit misst.
Wie wird INP gemessen?
Zur Datenerhebung wird die Event Timing API verwendet. Mit Hilfe der Schnittstelle wird sowohl vor als auch nach dem Laden der Seite die Latenz gemessen. Diese ist Bestandteil des Google Chrome Browsers. Die Nutzer des Browsers sorgen somit für die notwendigen Daten. Wenn es während dem Besuch einer Seite weniger als 50 Interaktionen gibt, wird die Interaktion mit der höchsten Latenz verwendet. Bei mehr Interaktionen verwendet Google die 98. Perzentile der Latenzen.
Start der Messung erfolgt immer mit Beginn der Aktion durch den Nutzer. Die Messung wird beendet, sobald das erste visuelle Feedback auf der Seite sichtbar ist.
Diese Aktionen werden konkret gemessen:
- Mouse-Klicks
- Tipp-Eingaben über Touchscreens
- Tastatur-Eingaben (physische Tastatur und Bildschirm)
Die Messung der Labor-Daten für die Optimierung des INP kann mit einem RUM-Tool (Real User Monitoring) erfolgen. Wichtig ist hier, dass nicht nur der INP-Wert selbst, sondern auch die Kontextdaten (inklusive der Eingabemethode) zu den Nutzer-Interaktionen angezeigt werden, um eine Aussage über die verursachenden Elemente treffen zu können.
Was ist ein guter INP Wert?
- Ein niedriger INP < 200 ms ist das Ziel und wird somit als gute Latenz gewertet. Um sicherzustellen, dass dieses Ziel für die meisten Nutzer erreicht wird, ist ein guter Schwellwert zum Messen das 75. Perzentil der Seiten-Ladezeiten , segmentiert nach Mobil- und Desktop-Geräten.
- Ein INP über 200 ms, aber weniger als 500 ms bedeutet, dass die Reaktionsfähigkeit der Seite verbessert werden muss.
- Ein INP-Wert über 500 ms sagt aus, dass die Seite schlecht auf Benutzerinteraktionen reagiert.
Welche Optimierungsmaßnahmen gibt es für Interaction to Next Paint?
Ganz grundsätzlich ist es sehr wichtig, dass der Nutzer immer sehr schnell ein visuelles Feedback erhält, dass seine Aktion mit der Seite zu einem bestimmten Ergebnis geführt hat oder dass durch sein Handeln gerade etwas passiert.
Wenn in der Google Search Console oder im PageSpeed Insights Report Felddaten vorliegen, die auf einen hohen INP-Wert hindeuten, wird eine Optimierung erforderlich.
Auch ein optimierter HTML-DOM mit möglichst wenig Elementen und Verschachtelungen sorgt für ein schnelles Rendering der Seite und beeinflusst damit den INP positiv.
Bei Websites mit vielen interaktiven Elementen ist die Verbesserung des INP ein längerer Prozess.Es kann mitunter schwierig sein, herauszufinden, welche Interaktion zu einem schlechten Nutzererlebnis führt.
Beispiel zur Optimierung einer Akkordeon-Navigation:
- Verlinkung des gesamten Elements, sodass der Nutzer nicht ganz genau das Plus-Zeichen zum Aufklappen oder die Überschrift treffen muss, um den Inhalt des Akkordeon sichtbar zu machen.
- Schnelles Aufklappen, anstelle von langsamen Sliden.
Long Animation Frames (LoAF) API
Um einen schlechten INP-Score zu verbessern kann man die neue Google Chrome LoAF API nutzen.
Die API ermöglicht es, dass Entwickler schnell, einfach und sehr präzise Informationen darüber erhalten, welche Dateien die Ursache für das schlechte Nutzererlebnis sind. Somit lässt sich herausfinden, ob eigene oder externe Dateien optimiert werden müssen und ob es sich um JavaScript-Dateien handelt oder um andere Ressourcen.
Mit Hilfe der LoAF-API lässt sich das Nutzererlebnis durch neue Informationen somit hervorragend verbessern.
Was ändert sich, wenn man die Google Page Speed Insights API nutzt?
Gebraucht man die Google Page Speed Insights API, so erhält man den identischen Messwert nun zusätzlich mit einer anderen Bezeichnung. INTERACTION_TO_NEXT_PAINT statt EXPERIMENTAL_INTERACTION_TO_NEXT_PAINT. Das Attribut EXPERIMENTAL_INTERACTION_TO_NEXT_PAINT wird am 08. August 2023 dann aus der Antwort für API-Abfragen entfernt.