What does the HTTP header Cache-Control: no-cache actually mean?

You may store it, but must check with the server before reusing it.

Start playing free

  1. Never store the response anywhere
  2. Store it, but revalidate with the server before reuse ✔
  3. Keep it forever

Why: Despite the name, no-cache does not stop caching. It forces the cache to ask the server whether its copy is still good. If you truly want nothing stored, the header is no-store.

Huh, didn't know that: Cache-Control: max-age=604800 means a stored copy stays fresh for one week, 604,800 seconds.

The dad joke
No-cache does not mean no cache. HTTP headers love a plot twist.
Like this card?
Play the game

References

Answer: Store it, but revalidate with the server before reuse. Despite the name, no-cache does not stop caching. It forces the cache to ask the server whether its copy is still good. If you truly want nothing stored, the header is no-store.

  1. MDN: HTTP caching developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Caching
    The no-cache directive does not prevent the storing of responses but instead prevents the reuse of responses without revalidation.
    Checked 2026-10-10.

Think this answer is wrong? Tap "Challenge this answer" on the card in the game and tell us why.

Test yourself in the game