HTTP Status Codes

What is a 404 error?

A 404 error is an HTTP status code that means the server received a request for a URL but could not find any content at that address. It is the web’s way of saying the page does not exist, at least not at the URL that was requested.

The full name is 404 Not Found. It belongs to the 4xx class of HTTP status codes, which all indicate client errors, meaning the problem lies with the request itself rather than the server. In the case of a 404, the request was valid and the server understood it, but there was simply nothing there to return.

It is one of the most recognised status codes on the web, familiar to virtually anyone who has spent time browsing. But behind the custom error pages and creative illustrations that most sites display, the 404 has real implications for user experience, SEO, and crawl budget that are worth understanding properly.


How a 404 error happens

A 404 occurs when a browser or web crawler requests a URL and the server has no content mapped to that address. The server responds with the 404 status code and typically returns an error page, either a default server page or a custom branded page designed by the site owner.

The most common causes are:

  • The page was deleted: content was removed from the site without setting up a redirect to point visitors and crawlers to an alternative URL.

  • The URL was changed: a page moved to a new URL slug or path without a redirect from the old address to the new one. This is one of the most common causes of 404 errors during site migrations and URL restructuring.

  • A typo in the URL: the visitor or a linking site typed the URL incorrectly. The content exists but the specific URL requested does not match any page on the server.

  • A broken internal or external link: a link on another page points to a URL that no longer exists. This can happen when content is reorganised without updating links, or when external sites link to old URLs that have since changed.

  • The domain has changed: the site moved to a new domain without setting up permanent redirects from the old domain, leaving all old URLs returning 404 errors.


404 errors and SEO

404 errors have a direct impact on SEO and are one of the most important technical issues to monitor and resolve on any website.

  • Lost link equity: when a page that has accumulated backlinks returns a 404, all of the link juice and SEO equity from those incoming links is lost. Search engines follow the links, encounter the 404, and do not pass any ranking signals on to any other page. Setting up a 301 redirect from the 404 URL to the most relevant alternative page recovers that equity immediately.

  • Crawl budget waste: when Googlebot and other web crawlers encounter 404 errors repeatedly, they waste crawl budget on URLs that return no indexable content. On large sites with many 404s this can reduce how frequently crawlers visit the pages that actually matter.

  • Index bloat: search engines may keep 404 URLs in their index for a period after they start returning errors, particularly if the pages previously had content and backlinks. This can result in search results pointing visitors to pages that no longer exist, creating a poor user experience.

  • Rankings lost: if a page that was ranking well for a keyword returns a 404, its ranking disappears. Without a redirect in place, all of the work that went into earning that ranking is gone. A 301 redirect to the closest equivalent page preserves as much of that ranking value as possible.


404 vs 410

The 404 and the 410 Gone are closely related but communicate different things to search engines.

A 404 Not Found is ambiguous, it tells search engines the page is not available at this URL right now, but gives no indication of whether that is temporary or permanent. Search engines treat 404s with some patience, keeping the URL in their index for a while in case the content returns.

A 410 Gone is explicit, it tells search engines the content has been permanently removed and will not be coming back. Search engines remove 410 URLs from their index faster than 404 URLs, which makes it the better choice when you are intentionally retiring content with no replacement.

In practice, most sites use 404 for both scenarios because it is the default response for missing content. Using 410 deliberately for permanently removed pages is a small but meaningful technical SEO improvement.


Soft 404 errors

A soft 404 is a page that returns a 200 OK status code, indicating success, but displays content that essentially says the page does not exist. Common examples include custom “page not found” messages, empty search results pages, and placeholder pages that serve a 200 response instead of a proper 404.

Soft 404s are a problem because search engines index the page, since it returns a 200, but find no meaningful content there. Google specifically calls out soft 404s as a crawl quality issue and they can consume crawl budget without contributing anything useful to the index.

The fix is to ensure that any page displaying a “not found” message actually returns a proper 404 or 410 status code in the HTTP response headers rather than a 200.


How to fix 404 errors

The right fix for a 404 depends on why the page is missing and what the intended outcome is.

  • Set up a 301 redirect: if the content has moved to a new URL, a 301 redirect from the old URL to the new one is the correct fix. It sends visitors to the right place, recovers link juice from any backlinks pointing to the old URL, and tells search engines to update their index. This is the most important fix for 404 errors on pages that previously had traffic or backlinks.

  • Return a 410 Gone: if the content has been intentionally removed with no replacement, returning a 410 tells search engines to remove the URL from their index promptly. Use this for deliberately retired content where no redirect makes sense.

  • Fix the broken link: if the 404 is caused by a typo or incorrect link on another page, fixing the link directly is the cleanest solution. Update internal links to point to the correct URL.

  • Create the missing content: if a URL is being linked to from multiple sources and no equivalent content exists, creating a page at that URL is sometimes the right answer, particularly if the URL pattern suggests content that should logically exist.

  • Set up a fallback redirect: for large sites where individual 404 URLs cannot all be mapped to specific replacements, a global fallback redirect sends visitors to the homepage or a relevant section page rather than leaving them on an error page. This is not as good as a specific redirect but better than a dead end.


Custom 404 pages

While fixing the underlying cause of a 404 is always the priority, designing a helpful custom 404 page is a worthwhile secondary concern. A well-designed 404 page reduces the frustration of landing on a missing page and gives visitors a clear path forward rather than a dead end.

A good custom 404 page typically includes a clear explanation that the page was not found, a search bar so visitors can look for what they were trying to find, links to popular or relevant sections of the site, and a link back to the homepage. The goal is to keep the visitor on the site rather than sending them back to the search results.

The 404 page should return a proper 404 status code in the HTTP response, not a 200. Some content management systems and frameworks serve custom error pages with a 200 status code by default, creating a soft 404. Always verify the status code your custom 404 page is returning.


Monitoring for 404 errors

404 errors should be monitored regularly as part of ongoing site maintenance. New 404s appear continuously as content is updated, URLs change, and external sites link to outdated addresses.

Google Search Console reports 404 errors under the Coverage section, showing which URLs Googlebot has encountered returning 404 responses. This is one of the most actionable reports in Search Console, any 404 on a URL that previously had traffic or backlinks should be prioritised for a 301 redirect.

Server logs and dedicated crawl tools provide a more complete picture, catching 404s that Search Console may not surface, including those from direct traffic, paid campaigns, and email links that Googlebot does not follow.

Related terms

Related terms

Ready to keep every link alive?

Ready to keep every link alive?

Ready to keep every link alive?