103 🌐 HTTP

HTTP 103 Early Hints

An interim response that sends Link headers early so the browser can preload CSS, fonts or scripts while the server is still building the page.

Seen on: REST API

Meaning

103 Early Hints lets a server (or CDN like Cloudflare) send preload/preconnect Link headers before the final 200. Browsers start fetching critical assets sooner.

It isn’t an error, but some clients, proxies and older HTTP libraries reject or mis-parse unexpected 1xx responses, and the hints must match the Link headers in the final response or they’re wasted.

Common causes

  • Server or CDN Early Hints feature enabled
  • Framework (Rails, Node 18.11+, Go) sending res.writeEarlyHints()
  • An old proxy/HTTP client not handling interim 1xx responses

⚡ Quick fix

  1. Ignore it in logs — the final response follows
  2. Disable Early Hints if a legacy client breaks
  3. Only hint assets actually used on the page

Detailed fix by platform

Node.js

  1. javascript
    res.writeEarlyHints({ link: ['</style.css>; rel=preload; as=style'] });
    res.end(html);

Cloudflare

  1. # Speed → Optimization → Content Optimization → Early Hints (on/off)

How to diagnose

  1. Client — Does the failing client support 1xx?
  2. Hints — Do they match the page’s assets?

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.