HTTP Status Code

A three‑digit number returned by the server in response to a browser or bot request. It determines how to handle the page.

In brief

An HTTP status code is a standardised code that reports the outcome of a request. For SEO, critical codes are 200 (OK), 301/302 (redirects), 404 (not found), 410 (gone), 500 (internal server error), and 503 (service unavailable).

Why HTTP status codes matter for SEO

A search crawler first looks at the status code. If it is not 200, the page content may be ignored or handled differently. Incorrect codes (e.g., a 404 that should be a 410 or a soft 404) can lead to traffic loss and indexing issues.

Main HTTP status codes for SEO

  • 200 OK — page loaded normally, crawler will analyse content.
  • 301 Moved Permanently — permanent redirect (passes link equity).
  • 302 Found — temporary redirect (equity may not pass).
  • 404 Not Found — page not found (set up a custom 404 or redirect).
  • 410 Gone — page permanently deleted (faster removal from index).
  • 500 Internal Server Error — server error, crawler will retry later.
  • 503 Service Unavailable — temporary downtime (good for maintenance).

How to check status codes on your site

  • Google Search Console → Coverage report (shows 404, 500, etc.)
  • Screaming Frog SEO Spider — bulk check of all pages
  • Browser developer tools → Network tab
  • Terminal command `curl -I https://example.com`
Soft 404 — a page that returns 200 but contains a 'page not found' message. This is bad for SEO because crawlers waste crawl budget on non‑existent pages. Use a real 404 or 410 instead.

Common questions

Better not, if the page has no direct replacement. Redirecting a 404 to the homepage confuses crawlers. Return 404 or 410, and link to relevant sections from the homepage.
Use 503 with a `Retry-After` header. This tells crawlers the page is temporarily unavailable and should be checked again later.
Recent experiments suggest Google may pass equity through 302 almost as well as 301, but to be safe, always use 301 for permanent moves.
Direct contacts

Discuss your project?

Share your goals and website context — I will suggest a practical next step.

HTTP Status Code — What is it?