Il Total Blocking Time, spesso abbreviato in TBT, è una metrica di prestazione web che misura per quanto tempo il thread principale del browser rimane bloccato da attività di elaborazione, impedendo all’utente di interagire con la pagina. Introdotta da Google nell’ambito delle metriche di Web Vitals, rappresenta un indicatore chiave per valutare la reattività percepita di un sito, in particolare durante le fasi iniziali di caricamento.
Il valore si esprime in millisecondi e corrisponde alla somma di tutti i periodi in cui il thread principale risulta occupato per più di 50 millisecondi consecutivi, al netto dei primi 50 millisecondi di ciascun blocco. Più alto è il Total Blocking Time, più l’utente percepirà ritardi nel rispondere a clic, tocchi o digitazioni. Per questo motivo la metrica è considerata un indicatore affidabile della reattività complessiva di una pagina.
Che cos’è il Total Blocking Time
Il Total Blocking Time quantifica il tempo totale in cui il thread principale del browser è bloccato da operazioni lunghe, come l’esecuzione di codice JavaScript, l’elaborazione di stili o la costruzione del layout. Durante questi blocchi, il browser non può rispondere agli input dell’utente, che percepisce la pagina come non reattiva. La metrica si concentra sugli intervalli superiori a 50 millisecondi, considerati la soglia oltre la quale l’interazione inizia a risultare rallentata.
Il calcolo avviene sommando, per ogni attività lunga, la differenza tra la sua durata effettiva e i 50 millisecondi iniziali. Se ad esempio un’attività dura 120 millisecondi, il contributo al TBT sarà di 70 millisecondi. Sommando tutti questi contributi si ottiene il valore finale, che viene misurato in condizioni di laboratorio oppure raccolto sul campo tramite dati reali degli utenti.
Perché il Total Blocking Time è importante
Un Total Blocking Time elevato indica che la pagina impiega troppo tempo a diventare interattiva, penalizzando l’esperienza d’uso. Gli utenti che non ricevono risposta immediata ai propri comandi tendono ad abbandonare il sito, riducendo le conversioni e il coinvolgimento. Per i motori di ricerca, la reattività è un fattore rilevante nella valutazione complessiva della qualità di una pagina.
Il TBT è strettamente collegato ad altre metriche di Web Vitals, come il First Input Delay e l’Interaction to Next Paint, che misurano la reattività dal punto di vista dell’utente reale. Ridurre il Total Blocking Time significa migliorare la fluidità delle interazioni e, di conseguenza, la soddisfazione di chi naviga.
Relazione con il First Input Delay
Il First Input Delay misura il ritardo tra la prima interazione dell’utente e il momento in cui il browser riesce a elaborarla. Poiché il TBT quantifica il tempo in cui il thread principale è occupato, valori elevati di TBT tendono a produrre ritardi maggiori anche nel First Input Delay. Le due metriche sono quindi complementari: il TBT si misura in laboratorio, mentre il First Input Delay richiede dati raccolti sul campo.
Differenza rispetto al tempo di caricamento
Il tempo di caricamento indica quanto impiega una pagina a mostrare i contenuti principali, mentre il Total Blocking Time si concentra sulla capacità del browser di rispondere alle interazioni. Una pagina può apparire visivamente completa ma restare bloccata per diversi secondi, risultando di fatto inutilizzabile. Per questo motivo le due metriche vanno considerate insieme.
Come si misura il Total Blocking Time
Il Total Blocking Time viene calcolato principalmente in ambienti di laboratorio, tramite strumenti come Lighthouse o le analisi delle prestazioni dei browser. Questi strumenti simulano il caricamento della pagina e registrano tutte le attività che occupano il thread principale, individuando quelle che superano la soglia dei 50 millisecondi. Il risultato è una stima del tempo totale di blocco.
Per ottenere dati rappresentativi dell’esperienza reale, è possibile integrare la misurazione con raccolte sul campo, che registrano il comportamento effettivo degli utenti su dispositivi e reti differenti. La combinazione tra dati di laboratorio e dati reali offre un quadro più completo delle prestazioni.
Strumenti di analisi consigliati
Tra gli strumenti più utilizzati figurano Lighthouse, disponibile nei browser e in ambienti di sviluppo, e le funzionalità di profilazione delle prestazioni integrate nei browser stessi. Anche le piattaforme di monitoraggio delle prestazioni web consentono di raccogliere il TBT su larga scala, aggregando i dati di molti utenti e fornendo report periodici.
Valori di riferimento e interpretazione
Secondo le linee guida diffuse da Google, un Total Blocking Time inferiore a 200 millisecondi è considerato buono, un valore compreso tra 200 e 600 millisecondi richiede miglioramenti, mentre oltre 600 millisecondi la prestazione è da considerarsi scarsa. Queste soglie aiutano a interpretare rapidamente il risultato di un’analisi.
È importante contestualizzare il valore in base al tipo di pagina e al pubblico di riferimento. Siti con molte interazioni, come applicazioni web complesse, tendono naturalmente a valori più alti rispetto a pagine prevalentemente informative.
| Metrica | Unità di misura | Cosa misura | Fonte tipica |
|---|---|---|---|
| Total Blocking Time | Millisecondi | Tempo di blocco del thread principale | Laboratorio |
| First Input Delay | Millisecondi | Ritardo della prima interazione | Dati sul campo |
| Interaction to Next Paint | Millisecondi | Reattività complessiva alle interazioni | Dati sul campo |
| Largest Contentful Paint | Secondi | Tempo di visualizzazione dell’elemento principale | Entrambe |
| Cumulative Layout Shift | Punteggio adimensionale | Stabilità visiva della pagina | Entrambe |
Strategie per ridurre il Total Blocking Time
Ridurre il Total Blocking Time significa alleggerire il lavoro che il thread principale deve svolgere durante il caricamento e le interazioni. Le strategie più efficaci intervengono sulla quantità di codice eseguito, sulla sua priorità e sulla distribuzione del carico nel tempo. Di seguito sono elencate le principali azioni consigliate.
- Ridurre la dimensione del codice JavaScript eliminando funzionalità non utilizzate e dipendenze superflue.
- Suddividere il codice in blocchi più piccoli, caricando solo ciò che serve alla pagina corrente.
- Rimandare l’esecuzione delle attività non urgenti, in modo da non bloccare le interazioni iniziali.
- Ottimizzare l’elaborazione degli stili, evitando selettori complessi e fogli di stile troppo estesi.
- Ridurre il lavoro di costruzione del layout, semplificando la struttura della pagina e limitando le modifiche dinamiche.
- Utilizzare il caricamento differito per i contenuti e le risorse che non sono visibili immediatamente.
- Minimizzare l’uso di librerie esterne pesanti e valutare alternative più leggere.
- Monitorare regolarmente le prestazioni per individuare regressioni e intervenire tempestivamente.
Domande frequenti sul Total Blocking Time
Che cosa significa esattamente Total Blocking Time?
Indica la somma dei periodi in cui il thread principale del browser rimane occupato per più di 50 millisecondi consecutivi, al netto dei primi 50 millisecondi di ogni blocco. In pratica misura quanto a lungo la pagina non riesce a rispondere ai comandi dell’utente.
Qual è un buon valore di Total Blocking Time?
Secondo le linee guida più diffuse, un valore inferiore a 200 millisecondi è considerato buono. Valori tra 200 e 600 millisecondi richiedono miglioramenti, mentre oltre 600 millisecondi la prestazione è scarsa.
Il Total Blocking Time si misura sul campo o in laboratorio?
Il TBT viene misurato principalmente in laboratorio, tramite strumenti che simulano il caricamento della pagina. Non è una metrica tipicamente raccolta sul campo, poiché richiede l’osservazione diretta del thread principale.
Qual è la differenza tra Total Blocking Time e First Input Delay?
Il Total Blocking Time misura il tempo di blocco del thread principale in laboratorio, mentre il First Input Delay misura il ritardo della prima interazione dell’utente reale. Le due metriche sono correlate ma si basano su fonti di dati diverse.
Il Total Blocking Time influisce sulla posizione nei motori di ricerca?
La reattività è uno dei fattori considerati nella valutazione dell’esperienza di pagina. Un TBT elevato può contribuire a un giudizio negativo complessivo, con possibili ripercussioni sul posizionamento.
Come si può ridurre il Total Blocking Time?
Le azioni più efficaci includono la riduzione del codice non utilizzato, la suddivisione in blocchi più piccoli, il rinvio delle attività non urgenti e l’ottimizzazione degli stili e del layout. Il monitoraggio continuo aiuta a mantenere i risultati nel tempo.
