HTTP Cache Mismatch

Analyze cache-related headers across layers. No input is sent to a server. Use it for first-pass revalidation and CDN mismatch troubleshooting.

Status

Runs in your browser. No input is sent to a server. Use this as a first-pass diagnostic step.

How to use

Paste request/response headers and click “Diagnose”. Split with a blank line (request → response).

Notes (this tool)

  • Intermediary cache behavior (CDN/proxy) depends on local rules, so real captured headers are essential.
  • Multiple causes often overlap. Fix one item at a time and observe again.

About this page

What does this tool do?

Compares cache-related headers between request and response to find likely causes.

Debugging workflow (recommended)

  • Paste request/response headers
  • Review likely causes
  • Use Cache Diagnostic for deeper analysis

Recommendations by use case

  • API (JSON): no-store or no-cache + validators
  • HTML: short max-age + validators / no-cache
  • Static assets: long max-age + immutable + versioned URL
  • Cache Response Analyzer
  • Cache Diagnostic
  • Cache-Control Inspect
  • Vary Inspect

What this tool does

  • List likely cache mismatch causes
  • Detect forced revalidation in requests

Operational notes

  • Cache behavior changes across browser, CDN, and proxy layers, so compare captures from the same observation point.
  • Header-only diagnosis may be insufficient. Also review application cache invalidation strategy and key design.

Referenced specs

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

FAQ

What is the fastest check when production and staging differ?

Compare Cache-Control, Vary, Age, and ETag at the same time and same URL across environments.

Why does only CDN return stale responses?

Typical causes include s-maxage policy, missed purges, Vary branching, and edge compression differences.

References

  1. RFC 9111
  2. RFC 9110

Page-specific case studies

Use this page when the same resource behaves differently across environments and you need header-based diffing.

  • Compare Cache-Control and Vary between production and staging.
  • Inspect CDN-added Age, Via, and X-Cache style headers.
  • Check whether ETag changes unexpectedly across compressed variants.

Page-specific implementation checklist

  • Keep diff targets aligned by time, URL, and method.
  • Record impact scope, not only whether a diff exists.
  • Minimize Vary keys to control cache branch explosion.
  • Automate header-diff checks in deployment pipelines.

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

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

Cache Control

Diagnose delivery policy across Cache-Control/Expires/Age