Monitor type

Cloudflare Cache Monitor

Watches the cf-cache-status header on a URL and alerts you the moment it stops matching what you expect.

A Cloudflare cache monitor is a specialised uptime monitor for anyone running behind Cloudflare: it checks the cf-cache-status response header on a URL and alerts if it ever stops matching the behaviour you expect. Set a page you expect to always be served from Cloudflare's cache (a MISS or BYPASS means something broke caching), or a page you expect to always be dynamic (a HIT means stale content is being served when it shouldn't be). Either way, it catches cache-configuration regressions that a normal status-code check would sail straight past.

How this uptime monitor works

  1. Add the URL you want to check the cf-cache-status header on.
  2. Choose what you expect: "Always cached" (only a literal HIT counts as correct) or "Always dynamic" (a HIT is treated as a violation).
  3. Pick a check interval, from hourly up to weekly, and a timeout.
  4. Kawze reads the cf-cache-status header on each check and compares it against your expectation, showing you the last seen value.
  5. A mismatch triggers an alert the same way as any other monitor.

Cloudflare Cache Monitor features

Every feature this monitor supports, and which plan it's included on.

cf-cache-status header checking

Free

Reads Cloudflare's own cache-status header directly, rather than inferring cache behaviour from response time.

"Always cached" mode

Free

Alert if the header is ever anything other than a literal HIT - catches broken cache rules or origin misconfiguration.

"Always dynamic" mode

Free

Alert if the header is ever HIT when it shouldn't be - catches stale content being served from cache for pages that must always be fresh.

Last-seen status display

Free

See the most recent cf-cache-status value read from the URL.

Configurable timeout

Free

How long to wait for a response before the check counts as failed.

Tags and groups

Free

Organize Cloudflare cache monitors alongside your other monitors.

Email and SMS alerts

Free

Per team member, open and recovery alerts on every channel.

Webhooks and Slack alerts

Free

Route cache-mismatch alerts into Slack or any webhook endpoint.

6-hour check interval

Entry+

Faster than Free's fixed daily interval.

Hourly check interval

Mid+

The fastest available interval for this monitor type.

What's free and what's paywalled

  • Both cache-status modes, the timeout, and every alert channel are available on every plan, including Free.
  • Check frequency is gated by tier: Free is fixed at once a day, Entry unlocks every 6 hours, and Mid/Max unlock the full range down to once an hour.
  • Cloudflare cache monitors count against the same account-wide monitor limit as every other type (5 to 300, by plan).
See full pricing and plan comparison

Frequently asked questions

What does a Cloudflare cache monitor actually check?

The cf-cache-status response header Cloudflare adds to every response - HIT, MISS, EXPIRED, BYPASS, DYNAMIC, and so on - compared against whether you expect that URL to always be cached or always be dynamic.

Why not just monitor uptime normally?

A page can return a perfectly healthy 200 status code while being served from the wrong cache state - stale content from cache when it should be dynamic, or an uncached, slow response when it should be cached. A standard uptime monitor can't see that; this one reads the cache header directly.

Is this free to use?

Yes - available on every plan including Free, which runs it once a day. Entry unlocks every 6 hours, and Mid/Max unlock down to hourly.