Cache Not Working Troubleshooting

Diagnose cache misses and stale-content issues from symptom to action. No input is sent to a server.

Status

Runs in your browser. No input is sent to a server. You can paste request and response separated by a blank line.

How to use

Paste symptoms and headers, then run troubleshooting. Read the report top-down for the fastest path to fixes.

Notes (this tool)

  • Results depend on pasted data only. Always verify real CDN/proxy configuration too.
  • Mask sensitive values (Cookie, Authorization) before pasting.

About this page

What does this tool do?

Analyzes request/response headers (Cache-Control, Expires, Age, ETag, Last-Modified, Vary, etc.) and extracts likely cache-failure causes.

Combines symptom text with resource type (API/HTML/static assets) to return prioritized fixes.

Common symptoms

  • Old content remains after deployment
  • Resources are fetched every time with no cache hit
  • Behavior differs only through CDN
  • 304 revalidation does not behave as expected
  • Some users still see stale responses while others do not

Debugging workflow (recommended)

  • Paste symptom text and request/response headers (blank-line separated is OK)
  • Review “Likely causes” from top to bottom
  • Apply “Next actions” one by one and re-check
  • Use dedicated inspect tools for deeper detail when needed

Recommendations by resource type

  • API (JSON): use no-store for sensitive data; otherwise no-cache + ETag/Last-Modified
  • HTML: no-cache + must-revalidate (or short max-age + validators)
  • Static assets: long max-age + immutable + versioned URL
  • HTTP Cache Mismatch
  • Cache Response Analyzer
  • Cache Diagnostic
  • Cache-Control Inspect
  • ETag Inspect
  • Last-Modified Inspect
  • Vary Inspect
  • Age Inspect

What this tool does

  • Extract likely cache-failure causes from symptoms
  • Detect contradictions across Cache-Control, validators, Vary, and date headers
  • Suggest prioritized fixes by resource type

Operational notes

  • Cache behavior differs across browser, CDN, and reverse proxy; compare captures from the same observation point.
  • Even with correct headers, URL versioning and deployment strategy can still break cache behavior.
  • Mask sensitive values before pasting.

Referenced specs

  • RFC 9111 (HTTP Caching)
  • RFC 9110 (HTTP Semantics)
  • MDN: HTTP Caching

FAQ

Does shorter max-age solve everything?

No. You often still need validators, proper Vary, and URL versioning.

Why is 304 not returned?

If-None-Match/If-Modified-Since may be absent, or validator comparison logic may not align on the server.

Why is stale content only on CDN?

Typical causes are s-maxage/surrogate rules, missing Vary, and incomplete purge. Verify CDN config and logs.

References

  1. RFC 9111
  2. RFC 9110
  3. MDN: HTTP Caching

Page-specific case studies

This page is symptom-first troubleshooting. Start by separating no-store issues from stale-update issues.

  • If every request returns 200, check no-store/no-cache directives first.
  • If updates are delayed, inspect max-age and immutable settings.
  • If only CDN stays stale, review s-maxage and purge operations.

Page-specific implementation checklist

  • Test browser cache and CDN cache separately during incident triage.
  • Always capture both request and response headers in reproduction notes.
  • Define invalidation methods such as URL versioning and purge in advance.
  • After fixes, verify expected 200-to-304 transitions.

These links are generated from site_map rules in recommended diagnostic order.

  1. HTTP Cache Mismatch — Identify root causes of cache mismatches
  2. Cache Response Analyzer — Judge cacheability from response headers
  3. Cache Diagnostic — Run cross-header diagnostics for HTTP caching
  4. Cache Control Overview — Summarize how to use Cache-Control/Pragma/Expires together
  5. How to Diagnose Stale Content After Deployment — Check cache policy by HTML/API/static assets to isolate stale deployment issues quickly
  6. How to choose cache tools — Route stale-update, missing-304, and CDN-only mismatch issues to the right tools
  7. Cache Key Inspect — Visualize cache-key splits from URL, Vary, and headers
  8. Cache-Control Inspect — Parse and interpret Cache-Control directives

Cache Control

Diagnose delivery policy across Cache-Control/Expires/Age