How to fix "Soft 404" errors in WordPress
"Soft 404" means the URL returned a success code, usually 200, but Google thinks the page looks like an error or an empty page, so it treats it as not found and leaves it out of the index. The fix depends on the page: if it should exist, give it real content; if it should not, make it return a real 404 or 410; if it moved, 301 it to the true replacement.
On WordPress, the usual triggers are empty archives, "nothing found" templates that still return 200, very thin pages, and redirects that send dead URLs to the homepage.
Step by step
1. Check what each URL actually returns
Open Indexing → Pages → Soft 404 and export the examples. For each type of URL, check the status code:
curl -sI https://example.com/tag/old-tag/ | head -1
Then open it in a browser. You are looking for the gap between the two: a page that says "Nothing found" or looks empty while the server says 200.
2. Match the URL to a WordPress cause
| What you see | Likely cause |
|---|---|
| Empty tag, category or author archive | Archive with no posts still returns 200 |
| "No results" or "Nothing found" page | Theme template for empty queries |
| Out-of-stock or discontinued product with almost no text | Product page emptied instead of removed |
| Old post URL that lands on the homepage | Blanket redirect of deleted content |
| Page with only a heading, or a form and nothing else | Genuinely thin page |
| Page that shows content only after JavaScript runs | Google rendered an empty shell |
3. Give real pages real content
If the page should rank, add the substance that makes it clearly a page: text that describes the product, service or topic, useful details, and links to related pages. For a product that is temporarily out of stock, keep the description, add the expected restock date and link to alternatives rather than stripping the page. Use Test live URL in URL Inspection and View tested page to confirm Google sees the content, not a loading spinner.
4. Let dead pages return a real 404
If the content is gone and nothing replaces it, the page should return 404 or 410, not a 200 with an error message. Deleting the post in WordPress does this automatically. If a plugin or theme turns missing pages into 200 responses, fix or remove that plugin. A real 404 is not a penalty; it is the correct answer.
5. Replace homepage redirects with relevant ones
Check Hydrogen SEO → Redirections for rules that send many old URLs to /. Google often treats those as soft 404s. For each, point the rule at a true replacement page, or delete the rule and let the URL 404. The find and fix 404s docs cover the decision per URL.
6. Handle empty archives
Hydrogen SEO's Noindex Empty Archives setting under Titles & Meta → General, on by default, noindexes category, tag and taxonomy archives with no posts and keeps them out of the sitemap. That moves them from Soft 404 to "Excluded by 'noindex' tag", which is fine. Better still, delete tags you no longer use, and remove links to them.
7. Validate the fix
When a group is fixed, click Validate fix in the Soft 404 report. Pages you improved should move to indexed; pages you turned into real 404s move to "Not found (404)", which is expected.
What the status means
Google checks whether the content of a page matches its status code. A 200 that looks like an error page confuses both users and crawlers, so Google reports it as a soft 404 and does not index it. Redirects can trigger it too: if a redirect lands somewhere that is not a real equivalent of the requested URL, Google may treat the original as a soft 404 rather than following the redirect's signals.
Not every missing page is a soft 404
Real 404s show up under "Not found (404)" instead. A common example on sites behind Cloudflare: Email Obfuscation rewrites email addresses into links under /cdn-cgi/l/email-protection, and Google reports those URLs as 404s. They are harmless. If they bother you, turn off Email Obfuscation in Cloudflare's Scrape Shield settings, or leave them; they do not affect your real pages.
Common questions
Are soft 404s bad for SEO?
They mean a page is not indexed, and for pages you want in Google that is a lost opportunity. For pages that should not exist, turning them into real 404s is the clean fix.
Should I redirect soft 404 pages to my homepage?
No. Redirects to unrelated pages are one of the causes of soft 404s. Redirect only to a true replacement.
Can a page with little text be a soft 404?
Yes. A page with a title and almost nothing else can look like an error page to Google. Add real content or remove the page.