HTTP status codes and SEO: what Google does with each one
An HTTP status code tells Googlebot what happened when it requested a URL, and Google decides what to crawl, index or drop largely on that basis. For SEO, HTTP status codes come down to a handful: 200 lets a page be indexed, 301 and 308 move signals to a new URL, 404 and 410 get a page removed, and 429 or 5xx errors make Google slow down and, if they persist, drop pages.
Here is what each group means according to Google Search Central's documentation.
200: the page can be indexed
A 200 OK means the server returned content, which Google then considers for indexing. It is not a guarantee. If the page is empty or says "product not found" while still returning 200, Google can classify it as a soft 404, listed in Search Console's Page indexing report under the reason "Soft 404".
The fix is a real 404 or 410 when the content is gone, or real content if the page should stay.
301, 302, 307, 308: redirects
Googlebot follows redirects, up to 10 hops according to Google, and the code tells it how to treat the target. 301 and 308 are permanent and a strong signal that the target should become the canonical URL. 302 and 307 are temporary, a weak signal, so Google may keep the old URL in the index for a while.
Use 301 or 308 for migrations and merged pages, and keep 302 or 307 for URLs that really are coming back. A temporary redirect left in place for months is a typical migration leftover. Point old URLs straight at the final destination rather than through a chain. The website migration SEO checklist covers redirect mapping in more detail.
404, 410 and the other 4xx codes
Google treats all 4xx codes except 429 the same way: the URL isn't indexed, and if it was, it gets removed. Both 404 Not Found and 410 Gone are fine for content you deleted on purpose. 410 states the intent more clearly, but there's no SEO reason to migrate from one to the other.
404s on URLs that never mattered are normal. Chase the ones on pages that had traffic or links.
403 Forbidden deserves its own look. A page returning 403 to Googlebot drops out of the index like any other 4xx. It usually means a firewall rule blocks Googlebot while letting browsers through. Search Console reports it as "Blocked due to access forbidden (403)".
429 and 5xx: the codes that slow crawling
429 Too Many Requests, 500, 502, 503 and 504 tell Google the problem is on the server side. Googlebot reduces its crawl rate. Indexed URLs stay for a while, then get dropped if the errors continue.
For planned maintenance, return 503 Service Unavailable, ideally with a Retry-After header. A maintenance page served with 200 risks getting indexed in place of your content. Keep it short as well: Google's guidance on reducing crawl rate advises against serving these codes for more than a day or two.
robots.txt has its own rule: if /robots.txt returns a 5xx, Google pauses crawling the whole site until it can read the file again. The outage side is covered in does downtime hurt SEO.
Where to see the codes Google gets
Search Console has two reports for this. Page indexing groups non-indexed URLs by reason, including "Not found (404)", "Server error (5xx)", "Redirect error" and "Soft 404". Crawl stats, under Settings, breaks Googlebot's requests down by response code, and a rise in 5xx there is often the first sign of hosting trouble. Our guide to fixing index coverage errors goes through the Page indexing reasons one by one.
For a single URL, curl is faster:
curl -sI https://example.com/page
curl -sIL https://example.com/old-page
The second follows redirects and prints every hop. Some firewalls treat curl differently from Googlebot, so if a result looks odd, run the URL Inspection live test as well.
What Deltio checks, and what it leaves to a crawler
Deltio runs an HTTP check on each monitored site every 10 minutes and records the status code and response time. When the site goes offline or a firewall starts blocking the check, you get an email or Slack alert, and another when it's back.
That applies to the URL you monitor. Deltio isn't a crawler: it doesn't collect the status code of every page or trace redirect chains, which is a job for a crawler such as Screaming Frog plus the Search Console reports. Its daily sitemap snapshot does show when URLs drop out of the sitemap, often a sign of new 404s or redirects.
Starter costs £24 a month, or £20 billed annually, and you can try it free for 14 days.
Frequently asked questions
- Is a 302 redirect bad for SEO?
- Not if the move is genuinely temporary. Google treats a 302 as a weak signal and may keep the original URL indexed. If the change is permanent, switch to a 301 or 308 so signals consolidate on the new URL predictably.
- Do lots of 404 errors hurt my rankings?
- Google has said that 404s on URLs that shouldn't exist don't affect how the rest of a site is crawled or ranked. They matter when the missing pages used to have traffic or links, or are still linked internally or listed in the sitemap.
- Does slow server response affect crawling?
- Yes. Google adjusts how much it crawls based on how quickly and reliably the server responds. Consistently slow responses or frequent errors lead Googlebot to request fewer pages, which mostly matters on large sites.
- Why does Search Console show 5xx errors when my site loads fine?
- The errors may be intermittent and happen at times you weren't looking, or the server may respond differently to Googlebot than to a browser, for example because of rate limiting or bot protection. The URL Inspection live test and the Crawl stats report help confirm which it is.
- Does Deltio alert me when a page returns a 404?
- Deltio's uptime check runs every 10 minutes on the monitored URL, records its status code and response time, and alerts you when the site goes offline or is blocked by a firewall. It doesn't crawl every page, so 404s on individual URLs are best found with a crawler and Search Console.