Cache Headers Analyzer
Analyze HTTP caching headers for any URL. Inspect Cache-Control, Expires, ETag, Last-Modified, Vary, Age, and common CDN cache signals to understand browser vs shared-cache behavior. Includes redirect tracing, raw header view, filtering, issue findings, and JSON/PDF export.
Features
- URL-based cache audit with a clear score card + findings (focus on caching/performance headers).
- Follow redirects (up to 10) to see where caching rules actually apply.
- Raw headers view for full transparency (what the server/CDN really returned).
- Cache analysis highlights: Cache-Control directives, Expires/Pragma, and conflicts.
- Validator checks: ETag and Last-Modified detection (for conditional requests & revalidation).
- Vary analysis to catch missing or risky Vary behavior (esp. for personalized content).
- CDN signals detection: Age, Via, CF-Cache-Status, X-Cache, Fastly/Akamai/CloudFront-style headers.
- Filters & “only problems” mode to focus on actionable issues quickly.
- Export results as JSON and PDF reports (great for audits and client deliverables).
- HEAD-first probing (fallback to GET) to minimize bandwidth while staying compatible.
🧭 How to use for cache-headers-analyzer
Enter the URL
Paste the full URL you want to audit (e.g., [https://example.com/static/app.css](https://example.com/static/app.css)).
Choose request behavior
Keep “Try HEAD first (fallback to GET)” enabled for fast checks. Enable “Follow Redirects” if the URL may redirect (HTTP→HTTPS, www, CDN, etc.).
Pick an analyzer focus
Use “Auto (recommended)” for a balanced view. Switch to “Browser caching”, “CDN / proxy caching”, or “API caching” to prioritize the most relevant findings for your endpoint.
Review findings and header categories
Inspect the score/findings first, then drill into cache directives, validators (ETag/Last-Modified), Vary analysis, and CDN signals (Age, cache status headers). Turn on “Show Raw Headers” if you need the full response.
Export a report
Download a JSON report for automation or a PDF report for audits and sharing with teammates/clients.
Technical specs
Request model
This tool performs a URL header inspection with optional redirect following. It attempts a HEAD request first (if enabled) and falls back to GET when needed.
| Setting | Behavior | Default |
|---|---|---|
| Try HEAD first (fallback to GET) | Uses HEAD to fetch headers quickly; falls back to GET if HEAD is unsupported or insufficient | Enabled |
| Follow Redirects | Follows the redirect chain to inspect final caching behavior | Enabled |
| Max Redirects | Redirect cap to prevent infinite loops | 10 (range 0–20) |
| Timeout | Request timeout limit | 15000 ms |
| User-Agent | Identifies the request user agent | Encode64Bot/1.0 (+[https://encode64.com](https://encode64.com)) |
| Private networks | Blocks access to private network ranges for safety | Disabled (private networks not allowed) |
Headers & signals analyzed
The analyzer focuses on cache semantics (browser and shared caches) plus common CDN edge signals.
| Category | Examples |
|---|---|
| Cache directives | Cache-Control, Expires, Pragma, Surrogate-Control, CDN-Cache-Control |
| Validators | ETag, Last-Modified (used for conditional requests / revalidation) |
| Shared cache behavior | s-maxage, stale-while-revalidate, stale-if-error (when present in Cache-Control) |
| Vary behavior | Vary (cache key variations and personalization safety) |
| CDN/proxy signals | Age, Via, CF-Cache-Status, X-Cache, X-Cache-Hits, Server-Timing and other edge hints |
Heuristics (what triggers warnings)
Findings are derived from practical caching heuristics to help spot missing, contradictory, or weak caching policies.
| Heuristic | What it checks |
|---|---|
| Missing Cache-Control | Warns when Cache-Control is absent |
| Conflicting directives | Warns when directives appear inconsistent (e.g., mixed caching intentions) |
| Missing validators | Warns when cacheable responses lack ETag/Last-Modified |
| Weak validators | Flags weak validator patterns where relevant |
| Vary risk | Warns when Vary seems missing where variation is likely needed |
| Pragma no-cache mismatch | Warns when Pragma: no-cache appears without corresponding Cache-Control |
Classification (static vs HTML vs API)
The analyzer can infer the content type intent from the URL path to tailor caching recommendations.
| Class | Path patterns (examples) |
|---|---|
| Static asset | .css, .js, .png, .svg, .woff2, etc. |
| HTML | .html, .htm |
| API | Paths starting with /api/ or ending with .json |
Command line
Use these CLI snippets to inspect cache headers locally. They don’t replace this tool’s findings/score, but they help you reproduce results quickly.
macOS / Linux
Fetch headers with a HEAD request
curl -I [https://example.com/static/app.css](https://example.com/static/app.css)Checks Cache-Control, Expires, ETag, Last-Modified, Vary, and CDN signals without downloading the body.
Follow redirects and show headers
curl -IL [https://example.com/](https://example.com/)Shows the redirect chain so you can verify where caching directives change.
Run
Windows (PowerShell)
Get response headers
(Invoke-WebRequest -Uri [https://example.com/static/app.css](https://example.com/static/app.css) -Method Head).HeadersLists headers including Cache-Control, ETag, Last-Modified and vendor CDN headers when present.
Use cases
Static assets caching audit (CSS/JS/images/fonts)
Verify that fingerprinted assets are cacheable for a long time and can be efficiently revalidated when needed.
- Confirm Cache-Control includes long max-age and (when appropriate) immutable
- Ensure validators exist (ETag or Last-Modified) for safe revalidation
- Check CDN cache hit indicators (Age, CF-Cache-Status, X-Cache)
Cache-Control: public, max-age=31536000, immutable
ETag: "686897696a7c876b7e"
Vary: Accept-EncodingPrevent accidental caching of HTML pages
Catch cases where HTML pages are cached too aggressively at the CDN or browser level, which can break login flows, personalization, and SEO rendering consistency.
- Detect overly permissive Cache-Control on HTML
- Identify missing Vary where content differs by cookies, auth, or language
- Confirm safe revalidation patterns
API endpoint caching review
Understand whether shared caches are enabled for API responses and whether your API is safely cacheable.
- Detect shared caching via s-maxage
- Spot stale-while-revalidate / stale-if-error strategies
- Flag missing validators when API responses are cacheable
Debug CDN behavior across redirects
Many sites redirect (HTTP→HTTPS, apex→www, locale redirects). This tool helps ensure caching policies remain consistent from the first hop to the final response.
- Verify headers on each hop and on the final URL
- Catch cache header changes introduced by edge rules or origin rewrites
❓ Frequently Asked Questions
❓What headers does this tool analyze for caching?
❓Why do I see different caching results between browser and CDN?
❓What are ETag and Last-Modified used for?
❓Should I cache HTML pages for a long time?
❓What is Vary and why is it important?
❓Is it safe to paste URLs here?
❓Can I export the analysis?
JSON report and a PDF report so you can share results or attach them to performance audits.Pro Tips
If your assets are fingerprinted (hash in filename), use long max-age + immutable for best repeat-visit performance.
If HTML is personalized (cookies/auth), avoid caching in shared caches unless you fully control the cache key and Vary behavior.
Prefer validators (ETag or Last-Modified) on cacheable resources so clients can revalidate with 304 instead of re-downloading.
Watch for conflicting directives like no-store mixed with long max-age; those usually indicate misconfiguration.
When debugging redirects, compare cache headers at each hop; edge rules can change caching between redirects and final URL.
Export JSON reports and keep them in your CI/perf audit artifacts to track regressions over time.
Additional Resources
Other Tools
- CSS Beautifier
- HTML Beautifier
- Javascript Beautifier
- PHP Beautifier
- Color Picker
- Sprite Extractor
- Base32 Binary Encoder
- Base32 Decoder
- Base32 Encoder
- Base58 Binary Encoder
- Base58 Decoder
- Base58 Encoder
- Base62 Binary Encoder
- Base62 Decoder
- Base62 Encoder
- Base64 Binary Encoder
- Base64 Decoder
- Base64 Encoder
- Hex Binary Encoder
- Hex Decoder
- Hex Encoder
- Csharp Formatter
- Csv Formatter
- Dockerfile Formatter
- Elm Formatter
- ENV Formatter
- Go Formatter
- Graphql Formatter
- Hcl Formatter
- INI Formatter
- JSON Formatter
- Latex Formatter
- Markdown Formatter
- Objectivec Formatter
- Php Formatter
- Proto Formatter
- Python Formatter
- Ruby Formatter
- Rust Formatter
- Scala Formatter
- Shell Script Formatter
- SQL Formatter
- SVG Formatter
- Swift Formatter
- TOML Formatter
- Typescript Formatter
- XML Formatter
- YAML Formatter
- Yarn Formatter
- CSS Minifier
- Html Minifier
- Javascript Minifier
- JSON Minifier
- XML Minifier
- Cors Checker
- Csp Analyzer
- Dns Records Lookup
- Http Headers Viewer
- Http Status Checker
- Open Graph Meta Checker
- Redirect Chain Viewer
- Robots Txt Tester
- Security Headers Checker
- Security Txt Checker
- Sitemap Url Inspector
- Tls Certificate Checker
- PDF To Text
- Regex Tester
- Serp Rank Checker
- Whois Lookup