HTTP Status Codes
Complete reference for HTTP response status codes and their SEO impact. Each entry shows whether the code is indexable by Google, whether it passes link equity, and how to use it correctly.
2xxSuccess
3xxRedirection
301Moved PermanentlyThe resource has permanently moved to a new URL. Google transfers link equity to the desti…positive→302Found (Temporary Redirect)Temporary redirect. Google typically indexes the original URL, not the destination.neutral→303See OtherRedirect after a POST/PUT to prevent form resubmission (Post/Redirect/Get pattern).neutral→307Temporary RedirectTemporary redirect that preserves the HTTP method (unlike 302 which changes POST to GET).neutral→308Permanent RedirectPermanent redirect that preserves the HTTP method. Google treats this like 301.positive→
4xxClient Errors
400Bad RequestThe server could not understand the request due to malformed syntax.negative→401UnauthorizedAuthentication is required. Google cannot crawl pages behind a login.negative→403ForbiddenThe server understood the request but refuses to authorize it. Google cannot index forbidd…negative→404Not FoundThe requested resource does not exist. Googlebot will deindex pages returning genuine 404s…negative→410GoneThe resource is permanently gone and will not return. Google deindexes these faster than 4…neutral→429Too Many RequestsRate limit exceeded. If Googlebot receives 429s, crawl rate will be reduced.negative→
5xxServer Errors
500Internal Server ErrorThe server encountered an unexpected condition. Sustained 500s cause deindexing.critical→502Bad GatewayAn upstream server returned an invalid response. Common during deployments and traffic spi…critical→503Service UnavailableThe server is temporarily unavailable. With Retry-After, Googlebot will return later.negative→504Gateway TimeoutThe upstream server did not respond in time. Indicates slow backend or database.critical→
Diagnose status codes on your own URLs
Trace redirect chains, check response codes, and detect 301 vs 302 for any URL