Most status code problems are easy to spot: a page is missing and returns a 404, or it moved and returns a 301. A soft 404 is trickier. The server returns a 200 "OK" status, telling crawlers the page is fine, but the page itself looks like an error, an empty page, or a "nothing here" message. Google notices the mismatch and reports the URL as a soft 404 in Search Console. These pages usually aren't indexed, and in large numbers they waste crawl attention. This guide explains what causes soft 404 errors, how to tell which ones matter, and how to fix each type.
What Is a Soft 404?
A soft 404 happens when the content of a page suggests an error, but the HTTP status code says everything is fine. Google's documentation describes it this way: if the content looks like an error page, an empty page, or an error message, Search Console reports a soft 404.
Compare the three situations:
- A real 404: the page doesn't exist, and the server says so with a 404 status. This is correct behavior.
- A working page: the page exists, has real content, and returns 200. Also correct.
- A soft 404: the page has no useful content, or says it doesn't exist, but the server still returns 200. The signals contradict each other.
Google has to decide which signal to believe, and it usually believes the content. The URL is treated as an error and generally isn't indexed.
Why Soft 404s Matter
The pages won't rank. A URL Google treats as a soft 404 generally isn't indexed, so if it was supposed to be a real, useful page, you've lost it from search.
They waste crawling. Because the server says these pages are fine, Google may keep recrawling them. On larger sites, thousands of empty URLs returning 200 compete for attention with pages you actually want crawled. The crawl budget guide covers why that matters.
They can hide real problems. A soft 404 report sometimes reveals that a page you care about is rendering empty for Google, for example because content loads through JavaScript that fails.
Where to Find Soft 404s
In Google Search Console, open the Page Indexing report and look for the "Soft 404" reason in the list of why pages aren't indexed. Click it to see example URLs. Use the URL Inspection tool on a few of them and look at the rendered page and screenshot to see what Google actually saw.
To check what status code a URL returns, run it through the Redirect & Header Checker, which shows the HTTP status and the full redirect path.
Common Causes and How to Fix Each
1. Missing pages that return 200 instead of 404
Some CMS setups and custom error templates display a friendly "Page not found" message while returning a 200 status. Every mistyped or deleted URL then looks like a valid page.
Fix: Configure your server or CMS so that pages that don't exist return a real 404 status, or a 410 if the content was permanently removed. You can still show a helpful custom error page with search and navigation links. The status code is what matters. After changing it, confirm with the Redirect & Header Checker that a made-up URL on your site returns 404.
2. Empty category, tag, or archive pages
A category with no products, a tag with no posts, or a filter combination with zero results often renders a page that says "No items found" with a 200 status.
Fix: If the page will have content soon, consider adding a noindex until it does. If it won't, remove it, stop linking to it, and return a 404 or 410. Better still, prevent your CMS from generating empty listing pages in the first place.
3. Internal search result pages
Search result pages for queries with no results are classic soft 404s, and search pages are generally low-value for indexing even when they do have results.
Fix: Keep internal search results out of the index, either with a noindex on the search template or by blocking the search path in robots.txt. Test your rule with the Robots.txt Tester, and avoid linking to search result URLs from crawlable pages.
4. Thin or nearly empty pages
Pages with only a few words, a heading and an image, or mostly boilerplate can look empty enough to be reported as soft 404s.
Fix: Either add real content that serves the page's purpose, or consolidate the page into a related, stronger one with a 301 redirect. The Page Content Analyzer reports word count and content signals so you can find the thin ones. A content audit is the systematic way to deal with them across a whole site.
5. Out-of-stock and discontinued products
Product pages that switch to "This product is unavailable" with little else on the page can be flagged.
Fix: It depends on whether the product is coming back:
- Temporarily out of stock: keep the page live with full product details, clear availability information, and links to related products. Update your Product structured data to reflect availability.
- Permanently discontinued with a direct replacement: 301 redirect to the replacement product.
- Permanently discontinued with no replacement: return a 404 or 410, or keep the page as a useful resource if it still earns traffic and links.
The upcoming guide to product page SEO covers how to handle product pages more broadly.
6. Redirects to irrelevant pages
When many deleted pages are redirected to the homepage, or to a general category page that has nothing to do with the original content, Google may treat those redirects as soft 404s. A redirect only passes value when the destination is a genuine equivalent.
Fix: Redirect each removed page to the closest relevant replacement. If there isn't one, let the URL return a 404 or 410. That's a normal, healthy outcome for content that no longer exists. The .htaccess redirects guide covers how to write redirects correctly, and the .htaccess Redirect Generator builds safe rules without regular expressions.
7. Content that doesn't render for Google
If a page's main content loads through JavaScript, and that script fails, is blocked, or loads too slowly when Google renders the page, Google may see an empty shell.
Fix: Use URL Inspection and look at the rendered screenshot and HTML. If the content is missing, check that robots.txt isn't blocking the scripts and resources the page needs, and that the content doesn't depend on user interaction to appear. Serving important content in the initial HTML is the most reliable approach.
False Alarms
Sometimes Google reports a soft 404 on a page that's genuinely fine. Pages with very short content by design, such as a contact page, a simple tool page, or a page whose text includes phrases like "not found" or "no results," can occasionally trigger it.
If you inspect the page and it's clearly a real, useful page, make its purpose more obvious with a descriptive heading, a short explanatory paragraph, and enough context that it can't be mistaken for an error. Then request indexing through URL Inspection.
404 vs. Soft 404: Which Is Better?
For content that truly doesn't exist, a real 404 is better than a soft 404. Returning 404 for missing pages doesn't hurt your site's rankings. It's the correct, expected response, and it tells Google clearly to stop spending effort on that URL. Soft 404s leave Google guessing.
Where real 404s do matter is when other pages link to them. Broken internal links waste link equity and frustrate visitors, and external links to dead pages leak authority you already earned. The guides to finding and fixing broken links and reclaiming lost backlinks cover both. The Broken Link Checker finds dead links on any page.
After You Fix Them
Once you've fixed the cause for a group of URLs, click "Validate Fix" on the Soft 404 status in Search Console's Page Indexing report. Google rechecks the affected URLs over the following weeks. URLs you deliberately changed to 404 or 410 will move to the "Not found (404)" reason, which is expected.
Soft 404s are rarely a crisis, but they're a reliable sign that something on the site is generating pages with no value or misreporting status codes. Fixing the pattern behind them keeps Google's attention on the pages that deserve it. For related indexing problems, see the guide to crawled and discovered but not indexed pages.