Prepare while the final response is pending
01HTTP 103 Early Hints lets a server send likely response fields before it finishes preparing the final answer. A client can start useful work sooner.
The final response completes the original request. The hint was only preparation; it did not guarantee this status, these fields or a performance benefit.
Source for this drawing: RFC 8297 · Read RFC section 1 ↗
New to this? Start hereA quick picture + helpful background
A message needs an address.
Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.
Helpful first, if these ideas are unfamiliar
These pictures are analogies to help you learn. The linked RFC explains the actual rules.
Terms in this drawing
- Informational response
- An interim 1xx response sent before the final response; it does not finish this request.
- Speculative
- Work begun before knowing it will be needed; it can turn out to be unnecessary.
- Preload
- A link relation hinting that a resource may be useful soon. Actual client resource policy still applies.
Related RFCs and changes
“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.
An early hint does not complete the original request.
- The 103 response is informational: the original request still needs its final response.
- A client can speculatively evaluate a Link field with rel=preload and start fetching the resource while it waits. This is an optimization, not mandatory fetching.
- Hints differ from server push: in this example the client chooses to send an ordinary asset request. No asset body is pushed inside the 103.
The server may be waiting for upstream work or a database result. The illustration uses fictional HTTP/1.1 message labels and a same-origin style resource, but does not claim browser/network traces or a measured speedup. The immutable December 2017 memo says Experimental; current RFC Editor metadata lists Proposed Standard. It is not a new HTTP version.
Read the RFC section ↗