HTTP status · 4xx — client error
404 Not Found
404 Not Found means the server cannot find a current representation for the target URL.
Key facts
| Class | 4xx — client error |
|---|---|
| Standard | RFC 9110 §15.5.5 |
| Cacheable by default | Yes (heuristically) |
| Meaning | No current representation for this URL |
| Related code | 410 Gone for a permanent removal |
What 404 means
The origin server did not find a current representation for the target resource, and it is not saying whether the absence is permanent. The URL may be mistyped, deleted, renamed, or never exist. A 404 is a normal part of the web; search engines remove URLs that consistently return it, though they may keep checking for a while.
Why an expected page returns 404
- Route or rewrite missing: the file was deployed but the path does not match the router or the server's rewrite rules.
- Case and trailing slash:
/Aboutand/about/are different URLs unless the server normalizes them. - Wrong base path: a site served from a subdirectory needs the asset and link paths to include that prefix.
- Deleted content: if the removal is permanent and you want to say so, 410 is more explicit; if the URL moved, redirect with 301.
Do not return 200 with a “not found” page — that is a soft 404 and makes monitoring and search engines treat a missing page as valid content.
Frequently asked questions
Is a 404 bad for SEO?
Not by itself. A 404 correctly reports that a URL has no content. It becomes a problem when pages you want indexed return 404, or when a removed page has no redirect to a replacement.
What is the difference between 404 and 410?
404 says the resource was not found and does not say why. 410 says it is gone permanently, which is a stronger signal for removal.
Why does my SPA show 404 on refresh?
The server has no file at the requested path. Configure a fallback to index.html for client-side routes, while keeping real missing assets as 404.