An HTTP status code is a three-digit number a web server returns with every response, telling the requesting client what happened with the request. Every time Googlebot fetches one of your URLs, your server replies with one of these codes, and the code largely determines whether that page gets indexed, redirected, dropped, or retried later.
If you run a website and want it to perform in search, you need to understand these codes the way an electrician understands voltage. They are the language your site speaks to Google, and a handful of misconfigured responses can quietly tank a site that otherwise has great content and links.
The Five Categories
- 1xx Informational, the server received the request and is processing it.
- 2xx Success, the request worked.
- 3xx Redirection, the resource has moved.
- 4xx Client Error, the request was bad in some way.
- 5xx Server Error, your server choked.
The Codes That Actually Matter for SEO
| Code | Name | What It Means for SEO |
|---|---|---|
| 200 | OK | The page was served successfully. Default healthy state. |
| 301 | Moved Permanently | Permanent redirect. Passes ranking signals to the new URL. |
| 302 | Found | Temporary redirect. Using 302 when you mean 301 is a common, avoidable source of confusion. |
| 304 | Not Modified | The resource hasn’t changed. Useful for caching. |
| 404 | Not Found | Fine when intentional. A problem when URLs users expect are throwing 404s. |
| 410 | Gone | Permanently removed. Stronger signal than 404, gets dropped from index faster. |
| 429 | Too Many Requests | Server is rate-limiting. If Googlebot keeps hitting 429s, it will back off. |
| 500 | Internal Server Error | Something broke. Persistent 500s on important URLs get them dropped. |
| 503 | Service Unavailable | Temporarily down. The right code for planned maintenance, paired with Retry-After header. |
How Googlebot Reacts to Each
For 200s, Googlebot processes the response, renders the page, and considers it for indexing.
For 301 and 302, Google consolidates signals to the destination URL. The old URL falls out of the index over time. For temporary 302s, Google generally keeps the original URL indexed.
For 404 and 410, Google drops the URL from the index. 410 does it faster. A handful of 404s on a site is normal. What hurts is when internal links and sitemaps point to 404s.
For 429, 500, and 503, Googlebot will retry. If errors persist, Google slows its crawl rate and eventually starts dropping URLs. A site that returns 500s for a week can lose rankings that take months to recover.
Where to See This Data: Google Search Console
GSC’s Pages report (under Indexing) groups every URL Google has crawled by status. You’ll see buckets like “Not found (404),” “Page with redirect,” “Server error (5xx),” and “Soft 404.”
Check it monthly. Big spikes in any error category are usually the first sign that something has gone wrong, a plugin update, a CDN misconfiguration, broken code pushed to production on a Friday afternoon.
Common Mistakes
- 500 errors during peak traffic. Underpowered servers hit their limits and throw 500s at Googlebot. Use uptime monitoring and watch GSC’s crawl stats.
- Soft 404s. A page returns 200 OK but the content is effectively empty. Google calls these soft 404s and excludes them. Either fix the page or return a real 404.
- 503 without a Retry-After header. If you take your site down for maintenance and just throw a generic 503, Googlebot doesn’t know when to come back. Set Retry-After to something reasonable.
Tools for Checking Status Codes
- curl, from your terminal, run
curl -I https://example.com/some-pageand the first line of the response tells you the status code. - Browser dev tools, Network tab, reload the page, click any request to see its status.
- Screaming Frog, when you need to check thousands of URLs at once. Free up to 500 URLs.
The Takeaway
Status codes are not exotic SEO arcana. They are the plumbing. A site that returns the right codes, 200s for live pages, 301s for moved pages, 410s for gone pages, 503s with Retry-After during maintenance, gives Google clean signals and gets rewarded with stable crawling and indexing.
A site that returns the wrong codes quietly bleeds rankings and traffic, and the owner usually has no idea why. Learn the nine codes above, check your GSC Pages report once a month, and you’ll catch most problems before they become expensive.