Cloudflare cache: uncacheable responses now all return BYPASS!
Hey there, it's Shii-chan! Today I've got a small but quietly useful cache story for you.
Cloudflare ChangelogWhat was announced?
From the Cloudflare Changelog: the rules for reporting cache status have changed. Until now, responses that Cloudflare decided not to cache came back as a mix of BYPASS and MISS. From now on, any response that cannot be cached consistently returns BYPASS.
The story so far
There are lots of reasons Cloudflare might not cache a response — the response is over the maximum cacheable file size for your plan, the origin sends Cache-Control: no-cache, private, or max-age=0, the response has a Set-Cookie header, or the request carries an Authorization header.
But before, only some of these returned BYPASS. Others, like exceeding the maximum file size, returned MISS on every request. Since the response could never be cached, every request kept returning MISS, and it was hard to tell whether the cache was broken or Cloudflare had deliberately skipped caching.
What changes
Now BYPASS is a consistent signal that Cloudflare chose not to cache, whatever the reason. MISS is reserved for cacheable responses that simply were not in the local cache at request time. If you read cache logs, that's one less thing to second-guess.
Dive Deep
After this rolls out, your analytics should shift like this:
- MISS rate goes down: uncacheable responses no longer count as misses.
- BYPASS rate goes up: those same responses show up as bypasses.
- Cache hit ratio goes up: uncacheable traffic that could never be cached is no longer in the denominator, so the number is more accurate.
Your total request volume and origin traffic don't change — only the label does.
Browser cache TTL behavior is preserved too. Only the label changes; whether TTL is applied still depends on the real reason Cloudflare didn't cache — things like your Origin Cache Control setting. Responses that used to be MISS and now show BYPASS keep getting browser cache TTL applied, just as before.
Wrap-up
- Uncacheable responses now uniformly return
BYPASS. MISSnow means "cacheable, but not in cache right now".- Analytics shift: MISS rate down, BYPASS rate up, hit ratio up — total traffic unchanged.
- Browser cache TTL behavior stays the same.
If you're an infra or SRE person staring at cache logs and hit ratios every day, this small change lands nicely for you!