TTFB e SEO: come ridurre il tempo di risposta del server e migliorare la UX
Che cos’è il TTFB (Time To First Byte)
Il TTFB (Time To First Byte) misura il tempo necessario affinché il primo byte, di un oggetto in pagina, venga consegnato al browser dell’utente che ne ha fatto richiesta.
Si potrebbe pensare che in pratica questa metrica indichi la velocità di risposta di un server nel fornire contenuti di un sito web ma la cosa è un po’ più articolata perché intervengono molteplici fattori.
[divilifeshortcode id=’9530′]
TTFB: il risultato di più fattori
Intanto c’è da dire che il TTFB è il risultato di più fattori:
Il tempo necessario a una richiesta Client (es. la richiesta di una pagina da parte di un browser) per raggiungere il web server: in questo step vanno considerati il tempo di risoluzione del DNS e quello per il routing necessario per raggiungere il server;
Il tempo necessario al web server per elaborare la richiesta e dare una risposta, qui entrano in gioco svariati fattori: ad esempio il carico del server, il carico sui DB di contenuti o su file system, il livello di ottimizzazione del codice, la presenza o meno di meccanismi di caching, fino alle prestazioni dei server a livello hardware (hard disk, memoria, ecc.);
Il tempo necessario alla risposta del web server per raggiungere il Client richiedente: qui i tempi si giocano essenzialmente sulla velocità della connessione di rete.
Intervenire in maniera risolutiva su questi tre aspetti richiede un’azione su diversi fronti, analizzeremo questo nei prossimi paragrafi.
Come misurare il TTFB: gli strumenti per i test
Per misurare il TTFB ci sono svariati modi e in rete è possibile trovare numerosi strumenti per fare un test. Se utilizziamo come browser Chrome, un intervento più immediato ce lo offre proprio Google, che nella sezione degli Strumenti per sviluppatori > Network consente di misurare anche i parametri che determinano il TTFB.
Bisogna dire subito però che questo tipo di misurazione, essendo eseguita lato Client, è influenzata anche dalla velocità di connessione. Sono quindi più affidabili altri tool che eseguono il test server to server.
Tra l’altro alcuni di questi tool consentono di eseguire il test simulando che la richiesta provenga da diverse località, così come offrono anche un giudizio sui risultati, basato sui parametri suggeriti da Google Pagespeed Insights: è consigliato un valore sotto i 200 ms, ottimo se sotto i 100 ms.
Riportiamo qui alcuni dei tool più popolari per misurare il TTFB:
Se e in che misura il TTFB sia o meno un fattore di ranking per i motori di ricerca è da tempo una questione molto discussa, tanto che su questo alcuni dei principali provider di servizi IT (CloudFlare) e di piattaforme di ottimizzazione SEO (Moz), ma anche alcuni ingegneri di Google stesso, hanno animato la disputa con articoli molto ben argomentati e supportati da dati che li hanno portati a conclusioni di segno opposto.
Se infatti è ormai appurato da tanto – anche perché lo ha dichiarato con sempre maggiore forza Google stessa – che il tempo di caricamento di una pagina web è un fattore decisivo per il ranking, in quanto aspetto fondamentale della user experience, capire quanto in questo contesto sia considerato influente il TTFB, a giudicare da queste fonti, sembra tutt’altro che facile.
A chi dà al TTFB un valore decisivo, Grigorik, Performance Engineer di Google, ha risposto che un TTFB basso non è sufficiente a determinare uno score del pagespeed buono se poi il resto degli elementi della pagina non sono ottimizzati e vengono caricati lentamente.
Premiare la migliore user experience
Certo, non è sufficiente, ma ormai la strada tracciata da Google è chiara: premiare chi offre la migliore esperienza utente, che tradotto in termini più concreti significa premiare chi offre contenuti di qualità e una navigazione fluida e veloce.
Per trarre una prima conclusione che ci serva a muovere i prossimi passi, basiamoci allora sulle poche ma importanti certezze che abbiamo: a prescindere da quanto il TTFB si rifletta direttamente sul posizionamento, questo parametro contribuisce insieme agli altri a determinare la velocità di caricamento complessiva, e dunque a influenzare la user experience.
Vale quindi la pena adottare tutte le misure possibili per far sì che anche – ma non solo – questo valore sia il più basso possibile. In che modo? Lo vediamo nel prossimo paragrafo.
Come ridurre il tempo di risposta del server?
Come abbiamo detto, il TTFB è influenzato da molti fattori che riguardano l’infrastruttura a livello hardware, software e di configurazione dei vari elementi che la compongono.
Elenchiamo sinteticamente gli interventi che possono essere fatti per ottimizzare la nostra infrastruttura e abbassare non solo il TTFB ma anche il tempo di caricamento complessivo, aumentando la velocità del sito.
Performance hardware: capacità e velocità di CPU, dischi e RAM in relazione al traffico sono i primi elementi a influire sulla velocità di risposta del server. Nel caso di elevato carico valutare se è il caso di fare un upgrade.
Configurazioni del server hosting: verificare col proprio reparto IT o col proprio provider che il server sia ottimizzato per le esigenze di erogazione del sito web.
Configurazione dei database: come per il server, la configurazione dei database può incidere notevolmente sui tempi richiesti dalle interrogazioni. Ottimizzare se necessario.
Ottimizzazione del codice: verificare codice PHP (o altro usato) e JS affinché sia ottimizzato nelle richieste e faccia transitare sulla rete esclusivamente quanto necessario al rendering della pagina.
Ottimizzazione delle immagini: verificare che le immagini siano compresse usando algoritmi di compressione allo stato dell’arte
Abilitare la cache lato server: utilizzare un sistema di caching a livello server consente di ridurre il numero di richieste e quindi il suo possibile sovraccarico, contribuendo a diminuire il TTFB.
CDN: la CDN consente di ottimizzare i tempi di risposta del server sia distribuendo i contenuti dal nodo più vicino geograficamente, sia attraverso la gestione della cache e l’ottimizzazione (riduzione di peso) degli oggetti statici (JS, CSS, immagini…).
Proprio su quest’ultimo e decisivo punto Aritmetika ha lavorato a fianco di importanti partner di sviluppo per creare iSmartFrame, una soluzione in grado di ottimizzare le risorse a livelli che non hanno pari sul mercato. Non solo, la soluzione iSmartFrame oltre a ottimizzare le risorse e ridurre drasticamente i tempi di caricamento, effettua anche numerose ottimizzazioni di SEO tecnica senza toccare il codice sorgente originale del CMS.