When a browser requests a page, your server starts building the HTML response. That takes time. Database queries, template rendering, API calls. During that entire window, the browser is sitting idle, waiting.
HTTP 103 Early Hints changes that. Your server can send a preliminary response with Link headers before the final 200 response is ready. The browser sees those Link headers and immediately starts fetching critical resources like stylesheets, fonts, and preconnect targets.
This is dead time recovered. The browser was going to wait anyway. Now it's warming up connections and downloading assets while your server finishes its work.
How it works
The flow is simple:
- Browser sends GET request
- Server immediately returns
103 Early HintswithLink: </style.css>; rel=preload; as=style - Browser starts fetching style.css
- Server finishes building the page, returns
200 OKwith the HTML - When the HTML references style.css, it's already downloaded or in progress
RFC 8297 defined this in 2017. Chrome supported it in 2022. Cloudflare, Fastly, and nginx all support sending 103 responses. But adoption is still minimal because most frameworks don't surface it and most developers don't know it exists.
The performance difference
The gains are proportional to your server think time. If your server takes 50ms to build a response, Early Hints saves you very little. If it takes 300-500ms (common for dynamic pages hitting databases and APIs), that's 300-500ms of browser idle time converted into parallel asset fetching.
For pages with render-blocking CSS and web fonts, that's often the difference between a 2.0s and a 1.5s LCP. No code changes. No architecture overhaul. Just a configuration change on your server or CDN.
What the tool checks
The Early Hints 103 Audit probes your URL and checks whether your server sends 103 responses, what Link headers it includes, and whether those links match the critical resources your page actually needs. It also checks for Link: preload and Link: preconnect in your final 200 response headers, since those accomplish similar goals without the 103 dance.
If your server doesn't send Early Hints, the tool shows you what the configuration would look like for common setups: Cloudflare, nginx, Apache, Caddy, and Node.js.
It pairs well with the Preconnect Hints Hygiene Audit for validating that the connections you're warming up are ones the page actually uses.
If you're spinning up sites on a budget and want to know which performance optimizations are worth the setup cost, The $97 Launch ranks them by impact per hour of effort.
Fact-check notes and sources
- RFC 8297 "An HTTP Status Code for Indicating Hints": IETF RFC 8297
- Chrome 103 Early Hints support shipped in Chrome 103 (June 2022): Chromium blog
- Cloudflare Early Hints support: Cloudflare docs
- Shopify reported 1-4% LCP improvement from Early Hints: Chrome Dev Summit 2022
Related reading
- Preconnect hints hygiene
- Edge cache effectiveness
- CrUX field data and real-user performance
- Critical CSS and render-blocking resources
This post is informational, not performance-consulting advice. Mentions of Chrome, Cloudflare, Shopify, and IETF are nominative fair use. No affiliation is implied.