Search Console Page indexing: Why pages aren't indexed

Soft 404 in Search Console: what it means and the fix

Google judged a page that returns 200 to be an error or empty page. The causes Google lists, how to see what it rendered, and the three ways to fix it.

Google fetched the page, got a 200 status, and judged from the content that it is really an error or empty page, so it left it out. Return a real 404 or 410 for pages that are gone, redirect pages that moved, or make sure a live page renders its content for Googlebot.

What "Soft 404" means

Google: the page "returns a user-friendly 'not found' message but not a 404 HTTP response code." Its crawling documentation widens that to pages with "no main content" or an empty page served with 200. The status is Google's judgement of the content, not a code your server sent, which is why server logs show nothing but 200s.

Is it a problem?

Depends on the URL

It depends on the page. If it really is gone, Google is right and the fix is a proper 404 or 410. If it is a working page you want in Search, it is a real problem: Google is treating it as an error page and excluding it.

Causes, most likely first

  1. A removed product or post whose URL now shows a "not found" message with a 200 status.
  2. Empty listing pages: a category with no products, an internal search with no results, a tag with no posts.
  3. Content that fails to load. Google lists "a missing server-side include file", "a broken connection to the database" and "an unloaded or otherwise missing JavaScript file".
  4. Resources blocked by robots.txt, or too many or too slow resources, leaving the rendered page blank or nearly blank.
  5. Many old URLs redirected to the home page in a migration. Google says this "might be treated as a soft 404 error".
  6. A client-side rendered app showing a "not found" view for unknown routes without changing the status.

How to confirm it

  1. Run a live test in URL Inspection and click View tested page. The screenshot and HTML show what Google rendered; a blank page or an error message there is the cause.
  2. Run the indexability checker to confirm the status is 200, and the crawler versus browser checker to see whether Googlebot gets different content from a browser.
  3. Open the page in a private window. If a person sees "not found" or an empty list, Google has read it correctly.

Indexability checkerCrawler versus browser checker

How to fix it

  1. Page gone with no replacement: return 404 or 410. A custom error page is fine as long as the status code is 404.
  2. Page moved or has a clear replacement: 301 redirect to it. Do not send unrelated URLs to the home page.
  3. Page should exist: fix whatever stops it rendering for Googlebot (a blocked or failing script, an API call, a template error) until the live test screenshot shows the content.
  4. Client-side app: for unknown routes, use JavaScript to redirect to a URL that returns 404, or add a noindex robots meta tag with JavaScript, the two options Google gives for single-page apps.
  5. Click Validate fix once the pages return the right status or render their content.

How long recovery takes

Google recrawls on its own schedule, which can take "anywhere from a few days to a few weeks". Google also says soft 404 pages "will continue to be crawled, and waste your budget" until they return a real status, so fixing them frees crawl time on a large site.

After a fix, Validate fix on the issue asks Google to recheck the affected URLs. Google says validation "typically takes up to about two weeks, but in some cases can take much longer". Without it, the count still updates as Google recrawls, and an issue leaves the table once 90 days pass with no instance.

Would monitoring have caught it?

No. Nothing in this status is a change to a status code, a robots.txt rule, a noindex, a redirect or a canonical tag, which are what the monitor watches, so it would not have warned you before Google reported it. The checks above are how to investigate it.

A migration or redesign losing pages from search, platform by platform

Further reading

Sources

Every claim above about how Google behaves is from Google's own documentation, read on 2026-10-06. If Google has changed a page since, Google's page wins and we would like to know.