Seoxpert.io
highTechnical SEO

Soft 404 Pages Detected (200 OK with "Not Found" Title)

Pages return 200 OK but display 'Not Found' in title or H1, causing soft 404 issues for search engines.

By Seoxpert Editorial · Published

Why it matters

Soft 404s waste crawl budget and confuse search engines, potentially leading to poor indexing or sitewide demotion. Users may also be misled by pages that appear valid but contain error content. Proper status codes help search engines and users understand when content is missing.

Impact

If unresolved, these pages may be incorrectly indexed, harming site quality and SEO performance.

How it's detected

Automated crawlers detect a 200 OK status combined with page titles or H1s indicating missing or not found content.

Common causes

  • Incorrect server or framework error handling for missing pages
  • Custom 404 pages that do not set the HTTP status code
  • Misconfigured routing that defaults to 200 OK
  • Legacy CMS or plugins overriding error responses

How to fix it

Update your server or framework to return HTTP 404 (or 410 if permanently removed) for missing pages. In Next.js, use 'notFound()' from next/navigation. In Express, respond with 'res.status(404).send(...)'. Ensure all custom error pages set the correct status code.

Code examples

Express.js: Incorrect (returns 200 OK)

app.get('/missing', (req, res) => {
  res.send('<h1>Not Found</h1>'); // No status set, defaults to 200
});

Express.js: Correct (returns 404)

app.get('/missing', (req, res) => {
  res.status(404).send('<h1>Not Found</h1>');
});

Next.js: Correct usage

import { notFound } from 'next/navigation';

export default function Page() {
  notFound();
  return null;
}

FAQ

Why is returning 200 OK for a missing page a problem?

A 200 OK status tells search engines the page is valid, so they may index error content instead of recognizing it as missing.

How do I check if my custom 404 page returns the correct status code?

Use browser dev tools or curl to inspect the HTTP status code when visiting a non-existent URL.

Should I use 404 or 410 for missing pages?

Use 404 for temporarily missing pages and 410 if the content is permanently gone.

Does this affect my site's crawl budget?

Yes, soft 404s waste crawl budget as search engines repeatedly crawl and index non-existent pages.

Found this issue on your site?

Run a scan to see if Soft 404 Pages Detected (200 OK with "Not Found" Title) affects your pages.

Scan my website →