I dati sull'utilizzo di Chrome mostrano che il 90% del tempo dell'utente su una pagina viene trascorso dopo il caricamento. Pertanto, è importante misurare attentamente l'adattabilità durante il ciclo di vita della pagina. Questo è ciò che viene valutato dalla metrica INP.
Una buona reattività indica che una pagina risponde rapidamente alle interazioni. Quando una pagina risponde a un'interazione, il browser visualizza un feedback visivo nel frame successivo visualizzato. Il feedback visivo indica se, ad esempio, un articolo che aggiungi al carrello degli acquisti online viene effettivamente aggiunto, se è stato aperto un menu di navigazione mobile, se i contenuti di un modulo di accesso vengono autenticati dal server e così via.
Ovviamente, alcune interazioni richiedono più tempo di altre, ma nel caso di interazioni particolarmente complesse, è importante presentare rapidamente un feedback visivo iniziale per informare l'utente che qualcosa sta succedendo. Il frame successivo che il browser dipingerà è la prima opportunità per farlo.
Pertanto, lo scopo di INP non è misurare tutti gli effetti finali di un'interazione, come i recuperi della rete e gli aggiornamenti dell'interfaccia utente da altre operazioni asincrone, ma il tempo in cui viene bloccato il rendering next. Ritardando il feedback visivo, gli utenti potrebbero avere l'impressione che la pagina non risponda abbastanza rapidamente e INP è stato sviluppato per aiutare gli sviluppatori a misurare questa parte dell'esperienza utente.
Nel video che segue, l'esempio a destra offre un feedback visivo immediato che segnala l'apertura di una fisarmonica. Nell'esempio a sinistra viene mostrata una scarsa reattività e come può creare esperienze utente scadenti.
Questa guida spiega come funziona l'INP, come misurarlo e fornisce indicazioni sulle risorse per migliorarlo.
Che cos'è INP?
L'INP è una metrica che valuta l'adattabilità complessiva di una pagina alle interazioni degli utenti osservando la latenza di tutte le interazioni di clic, tocco e tastiera che si verificano durante la durata della visita di un utente a una pagina. Il valore INP finale corrisponde all'interazione più lunga osservata, ignorando i valori anomali.
L'INP viene calcolato osservando tutte le interazioni effettuate con una pagina. Per la maggior parte dei siti l'interazione con la latenza peggiore viene segnalata come INP.
Tuttavia, per le pagine con un numero elevato di interazioni, interruzioni casuali possono determinare un'interazione a latenza insolitamente elevata su una pagina altrimenti reattiva. Maggiore è il numero di interazioni che si verificano su una determinata pagina, maggiori sono le probabilità che ciò si verifichi.
Per misurare meglio l'effettiva reattività delle pagine con un elevato numero di interazioni, ignoriamo un'unica interazione più elevata ogni 50 interazioni. La maggior parte delle esperienze sulle pagine non ha più di 50 interazioni, perciò più spesso viene segnalata l'interazione peggiore. Il 75° percentile di tutte le visualizzazioni di pagina viene quindi riportato come di consueto, il che elimina ulteriormente gli outlier per assegnare un valore percepito dalla stragrande maggioranza degli utenti o migliore.
Un'interazione è un gruppo di gestori di eventi che si attivano durante lo stesso gesto logico dell'utente. Ad esempio, "tocca" Le interazioni su un dispositivo touchscreen includono più eventi, ad esempio pointerup
, pointerdown
e click
. Un'interazione può essere generata da JavaScript, CSS, controlli del browser integrati (ad esempio gli elementi del modulo) o una combinazione di questi.
La latenza di un'interazione è costituita dalla singola durata più lunga di un gruppo di gestori di eventi che generano l'interazione, dal momento in cui l'utente inizia l'interazione a quello in cui il browser visualizza il frame successivo.
Cos'è un buon punteggio INP?
Blocca le etichette, ad esempio "Buono" o "scadente" di una metrica di reattività è difficile. Da un lato, vuoi incoraggiare pratiche di sviluppo che diano la priorità a una buona reattività. D'altra parte, occorre tenere conto del fatto che le capacità dei dispositivi che le persone utilizzano per stabilire aspettative realizzabili in termini di sviluppo sono molto variabili.
Per assicurarti di offrire esperienze utente con una buona reattività, una buona soglia da misurare è il 75° percentile dei caricamenti di pagine registrati sul campo, segmentato tra dispositivi mobili e computer:
- Un INP inferiore o pari a 200 millisecondi indica che una pagina ha una buona reattività.
- Un INP superiore a 200 millisecondi e inferiore o pari a 500 millisecondi indica che la reattività di una pagina richiede miglioramenti.
- Un INP superiore a 500 millisecondi indica che una pagina ha una scarsa reattività.
Che cos'è un'interazione?
Il fattore principale per l'interattività è spesso JavaScript, anche se i browser offrono l'interattività tramite controlli non basati su JavaScript, come caselle di controllo, pulsanti di opzione e controlli basati su CSS.
Ai fini di INP, vengono osservati solo i seguenti tipi di interazione:
- Fare clic con il mouse.
- Toccare un dispositivo con un touchscreen.
- Premere un tasto su una tastiera fisica o sullo schermo.
Le interazioni avvengono nel documento principale o negli iframe incorporati nel documento, ad esempio facendo clic sul pulsante di riproduzione in un video incorporato. Gli utenti finali non sono consapevoli di cosa contiene o meno un iframe, pertanto è necessario utilizzare INP negli iframe per misurare l'esperienza utente per la pagina di primo livello. Poiché le API web JavaScript non hanno accesso ai contenuti degli iframe, questo potrebbe mostrare una differenza tra CrUX e RUM
Le interazioni possono essere costituite da più eventi. Ad esempio, una sequenza di tasti include gli eventi keydown
, keypress
e keyup
. Le interazioni di tocco contengono eventi pointerup
e pointerdown
. L'evento con la durata maggiore nell'interazione è ciò che contribuisce alla latenza totale dell'interazione.
L'INP della pagina viene calcolato quando l'utente esce dalla pagina. Il risultato è un singolo valore rappresentativo dell'adattabilità complessiva della pagina durante il suo ciclo di vita. Un INP basso indica che una pagina è stata reattiva in modo affidabile all'input dell'utente.
Qual è la differenza tra INP e il First Input Delay (FID)?
INP è la metrica successiva a First Input Delay (FID). Sebbene entrambe siano metriche di reattività, la funzione FID ha misurato solo il ritardo di input della prima interazione su una pagina. INP migliora il FID osservando tutte le interazioni su una pagina, a partire dal ritardo di input, fino al tempo necessario per eseguire i gestori di eventi e infine fino a quando il browser non esegue il rendering del frame successivo.
Queste differenze indicano che sia INP che FID sono tipi diversi di metriche di reattività. Se la metrica FID era una metrica della reattività del caricamento progettata per valutare la prima impressione della pagina sull'utente, l'INP è un indicatore più affidabile dell'adattabilità complessiva, indipendentemente dal momento in cui si verificano le interazioni con la pagina.
Cosa succede se non viene segnalato alcun valore INP?
È possibile che una pagina non restituisca alcun valore INP. Ciò può accadere per una serie di motivi, tra cui:
- La pagina è stata caricata, ma l'utente non ha mai fatto clic, toccato o premuto un tasto sulla tastiera.
- La pagina è stata caricata, ma l'utente ha interagito con essa utilizzando gesti che non vengono misurati, come lo scorrimento o il passaggio del mouse sugli elementi.
- Un bot, ad esempio un crawler di ricerca o un browser headless, che non è stato sottoposto a script per interagire con la pagina, sta accedendo alla pagina.
Come misurare l'INP
L'INP può essere misurato sia sul campo che in laboratorio, in modo da simulare interazioni realistiche degli utenti.
Sul campo
Idealmente, il tuo percorso verso l'ottimizzazione di INP inizia con i dati sul campo. Nella migliore delle ipotesi, i dati dei campi forniti da Real User Monitoring (RUM) forniranno non solo il valore INP di una pagina, ma anche dati contestuali che evidenziano quale interazione specifica è stata responsabile del valore INP stesso, se l'interazione si è verificata durante o dopo il caricamento della pagina, il tipo di interazione (clic, pressione di un tasto o tocco) e altre tempistiche importanti che possono aiutarti a identificare quale parte dell'interazione ha influito sulla reattività.
Se il tuo sito web è idoneo per essere incluso nel Report sull'esperienza utente di Chrome (CrUX), puoi ottenere rapidamente dati sul campo relativi a INP tramite CrUX in PageSpeed Insights (e altri Core Web Vitals). Come minimo, puoi ottenere un'immagine a livello di origine dell'INP del tuo sito web, ma in alcuni casi puoi anche ottenere dati a livello di URL.
Tuttavia, CrUX è in grado di indicare se esiste un problema, ma non è in grado di indicarti la causa. Una soluzione RUM può aiutarti a scoprire ulteriori dettagli sulle pagine, sugli utenti o sulle interazioni degli utenti che presentano problemi di reattività. Riuscire ad attribuire l'INP alle interazioni individuali evita supposizioni e sprechi di sforzi.
Nel laboratorio
In modo ottimale, ti consigliamo di iniziare il test nel lab quando avrai a disposizione dati sul campo che suggeriscono che una pagina abbia interazioni lente. Con i dati sul campo, il lavoro di riproduzione di interazioni problematiche in laboratorio risulterà molto più semplice.
Tuttavia, è del tutto possibile che non si disponga di dati dei campi. Anche se l'INP può essere misurato in alcuni strumenti di laboratorio, il valore INP risultante per una pagina durante i test di laboratorio dipenderà dalle interazioni eseguite durante il periodo di misurazione. I comportamenti degli utenti possono essere imprevedibili e molto variabili, il che significa che i test in laboratorio potrebbero non far emergere interazioni con i problemi allo stesso modo dei dati sul campo. Inoltre, alcuni strumenti di lab non segnaleranno l'INP di una pagina perché osservano solo il caricamento di una pagina senza alcuna interazione. In questi casi, il tempo di blocco totale (TBT) può essere una metrica proxy ragionevole per INP, ma di per sé non sostituisce l'INP.
Anche se gli strumenti del lab presentano delle limitazioni quando si tratta di valutare l'INP di una pagina, ci sono alcune strategie per riprodurre le interazioni lente nel lab. Le strategie includono seguire i flussi utente comuni e testare le interazioni lungo il percorso, nonché interagire con la pagina durante il caricamento (quando il thread principale è spesso più intenso) per identificare le interazioni lente durante quella parte cruciale dell'esperienza utente.
Come migliorare INP
È disponibile una raccolta di guide sull'ottimizzazione di INP per guidarti nel processo di identificazione delle interazioni lente sul campo e sull'utilizzo dei dati di laboratorio per identificare le cause e ottimizzarle.
Log delle modifiche
A volte vengono scoperti bug nelle API utilizzate per misurare le metriche e talvolta nelle definizioni delle metriche stesse. Di conseguenza, a volte devono essere apportate delle modifiche che possono apparire come miglioramenti o regressioni nei report e nelle dashboard interni.
Per aiutarti a gestire questa situazione, tutte le modifiche all'implementazione o alla definizione di queste metriche verranno riportate in questo Log delle modifiche.
Se hai un feedback per queste metriche, forniscilo nel gruppo Google web-vitals-feedback.
Verifica le tue conoscenze
Qual è l'obiettivo principale della metrica INP?
Quali dei seguenti tipi di interazione vengono osservati ai fini del calcolo dell'INP? (Seleziona tutte le opzioni pertinenti)
Com'è la "latenza" di un'interazione definita per INP?
Qual è la differenza tra INP e FID?
In quali circostanze i dati INP potrebbero non essere disponibili per una pagina in strumenti come PageSpeed Insights?
Qual è la strategia più efficace per riprodurre le interazioni lente in un ambiente di laboratorio?
✨ Questo quiz è stato generato da Gemini 1.5 ed è stato rivisto da persone. Condividi il tuo feedback