topic
Verified 2026-09-18Cache-Control: immutable
Tells caches the response body will never change while fresh.
immutable suits fingerprinted assets (/app.a1b2c3.js) and skips conditional revalidation on reload. Never use it on URLs whose content can change.
httpcacheheaderdirectiveperformance
Reference (http)
Cache-Control: public, max-age=31536000, immutable
immutable suits fingerprinted assets (/app.a1b2c3.js) and skips conditional revalidation on reload. Never use it on URLs whose content can change.
Common mistakes
- Using immutable on a non-fingerprinted URL; users then see stale content until max-age expires.