Skip to content
Technical SEO 11 min read By Lewis Jones Editorial policy

Soft 404 in Search Console: Fix It or Leave It?

What "Soft 404" in Search Console means, the five patterns that trigger it, how to confirm one in a minute, and how common they are across 1,000 UK sites.

Part of Technical SEO Guide: Crawl, Index, Speed

Key takeaways

  • "Soft 404" means Google fetched the URL, got a 200 status, and decided the content says "not found" anyway; it is Google's label, not a code your server sent
  • It is a status-code lie: the page looks like content to anything that reads headers, so crawlers keep requesting it and never learn it is missing
  • Almost always fix it, because the page is already out of the index; the only question is whether the answer is a real 404, a redirect to a genuine replacement, or better content
  • We probed 1,000 UK domains with a URL that cannot exist: of the 489 that gave a readable answer, 33 served a soft 404 and 41 more redirected the missing URL to their homepage
  • A whole-site crawl finds the pattern before Google reports it one URL at a time

"Soft 404" is the Page indexing status that most often gets dismissed as a false alarm, because the page in question opens perfectly well in a browser. That is exactly the problem. Google is telling you that the page looks like "not found" to a crawler while the server insists it exists. This post covers what the status means, the five patterns that trigger it, how to confirm one in under a minute, and how common the underlying server behaviour is, measured across 1,000 UK sites on 9 October 2026.

What "Soft 404" in Search Console means

Google's Page indexing report documentation defines the status as a page request that "returns what we think is a soft 404 response", and spells that out as: "it returns a user-friendly 'not found' message but not a 404 HTTP response code."

Two things follow. First, the label is Google's judgement about the content, not a status code your server sent. A server cannot return a "soft 404"; it returns a 200, and Google decides the page behind it is empty. Second, the URL is excluded from the index. There is no partial credit: a soft 404 ranks for nothing.

The same documentation gives the fix in one line: "We recommend returning a 404 response code for truly 'not found' pages and adding more information on the page to let us know that it is not a soft 404." Those are the two branches of every fix below. Either the page should not exist, and the server should say so, or it should exist, and it needs real content that Google can see.

Note

This post is one of a series on the Page indexing report. For how this status fits alongside the others, see Search Console indexing issues explained. The Crawl Cove check that finds the server-wide version of this problem has its own page: soft 404 trap.

The five patterns that trigger it

Every soft 404 we have seen in Search Console comes down to one of five things.

  1. A "not found" page served with a 200. The CMS or framework renders its friendly error template through a normal route, so the status never changes. This is the classic case and the one the status is named for.
  2. A redirect from a missing URL to the homepage, or to a "404" page that itself returns 200. The missing URL technically redirects, but the destination has nothing to do with the request. Google's John Mueller has said since 2016 that redirecting removed pages to the homepage is treated as a soft 404, not as a redirect, so nothing passes to the destination.
  3. A real page with no visible content. A search results page with zero hits, a category with no products, a tag page with no posts, a calendar month with no events. The template is fine; the content is empty.
  4. Content that only exists after JavaScript runs. The HTML Google fetched is a shell, the script that fills it failed or timed out in rendering, and what Google saw was blank. The page looks perfect in your browser because your browser ran the script.
  5. A thin placeholder. A "coming soon" page, a stub with a heading and nothing under it, or a page whose main content sits behind a login or consent interstitial that Googlebot cannot pass.

Patterns 1 and 2 are server configuration and affect every missing URL on the site. Patterns 3 to 5 are page by page.

When it is fine to leave alone

Rarely, and only in one situation: the URL genuinely should not exist, it is already out of the index, nothing on your site links to it, and it is not in your sitemap. Google will stop requesting it eventually. Even then, pattern 1 means every other missing URL on the site behaves the same way, so the honest answer is to fix the server once rather than ignore the status once.

Everything else needs action, because the page is either one you want indexed (patterns 3 to 5) or a symptom of a server that cannot say "not found" (patterns 1 and 2).

How to confirm a soft 404 in a minute

You do not need Search Console to find patterns 1 and 2. Request a URL on your own site that cannot possibly exist and read the status code, not the page:

curl -s -o /dev/null -w "%{http_code}\n" https://www.example.com/this-page-does-not-exist-48213

A healthy site prints 404 (or 410). A soft 404 prints 200. A redirect prints 301 or 302, in which case run the same command against the Location it gave you; if that final page is the homepage or a "not found" template answering 200, you have pattern 2. If you would rather not use a terminal, the redirect checker tool on this site prints every hop and its status for any URL you paste in.

We ran that exact check on our own site before publishing this. A made-up path at the root and one under /blog/ both returned 404 with the real error page, and the URL Inspection sweep we ran across all 231 of our public URLs on 7 October 2026 carried no "Soft 404" verdicts. That is the state to aim for.

For a specific URL Google has already flagged (patterns 3 to 5), open it in URL Inspection, run a live test, and click "View tested page". The rendered HTML and screenshot show what Google actually saw. If the main content is missing from that view, you have found the cause, whatever the page looks like in your browser.

How common is it? 1,000 UK sites, one missing URL each

To put a number on patterns 1 and 2, we requested a URL that cannot exist (/cc-probe- followed by twelve random characters) on each of the 1,000 highest-ranked .co.uk domains in the Tranco list, with a normal browser User-Agent, following redirects, on 9 October 2026.

511 of the 1,000 gave no readable verdict and are excluded: 155 could not be reached at all (DNS, TLS or timeout), and 356 refused or challenged the request from our server, or answered with fewer than 500 bytes, which tells you about their bot protection rather than their 404 handling. Of the 489 that answered properly:

What the missing URL got Sites Share of 489
A real 404 (directly, or after an http or www redirect) 396 81%
A real 410 3 under 1%
A 5xx error 4 under 1%
Soft 404: 200 on the missing path 28 5.7%
Soft 404: redirected to a "not found" page that returns 200 5 1.0%
Redirected to the homepage, which returned 200 41 8.4%
Redirected to some other page, which returned 200 12 2.5%

So roughly one site in fifteen serves a textbook soft 404 to every missing URL, and one in twelve sends every missing URL to its homepage, which Google treats the same way. Together that is 74 of 489 sites, 15%, whose server cannot say "not found".

The soft 404s are not confined to small sites. Rightmove answers a made-up path with a page titled "We couldn't find the place you were looking for" and a 200 status. The Complete University Guide serves a page titled "Page not found" with a 200. Lloyds Bank, Halifax and Bank of Scotland, all Lloyds Banking Group brands, each return an internet banking error page at 200. Costco UK, Travis Perkins, Crystal Palace F.C. and Pinterest UK all answered 200 on the missing path. Teachers' Pensions, ISPreview and Eurowines redirect missing URLs to a dedicated "Error 404" page that returns 200, which is pattern 2 exactly. Penguin Books, Macworld UK, National Geographic UK and Roblox UK redirect missing URLs straight to their homepage.

One caveat on the 28. A 200 on a path that cannot exist is a fact about the server. Whether Google labels each one "Soft 404" depends on what it renders: a JavaScript app can paint a "not found" message on the client side, which Google would then classify as a soft 404 for a different reason, pattern 4 rather than pattern 1. Either way, the crawler had to fetch and render the page to find out, which is the cost the status exists to flag.

The method, raw results and the classification script are saved so the numbers can be checked or re-run.

How to fix each pattern

Pattern 1, "not found" at 200. Make the error template return a real status. On WordPress this is usually a theme or page-builder route that renders 404.php without calling status_header(404), or a catch-all rewrite added by a redirect plugin; on a custom app it is a fallback route that renders the not-found view as a normal response. The soft 404 trap issue page walks through where to look. Use 410 instead of 404 for content you have removed on purpose and will not bring back.

Pattern 2, redirect to the homepage or a 200 "404" page. Remove the catch-all redirect. If a missing URL has a genuine replacement, redirect to that page specifically. If it does not, return 404. A dedicated error page is fine, and good for users, as long as it is served with a 404 status rather than reached by a redirect.

Pattern 3, empty results. Either give the page a noindex when it has nothing to show, return a 404 for a filter combination that matches nothing, or make sure empty states are not linked and not in the sitemap. An empty category page that is linked from the navigation will keep coming back.

Pattern 4, content behind JavaScript. Check the live test's rendered HTML. If the main content is missing, server-render it, or at least make sure the script that loads it does not depend on a request Googlebot cannot make. The JavaScript SEO audit post covers how to compare raw and rendered HTML across a site.

Pattern 5, thin or walled. Add the content, or move the interstitial so that the main content is in the HTML before any login or consent check. Then request indexing in URL Inspection.

After any of these, the status will not clear until Google fetches the URL again. On a small site that can take weeks, and the report will keep showing the old verdict until then, which is the same lag we documented for Page with redirect. Check the last crawl date before concluding a fix did not work.

Soft 404 versus the statuses it gets confused with

  • Not found (404) is the healthy version: the server said the page does not exist, and Google believed it. Most of those need no action.
  • Crawled - currently not indexed means Google fetched a real page with real content and chose not to index it anyway, a quality or duplication call rather than a "this page is empty" call.
  • Page with redirect means the URL redirected and Google is judging the destination on its own. It becomes a soft 404 only when the destination is unrelated to the request.

Finding the pattern across the whole site

Search Console reports soft 404s one URL at a time, after Google has spent a crawl on each. Patterns 1 and 2 are a property of the server, so a single probe tells you whether every missing URL on the site behaves the same way.

Crawl Cove runs that probe during every crawl: it requests a random path at the site root and another nested under a real directory it found, follows any redirect, and reports a soft-404-trap finding only when both end at a 200, so a single ambiguous result is never reported as a fault. That covers pattern 2 as well as pattern 1: when the 200 came through a catch-all redirect, the finding names the page it landed on. The same crawl lists thin pages, pages whose content only exists after JavaScript runs when you switch on the rendered pass, which needs a Chromium-family browser on the machine, and every internal link and sitemap entry that points at a URL returning something other than 200, which is where patterns 3 to 5 show up. Its Live Index Status feature reads the URL Inspection API for any page you choose, so you can see Google's verdict and last crawl date beside the crawl data. A full SEO audit runs all of it in one pass.

Wrap-up

"Soft 404" is Google saying your server told it one thing and the page told it another. The page is already out of the index, so the question is never whether to act but which way: a real 404 or 410 for a page that should not exist, a redirect only to a genuine replacement, or real content for a page that should. One request to a URL that cannot exist tells you whether the whole site has the problem, and on 9 October 2026 that one request found it on 74 of the 489 most-visited UK sites that gave a readable answer, 15%.

Frequently asked questions

What does "Soft 404" mean in Search Console?
Google requested the URL, the server answered with a 200 status, and the page Google rendered looked like a "not found" message, an empty page or a page with no real content. Google's documentation describes it as a page that returns a user-friendly "not found" message but not a 404 HTTP response code. The URL is left out of the index.
Is a soft 404 bad for SEO?
The page itself is already out of the index, so the damage is to the rest of the site rather than that URL. Google's guidance is that crawlers may spend their time fetching non-existent, often duplicate URLs instead of real pages, which reduces how often your actual content is crawled. On a small site that cost is small; on a large one, or one with a catch-all route, it is not.
Should I redirect missing pages to the homepage?
No. Google's John Mueller has said that a redirect from a removed page to an unrelated page, including the homepage, is treated as a soft 404, so it fixes nothing. Redirect only to a page that genuinely replaces the old one. Otherwise return a 404 or 410.
How do I check whether a page is a soft 404?
Request a URL on the site that cannot exist and read the response status, not the page. If it is 200, the server is serving a soft 404. For a specific URL Google has flagged, run a live test in URL Inspection and open the tested page to see what Google rendered.
Why is a real page showing as "Soft 404"?
Google rendered it and found little or nothing. Usual causes are content that only appears after a script runs and failed for Googlebot, a search or category page with zero results, a page whose main content is behind a login or consent wall, or a thin placeholder. Fix what Google sees, then request indexing.

Audit your site the easy way

Crawl Cove finds these issues on your machine. Try the SEO Audit or see every feature.

Download Crawl Cove