Che cos’è il Time To First Byte (TTFB) e come ridurlo

Che cos’è il Time To First Byte (TTFB) e come ridurlo

Il TTFB è una metrica che misura il tempo di risposta “minimo” necessario ad un sito web per restituire il primo byte di pagina. Si può ottimizzare con qualche accortezza lato server ed evitando di utilizzare troppi plugin nel proprio sito. In genere, poi, è un parametro che tende ad influenzare il PageSpeed Insights, anche se non è certamente l’unico ottimizzabile e, spesso, non è adeguato (preso da solo) a descrivere in modo coerente le prestazioni di una pagina.

Che significa Time To First Byte

La quantità nota come Time To First Byte (in sigla TTFB) è una misura utilizzata come misura di “responsività”, ovvero velocità di risposta, di una risorsa di rete generica o, nello specifico, del server di un hosting web. Il TTFB misura il tempo, in numero di millisecondi (ms), tra il momento dell’invio della prima richiesta HTTP(o HTTPS) ed il momento in cui il primo byte della comunicazione venga ricevuto dal browser. Tale quantità è composta da un certo numero di sottocomponenti, sui quali non esiste uniformità di valutazione, e che possono includere tempo di connessione del socket, tempo di invio della richiesta HTTP(S) e tempo di ricezione della stessa.

Come migliorare il Time To First Byte

Ci sono vari modi per ottimizzare il TTFB, che su WordPress ad esempio, in molti casi reali, è influenzato dal numero di plugin installati. Fate un piccolo test, ad esempio, provate a mettere un theme di base di WP, e disinstallate per qualche minuto tutti i plugin: giusto il tempo di provare a misurare la velocità, che in questo caso dovrebbe essere ottimale. Quasi certamente il TTFB sarà migliorato, e a quel punto non vi resterà che capire quale theme o plugin stia ostacolando la velocità del vostro sito. Se non cambia nulla, è ovvio che potrebbe esserci un problema alla base (cioè potrebbe risiedere nell’hosting)

Se pensate che possa dipendere dall’hosting, inoltre, potete effettuare un altro semplice “test sul campo” per capire se dipende da lui o no: provate a caricare un file di testo nella vostra root via SSH o FTP, ad esempio test.txt, copiatevi l’URL di questa pagina e misurate il TTFB di questo URL con uno dei tantissimi tool disponibili. Caricare un file di testo non richiede chiamate al db e misura in modo preciso, o quasi, il tempo necessario per il server per restituire il risultato – e dovrebbe essere ovviamente molto veloce! In teoria, se l’hosting è di qualità, il punteggio dovrebbe essere massimo, quindi ad esempio PageSpeed Insights dovrebbe restituire 100/100 su questo URL. Se è così, avete margine per ottimizzare ed è tutto ok; se non è così, invece, partite in modo non ottimale e c’è un problema di fondo, per cui è forse il caso di pensare di cambiare hosting.

Come misurare concretamente il Time To First Byte

Il TTFB è in altri termini il tempo che il browser deve attendere prima che il server si decida a mandarci il primo byte della risorsa richiesta, e che noi possiamo riceverla completamente. Questa quantità, beninteso, è diversa dal tempo necessario perchè iniziamo a vedere qualcosa sul sito (viene prima), e si colloca tra il momento in cui clicchiamo su “Invio” dopo aver digitato l’indirizzo del sito web e quello in cui il browser riceve la primissima risposta (in modo non percepibile dall’utente, salvo usare strumenti di misurazione specific come quello di Firebug).

Come è possibile vedere dal grafico qui sopra (di Firebug per Firefox, per l’appunto), che viene detto a volte grafico a cascata o waterfall, quando si scarica una qualsiasi pagina web si può fare riferimento ad una quantità che viene considerata ufficialmente da MSD, e che può essere calcolata in un qualsiasi script in Javascript, nota come Performance Timing – data da una somma di singoli contributi che concorrono, in sequenza, al calcolo del TTFB. Alcuni hanno proposto di calcolarlo come intervallo di tempo tra il redirectStart ed il responseStart (seconda e penultima fase di caricamento), ma questo calcolo potrebbe essere arbitrario e, soprattutto, varrebbe solo per il browser Firefox. In definitiva, il TTFB viene dedotto in modo relativo come differenza tra le quantità rappresentate, e solo usando browser come Chrome è possibile stimarlo in maniera precisa.

HTTP/2 e Time To First Byte

Con l’uso di HTTP/2, peraltro – che prevede la parallelizzazione di alcuni flussi di informazione contenuti nel Performance Timing – il calcolo del TTFB dovrebbe essere, almeno in teoria, notevolmente velocizzato rispetto al caso HTTP/1.1.

Non bisogna confondere il TTFB con il tempo di caricamento della pagina (load time): quest’ultimo misura usualmente, infatti, quanto impiega un client a visualizzare interamente la pagina web in modo che possa utilizzarla nella sua interezza. In questi termini, load time potrebbe avere più che a che fare con l’ottimizzazione generale del sito e con la sua percezione positiva nei confronti dei visitatori, mentre il TTFB diventa un qualcosa di più “raffinato” che riguarda le primissime fasi di inizializzazione della pagina web, quando ancora l’utente non vede nulla.

Time To First Byte come ranking factor per la SEO

A livello SEO qualche consulente ha ipotizzato (secondo un’efficace sintesi del TagliaBlog di qualche anno fa) che il TTFB possa essere importante come ranking factor per l’ottimizzazione del sito; io resto dell’idea, molto più “pacifica”, che sia solo un elemento facile da calcolare, che concorre certamente a definire la qualità del sito web (anche non in termini strettamente SEO), ed in generale  sia poco banale da ridurre (bisogna spesso intervenire sul codice del sito e del server e, soprattutto, farlo per ogni singola pagina web!), ancora meno – direi – da percepire in modo corretto.

Nota: questa misura è simile al SRT (Server Response Time).

Ad oggi, il TTFB è solo una metrica come tante, e spesso non è necessariamente indicativa delle prestazioni del sito.

(fonte: Mozilla Developer Network, StackOverflow)

0 voti


Informazioni sull'autore

Salvatore Capolupo

Consulente SEO, ingegnere informatico e fondatore di Trovalost.it, Pagare.online, Lipercubo.it e tanti altri. Di solito passo inosservato e non ne approfitto.