103 Early Hints (RFC 8297) consente a un server di inviare alcune intestazioni, di solito Link con rel=preload o rel=preconnect, prima che la risposta definitiva sia pronta. Mentre il server sta ancora generando la pagina, il browser può già aprire connessioni e scaricare CSS, font o script critici. La risposta definitiva, normalmente 200 OK, segue per la stessa richiesta.
I browser trattano questi suggerimenti come consigli. I browser basati su Chromium applicano i suggerimenti preload e preconnect contenuti in un 103 per le navigazioni di primo livello su HTTP/2 e HTTP/3; gli altri browser supportano gli early hints in misura variabile. I client che non riconoscono il 103 lo ignorano. Alcune CDN possono inviare le risposte 103 al posto tuo: Cloudflare, per esempio, le genera a partire dalle intestazioni Link delle risposte precedenti.
I suggerimenti arrivano prima che il server abbia deciso lo stato definitivo, quindi la risposta finale potrebbe ancora rivelarsi un reindirizzamento o un errore, e in quel caso le risorse precaricate restano inutilizzate. Le intestazioni di un 103 non vengono riportate nella risposta definitiva: se sono importanti, ripetile anche lì.
Esempio di risposta
HTTP/1.1 103 Early Hints
Link: </assets/app.css>; rel=preload; as=style
Link: <https://cdn.example.com>; rel=preconnect
HTTP/1.1 200 OK
Date: Fri, 06 Nov 2026 10:15:32 GMT
Content-Type: text/html; charset=utf-8
Link: </assets/app.css>; rel=preload; as=style
Link: <https://cdn.example.com>; rel=preconnect
Transfer-Encoding: chunked SEO e verifica dei redirect
Il 103 non ha effetti diretti sulla SEO, perché i crawler ignorano le risposte provvisorie e indicizzano la risposta definitiva. Indirettamente, gli early hints possono migliorare per gli utenti reali metriche di caricamento come il Largest Contentful Paint. Una verifica redirect elenca lo stato finale di ogni salto; le risposte 103 vengono gestite direttamente dal client HTTP e non compaiono come salti.
Cause comuni e casi d’uso
- Una funzione della CDN come Cloudflare Early Hints ripropone le intestazioni
Link: rel=preloadviste nelle risposte precedenti. - Un application server invia un 103 mentre interroga il database o genera la pagina.
- I suggerimenti sembrano non avere alcun effetto: verifica che il sito sia servito su HTTP/2 o HTTP/3 e che i suggerimenti vengano inviati per la navigazione tra le pagine, non per le sottorisorse.