A soft 404 is a URL that returns a success status code (usually 200) while its content looks like an error page or an empty page. Google detects this from the content and reports the URL as “Soft 404” in Search Console.
How does a soft 404 arise, and how does Google handle it?
According to Google, a soft 404 is a URL that returns a page telling the user that the page does not exist, together with a 200 status code. A page with no main content can be flagged too. Google lists a missing server-side include file, a broken connection to the database, an empty internal search result page and an unloaded JavaScript file as examples. Such pages are excluded from Search.
Which fix applies depends on the state of the page, according to Google. If the page is gone and no replacement page with similar content exists, the server returns 404 or 410. If the content moved or has a clear replacement, Google recommends a 301 redirect. If the page still exists, Googlebot probably did not load it properly, critical resources were missing or a prominent error message appeared during rendering. The URL Inspection tool shows the rendered content and the returned HTTP code. Google names blocked resources (robots.txt), too many resources, server errors, and slow or very large resources as reasons why resources fail to load.
| Response | Status code | Meaning per RFC 9110 | What Google does | When to use it |
|---|---|---|---|---|
| Not Found | 404 | no current representation found; doesn't say whether this is temporary or permanent | doesn't use the content, removes a previously indexed URL and gradually crawls it less often; newly found 404 URLs aren't processed | Page removed with no replacement |
| Gone | 410 | no longer available, likely permanently | same as 404 | same as 404; per the RFC preferred when the removal is known to be permanent |
| Soft 404 (error message or empty page) (this term) | 200 | request succeeded | detects an error page from its content, excludes it from Search and reports a soft 404 in the Page indexing report | avoid; depending on the case, return 404/410, redirect to the replacement or fix the loading problems |
| Redirect to replacement | 301 | moved permanently | follows the redirect; a strong signal that the target should be processed | Content has moved or has a clear replacement |
| Page with content | 200 | request succeeded | passes the content on to indexing; inclusion isn't guaranteed | Page exists and shows real content |
A designed error page with search and links is useful according to Google, as long as the server still returns 404 or 410. 4xx codes other than 429 don't change the site's crawl rate. Google can also flag good pages as soft 404 if they render empty or broken for Googlebot, for example because resources are blocked by robots.txt. Sources: Google Crawling Infrastructure: How HTTP status codes affect Google's crawlers (last updated 2026-02-04); Google Search Central: Troubleshoot Google Search crawling errors, soft 404 errors (last updated 2025-12-18); RFC 9110: HTTP Semantics, 15.3.1 200 OK, 15.4.2 301, 15.5.5 404, 15.5.11 410. Last checked: .
Example
The URL /product/old-model shows the message “This product is no longer available” but responds with HTTP/1.1 200 OK. The server should return 404 Not Found or 410 Gone. (Made-up example.)
Sources
- HTTP status codes, and network and DNS errors – Google Search Centraldevelopers.google.com
- Page indexing report (Soft 404) – Search Console Helpsupport.google.com
- Fix crawling errors (soft 404 errors) – Google Search Centraldevelopers.google.com
Last updated: