Soft 404 on WordPress: Why Google Thinks Your Page Is Empty (and How to Fix It)

By MiroSeo

Search Console says a URL returns 200 OK — but Google classified it as a soft 404. Translation: your server said “page exists,” Google looked at it and decided it’s effectively empty or useless.

Quick tip: Soft 404 means 200 status but empty value — noindex thin archives before hand-fixing 300 tag URLs.

Soft 404s don’t behave like hard 404s. No automatic deindex drama — but URLs linger in limbo, waste crawl, and rarely rank. On WordPress they cluster on tag archives, search results pages, thin category stubs, and “placeholder” pages you forgot to finish.

Here’s how to find soft 404 patterns on WordPress and fix them without breaking legitimate pages.

Examples of thin WordPress archive pages flagged as soft 404
Group exported URLs by template — fix the pattern once.

What Triggers a Soft 404

Google’s systems compare HTTP status, page content, and user/value signals. Common triggers:

  • Very little unique content — boilerplate only
  • “Not found” or “no results” messaging with 200 status
  • Pages that look like error pages but aren’t 404
  • Redirect to homepage that returns 200 instead of 301
  • Empty WooCommerce categories or search with zero products

Different from Crawled – currently not indexed — soft 404 is a specific quality/status classification.

WordPress URLs That Often Get Soft 404

1. Tag and author archives

Single-post tag pages, empty author archives — title + one link + footer. Google sees template, not content.

Fix: Noindex low-value archives — tags vs categories guide.

2. Internal search results

?s=keyword indexed accidentally — “nothing found” pages with 200. Disallow in robots or noindex search template.

3. Empty categories

Category exists, zero posts assigned — “No products found” with 200. Remove category, noindex, or add content + products.

4. Placeholder pages

“Coming soon” service page, Lorem ipsum draft published by mistake, page builder blank template.

Fix: Real content, draft until ready, or 404/redirect if retired.

5. Soft redirects

JavaScript or meta refresh to homepage while URL returns 200. Google wanted 301.

6. WooCommerce out-of-stock discontinued products

Empty product shell — see our out-of-stock SEO guide for keep vs noindex decisions.

How to Find Soft 404s

  1. Search Console → Pages → “Soft 404” reason (or Page indexing report filters)
  2. Export URLs — group by template (tag, category, product, page)
  3. Open each logged out — would a user find value in 5 seconds?
  4. Crawl with Screaming Frog — filter thin word count + 200

Fix patterns first — one tag noindex rule beats editing 200 tag URLs individually.

Fix Strategies by Intent

Situation Action
Should never rank (search, thin tag) noindex + remove from sitemap
Should rank but thin Add unique intro, posts, internal links
Retired URL 301 to replacement or real 404
Wrong soft classification on good page Improve content depth, check render in URL Inspection

When the Page Is Actually Good

False soft 404 happens — JavaScript-rendered content Google didn’t see, aggressive ad walls, cloaking (don’t), or extreme template similarity across many URLs.

URL Inspection → View crawled page. If rendered HTML is empty, fix rendering/cache/JS — overlaps with Core Web Vitals and JS diet.

Request indexing once after substantive fix — when it works.

Prevention

Tools

  • Citence — thin content and indexability flags at scale
  • MiroPage SEO — block thin pages before publish

The takeaway

Soft 404 on WordPress means Google sees a 200 page with no value — empty archives, search results, placeholders, broken soft redirects. Noindex junk, enrich pages that should rank, 301 or hard-404 retired URLs. Fix templates before hand-editing hundreds of URLs.

← Back to blog