HTTP 304 Not Modified
What a 304 Not Modified response means, why it happens, and the fastest ways to fix it.
The client's cached copy is still valid — sent in response to a conditional request (If-None-Match / If-Modified-Since) with no body, saving bandwidth.
- Normal cache revalidation; the browser reuses its cached copy.
- Not an error. If you never see 304s, your server may be missing ETag/Last-Modified headers.
Notes
HTTP status codes are defined in RFC 9110 (which replaced RFC 7231). The first digit is the class: 1xx informational, 2xx success, 3xx redirection, 4xx client error, 5xx server error.
Same class: 301 · 302 · 307 · 308
All codes: HTTP status code reference
Frequently asked questions
What does HTTP 304 mean?
HTTP 304 Not Modified: The client's cached copy is still valid — sent in response to a conditional request (If-None-Match / If-Modified-Since) with no body, saving bandwidth.
How do I fix a 304 error?
Not an error. If you never see 304s, your server may be missing ETag/Last-Modified headers.
Is a 304 my fault or the server's?
304 is not an error — it belongs to the 3xx redirect class.