Skip to main content
sus.botdocs
  • SEO
  • AI
  • QA
  • Privacy
  • Accessibility
  • Security
  1. Docs
  2. SEO
  3. Status codes and redirects
  4. A page answers with an error, or says "not found" with status 200

SEO finding

A page answers with an error, or says "not found" with status 200

SEO Error Severity: High

Part of the audit Status codes and redirects. Finding id: seo.brokenPages.

What it costs you

Visitors who land on the page leave. A page that keeps returning an error loses its place in search, and the traffic and links it had are lost.

What to do

Restore the page, or redirect its address to the page that replaces it. Start with the pages that still get search clicks.

What it checks

  • Page not found or refused
  • Server error
  • Error page that looks like a normal page
  • Broken page that still gets visitors

How to fix it

Check whether the crawler was blocked

  1. Open [url] in a browser, logged out.
  2. If the page shows: a firewall or bot protection refused the crawler. Allow it there, or ignore the finding.
  3. If the page asks for a login on purpose, remove the internal links that lead visitors without an account to it.

How to check: The next crawl gets status 200, or the links are gone.

Find the server error

  1. Look in the server error log for [url] at the time of the crawl.
  2. Fix the cause in the application or the server.

How to check: curl -sI [url] shows 200. Then run this rule again.

Send status 404 with the error page

  1. Open [url] and confirm that it is an error page.
  2. Make the application send status 404 together with that page.
  3. If it is a real page with an unlucky title, change the title or ignore the finding.

How to check: curl -sI [url] shows 404, or the title no longer reads like an error.

Restore or redirect the page

  1. Page was removed by mistake: put it back at the same address.
  2. Page moved or was replaced: redirect the old address to the new one with a 301.
  3. Page is gone for good and nothing replaces it: leave the 404 and remove the internal links to it.

How to check: curl -sI [url] shows 200, or a 301 to the replacement. Then run this rule again.

A real case

A site's missing pages answered with HTTP 500 instead of 404, so the request for its robots.txt failed too and Google stopped crawling the site. The home page dropped out of Google and the client's traffic fell 90%.

Source: aakk9999 on WebmasterWorld, 4 June 2013

How to verify by hand

Search Console clicks for the same URL over the last 90 days, to put the pages that still earn traffic first.

What this relies on

A URL the crawl reached is linked from somewhere or listed in a sitemap, so its error is seen by visitors or search engines.

  • All audits
  • About sus.bot
  • Open the app
  • Contact support