HTTP Status Codes
HTTP 404 Not Found
Not Found — the server cannot find the requested resource at the given URL
What 404 Means
The 404 error on the HTTP Status Codes indicates not found — the server cannot find the requested resource at the given url. This typically occurs due to broken or outdated link pointing to a page that was moved or deleted.
A 404 is the standard HTTP response code indicating that the client was able to communicate with the server, but the server could not find the requested resource at the given URL. It is one of the most recognized error codes on the web and often the first HTTP error most users encounter. The 404 status is defined in RFC 7231 as a client error, meaning the problem lies with the requested URL rather than the server itself. Servers may return a 404 for security reasons even when a resource exists but the client lacks permission to know about it.
Technical Background
When a web server returns a 404 status code, it means the server successfully received and understood the HTTP request, but the specific resource identified by the URL does not exist on the server. This is defined in RFC 7231 Section 6.5.4 as a client error response, placing the responsibility on the request rather than the server.
A 404 differs from a 410 Gone in an important way: a 404 indicates the resource may or may not have existed previously, while a 410 explicitly confirms the resource once existed but has been permanently removed. Search engines treat these differently when deciding how long to keep a URL in their index. A 404 may be recrawled periodically, while a 410 is typically dropped faster.
Most web servers and frameworks automatically return a 404 for any URL that does not match a configured route or static file. Custom 404 pages are a widely adopted practice to help users navigate back to working pages rather than seeing a generic browser error screen. Some servers also return 404 instead of 403 to avoid revealing whether a restricted resource exists.
Common Causes
- Broken or outdated link pointing to a page that was moved or deleted
- Typo in the URL
- Server misconfiguration or missing route handler
- Resource was removed without a redirect
Typical Scenarios
- A user clicks an outdated bookmark that points to a page that no longer exists
- A search engine indexes a URL that was later removed without a redirect
- A developer misspells a route path in the application code
What to Know
A 404 error is almost always a permanent issue for the specific URL that triggered it. Refreshing the page will not resolve it because the resource simply does not exist at that address. If multiple pages on a site return 404 errors simultaneously, it may indicate a routing misconfiguration or a recent deployment that removed content without setting up redirects. A single 404 on an otherwise working site typically means that particular page was moved or deleted.
Frequently Asked Questions
Common questions about HTTP 404 error
A 404 status code means the web server could not find the page you requested. This usually means the page was deleted, moved to a different URL, or the URL was typed incorrectly.
A few 404s are normal and do not directly hurt rankings. However, many 404s for previously indexed pages can cause lost traffic and poor user experience. Sites that move pages often rely on 301 redirects to preserve traffic and send visitors to the new URL.
A 404 means the server cannot find the resource and makes no statement about whether it ever existed. A 410 means the resource previously existed but has been intentionally and permanently removed. Search engines tend to remove 410 URLs from their index faster than 404 URLs.