HTTP status codes
When you browse the internet, your browser and servers communicate using HTTP status codes. These codes indicate whether a request was successful or if errors occurred. Understanding these codes is crucial for developers, SEO experts, and anyone managing a website.
This article covers the most important HTTP status codes, what they mean and how they affect your site. Recognizing them helps you troubleshoot errors and improve the experience of your visitors.
1xx: informational responses
Section titled “1xx: informational responses”100 Continue
Section titled “100 Continue”The server has received the request headers and the client should proceed to send the request body. This code is useful for indicating that part of a request has been received and the rest can continue.
101 Switching Protocols
Section titled “101 Switching Protocols”This code tells the client that the server agrees to switch protocols if the client requested it. It confirms that the server is willing to change the communication protocol.
2xx: success
Section titled “2xx: success”200 OK
Section titled “200 OK”This status code is the most familiar. It means the request was successful and the server has returned the requested data. It is a sign that everything is functioning correctly.
201 Created
Section titled “201 Created”The server successfully created a new resource as a result of the client’s request. This code often appears when a new record is added to a database.
204 No Content
Section titled “204 No Content”The server processed the request successfully, but there is no content to return. This is useful when you want to indicate successful completion without providing a response body.
3xx: redirection
Section titled “3xx: redirection”301 Moved Permanently
Section titled “301 Moved Permanently”This status indicates that the requested resource has been permanently moved to a new URL. Search engines update their indexes to reflect this change, and users are automatically redirected.
302 Found
Section titled “302 Found”The resource is temporarily at a different URL. Browsers follow the redirect, and search engines keep the original URL indexed. A 307 Temporary Redirect means the same, but guarantees that the request method (such as POST) stays the same.
304 Not Modified
Section titled “304 Not Modified”This code tells the client that the cached version of the requested resource is still valid. It saves bandwidth by not sending the same data again.
4xx: client errors
Section titled “4xx: client errors”400 Bad Request
Section titled “400 Bad Request”This response indicates that the server cannot process the request due to a client error. It could be a malformed request syntax or invalid request message framing.
401 Unauthorized
Section titled “401 Unauthorized”The request requires user authentication. The client should provide credentials to access the requested resource. Often used for login-required areas of a website.
403 Forbidden
Section titled “403 Forbidden”The server understands the request but refuses to authorize it. Unlike a 401 status, re-authenticating will not make a difference. The client does not have permission to access the resource.
404 Not Found
Section titled “404 Not Found”This is one of the most recognizable HTTP status codes. It means the server cannot find the requested resource. This often results from broken links or mistyped URLs.
410 Gone
Section titled “410 Gone”The resource was removed on purpose and will not come back. Search engines drop a 410 from their index faster than a 404.
429 Too Many Requests
Section titled “429 Too Many Requests”The client sent too many requests in a given time, and the server asks it to slow down. Sites often send this to crawlers and bots.
5xx: server errors
Section titled “5xx: server errors”500 Internal Server Error
Section titled “500 Internal Server Error”This generic error message indicates that the server encountered an unexpected condition. It often arises from server misconfigurations or script errors.
502 Bad Gateway
Section titled “502 Bad Gateway”This status appears when a server acting as a gateway receives an invalid response from an inbound server. It suggests issues with upstream servers.
503 Service Unavailable
Section titled “503 Service Unavailable”The server is currently unable to handle the request due to temporary overload or maintenance. It usually resolves itself after some time.
504 Gateway Timeout
Section titled “504 Gateway Timeout”This code indicates that a server acting as a gateway or proxy did not receive a timely response from an upstream server. It often points to network issues.
In Scanfully
Section titled “In Scanfully”The Content screen reports links and media that answer with a 4xx or 5xx status code. A redirect (3xx) is followed, and the status of the final address counts. A 429 Too Many Requests shows as a warning rather than a failure: the other site turned the crawler away, which says little about the target itself. See How Scanfully detects broken links.
