HTTP 103 Early Hints
HTTP 103 Early Hints is an interim response that allows servers to send Link headers before the final response is ready. This lets browsers start fetching critical resources โ stylesheets, scripts, fonts โ while the server is still generating the final page, reducing perceived load time.
Quick reference
| Code | 103 |
|---|---|
| Name | Early Hints |
| Category | 1xx Informational |
| Specification | RFC 8297 |
| IANA status | Assigned |
| Cacheable | No โ interim response |
| Client action | Begin preloading the resources indicated by the Link headers in the 103 response. |
| In-depth guide | HTTP 103 full guide โ |
What HTTP 103 means
RFC 8297 defines 103 Early Hints as a mechanism to hint the client about resources that will likely be needed in the final response. The server sends a 103 response with Link headers as soon as it knows which resources the page will require โ before it finishes generating the full HTML. The browser starts prefetching or preconnecting to those resources immediately, in parallel with the server generating the rest of the response.
103 is a 1xx informational response โ interim, not final. After receiving 103, the browser continues waiting for the final response (200 OK with the complete page). The 103 only triggers early resource loading; it does not represent the page content.
The performance benefit: on dynamically generated pages, the server may spend 50-200ms generating the HTML. Without 103, the browser cannot start loading CSS, JavaScript, or fonts until it receives the HTML. With 103, it starts loading those resources in parallel during the server-side generation time, reducing the total page load time.
How 103 works in practice
A typical 103 + 200 sequence for a dynamic page:
// Server sends 103 immediately while generating the page HTTP/1.1 103 Early Hints Link: </style.css>; rel=preload; as=style Link: </app.js>; rel=preload; as=script Link: <https://fonts.example.com>; rel=preconnect // [browser starts fetching style.css, app.js, and preconnecting to fonts] // [server finishes generating HTML] // Server sends final response HTTP/1.1 200 OK Content-Type: text/html Link: </style.css>; rel=preload; as=style <!DOCTYPE html>...
The browser processes the 103 headers and begins preloading resources before the 200 arrives. By the time the HTML is received, the CSS and JavaScript are already partially or fully loaded.
Browser and CDN support
Chrome and Edge support 103 Early Hints for preload and preconnect link relations. Firefox added support in 2022. Safari support is more limited. Cloudflare was an early adopter on the CDN side, implementing 103 as part of their performance optimization features. Server support requires the HTTP server to be capable of sending 1xx interim responses before the final response headers are determined โ which not all application frameworks support natively.
FAQ
What does HTTP 103 Early Hints mean?
HTTP 103 is an interim response that tells the browser to start preloading critical resources listed in the Link headers before the final page response arrives. It improves page load performance by parallelizing resource loading with server-side page generation.
How is 103 different from a Link header in the 200 response?
A Link header in the 200 response triggers preloading after the browser receives the full response. A 103 response triggers preloading earlier โ while the server is still generating the 200 response. The 103 buys the browser a head start on fetching resources during server processing time.
Does 103 require server configuration?
Yes. The server must be able to send 1xx interim responses before generating the complete response headers. Not all application frameworks or servers support this. CDN-level 103 (e.g., Cloudflare) is often easier to implement than application-level 103.
Can 103 harm performance?
If the resources hinted in 103 are wrong โ not actually needed by the final page, or different from the actual resources โ the browser wastes bandwidth on incorrect preloads. Ensure the 103 hints match the actual final response Link headers.
Related resources
On this site: HTTP 103 Early Hints โ full guide ยท HTTP 100 Continue ยท HTTP 102 Processing ยท HTTP 200 OK
Standards: RFC 8297 ยท IANA HTTP Status Code Registry ยท MDN Web Docs: 103