Cache-Control Inspect

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 Cache-Control and click “Parse”. Directives are listed.

Notes (this tool)

  • ETag/Expires/Last-Modified are separate headers.

About this page

What does this tool do?

Parse Cache-Control and list directives like max-age/no-store/no-cache.

Useful for diagnosing cache hits/misses.

Pair it with HTTP Header Parser by pasting real response headers for faster troubleshooting.

Cache-Control basics (quick)

  • Cache-Control defines caching behavior for responses (browser/proxy/CDN, etc.).
  • no-store means “do not store”, while no-cache means “must revalidate”.
  • max-age is the cache lifetime in seconds.

Typical use cases

  • Validate caching for static assets (CSS/JS/images)
  • Debug API responses being cached (or not cached) unexpectedly
  • Understand CDN vs browser caching (e.g., s-maxage)

Common directives

  • public / private: whether shared caches may store it
  • max-age: browser cache lifetime (seconds)
  • s-maxage: shared cache lifetime (CDN/proxy)
  • no-store: do not store (for sensitive responses)
  • no-cache: revalidate before use
  • must-revalidate: must revalidate once stale

Common pitfalls

  • Misunderstanding no-cache as “no caching” (it means revalidate)
  • Accidentally making APIs publicly cacheable
  • Revalidation not working due to missing ETag/Last-Modified

Recommendations by use case

  • API (JSON): use no-store for sensitive data; otherwise no-cache + validators
  • HTML: no-cache + must-revalidate or short max-age + validators
  • Static assets: long max-age + immutable + versioned URLs

What this tool does

  • Split Cache-Control directives
  • Inspect values like max-age/s-maxage
  • Assist with ETag/Expires/Last-Modified checks

Debugging workflow (recommended)

  • Paste response headers
  • Review Cache-Control, ETag, and Last-Modified
  • Trace 304/206/CDN differences with related inspectors

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)
  • MDN (Cache-Control / ETag)

FAQ

no-cache vs no-store?

no-store forbids storage; no-cache requires revalidation (often with ETag).

Why do browser and CDN behaviors differ?

Shared caches may follow rules like s-maxage. CDN/proxy configuration also affects behavior.

References

  1. RFC 9111 (HTTP Caching)
  2. MDN: Cache-Control
  3. MDN: ETag

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

  1. How to Diagnose Stale Content After Deployment — Check cache policy by HTML/API/static assets to isolate stale deployment issues quickly
  2. How to choose cache tools — Route stale-update, missing-304, and CDN-only mismatch issues to the right tools
  3. ETag Inspect — Parse ETag and If-None-Match consistency
  4. Cache Control Overview — Summarize how to use Cache-Control/Pragma/Expires together
  5. Vary Inspect — Parse Vary and visualize cache variation keys
  6. Cache Key Inspect — Visualize cache-key splits from URL, Vary, and headers
  7. Cache Not Working Troubleshooting — Troubleshoot cache-not-working symptoms step by step from headers
  8. HTTP Cache Mismatch — Identify root causes of cache mismatches

Cache Control

Diagnose delivery policy across Cache-Control/Expires/Age

Example

Cache-Control: max-age=3600, public
Cache-Control: no-store