HTTP status codes are three-digit responses a web server sends back when a browser or crawler requests a page, telling it whether the request succeeded, redirected, or failed. Codes are grouped into ranges: 2xx for success, 3xx for redirects, 4xx for client errors, and 5xx for server errors. Google’s crawlers read these codes to decide whether to index, drop, or retry a URL.
For a business site, status codes affect both crawl budget and user trust. A page returning a 5xx error repeatedly can get dropped from the index, while a broken 404 that visitors land on from a search result or ad often means a lost lead. Checking status codes is part of routine work covered in an SEO audit, and it pairs closely with how you configure redirects and your robots.txt file.
Key takeaway
2xx means the page loaded fine, 3xx means it redirected somewhere else, 4xx means the request failed on your end (often a missing page), and 5xx means the server itself broke. Fix 5xx first, then clean up unwanted 4xx and redirect chains.
How HTTP status codes work
A status code is sent in the response header before any page content loads, so it’s the first signal a crawler or browser reads.
When a browser or Googlebot requests a URL, the server processes that request and replies with a status line, for example HTTP/1.1 200 OK. The number after HTTP/1.1 is the code. Tools like Google Search Central document how Googlebot interprets each range for crawling and indexing decisions.
Why status codes matter for SEO, and what they don’t do
Status codes control whether a page can be crawled and indexed, but they don’t directly influence rankings once a page is confirmed live and healthy.
A 200 status is required for a page to be eligible to rank, but having a 200 doesn’t boost rankings by itself. A 404 or 410 tells Google to drop a page from the index over time. A 301 passes most ranking signals to the new URL, while a 302 (meant to be temporary) can delay that transfer. Persistent 5xx errors during a crawl can cause Google to slow down or pause crawling of the whole site.
Common HTTP status codes
The codes you’ll see most often in Search Console fall into four ranges, each needing a different response.
| Code | Meaning | Typical action |
| 200 OK | Page loaded successfully | None needed |
| 301 Moved Permanently | Permanent redirect | Update internal links to the new URL |
| 404 Not Found | Page doesn’t exist | Redirect if it had value, or leave as 404 if it shouldn’t rank |
| 410 Gone | Page removed on purpose | Use when you want faster deindexing than a 404 |
| 500 Internal Server Error | Server-side failure | Fix immediately, often a plugin or hosting issue |
301 vs 302 redirect
A 301 tells search engines the move is permanent and to transfer ranking signals, while a 302 signals a temporary change and holds signals at the original URL.
| Redirect type | Use case | Effect on rankings |
| 301 | Page moved for good, URL restructure, domain migration | Passes most link equity to the destination |
| 302 | Temporary promotion, A/B test, maintenance page | Keeps signals on the original URL |
Good vs bad examples
The difference usually comes down to whether the redirect or error was intentional and clean, or accidental and left unchecked.
- A discontinued product page 301-redirects to the closest current category.
- A removed blog post returns a 410 so it’s dropped from the index quickly.
- Server errors are monitored and fixed within hours, not weeks.
Sites that skip this maintenance tend to accumulate the opposite pattern below.
- Old service pages 404 with no redirect, losing existing backlinks and traffic.
- Redirect chains of three or four hops slow down crawling and users.
- A soft 404 (a page that looks empty but returns a 200) confuses Google about whether the page is real.
How to check HTTP status codes
Use Google Search Console for indexed-site patterns and a header checker for individual URLs.
- Open Search Console > Indexing > Pages. Review the

