HTTPS response status codes are hidden away from a person’s view, handled by a web browser and server, but they provide a wealth of information to developers and SEO teams. If you’re using an HTTP status checker or want to learn more about these codes, we’re going to cover them in great detail.
But before we begin, it’s crucial that you understand what these status codes are and why they’re essential.
Contents
What are HTTP status codes?
Whenever you type a URL in your browser or go to a page through a search engine, an HTTP status code is returned. The code is sent from the server to the browser, but you won’t see these codes unless there is some issue with a website or its server.
There’s a good chance that you’ve seen a 4XX status code when a page didn’t exist or something that looked like this:
Sometimes, the page will be all white with the words:
- Forbidden
- Page Not Found
These codes, 403 and 404 respectively, tell your browser that there’s an issue with the request you’ve sent.
What is the status code returned from the server to your browser?
Unless it’s your job to check statuses or develop a site, your main concern is that the page loads – period. However, since these responses are a good indicator of what’s happening behind the scenes on your site, it’s important to be able to view the response a page returns.
Where can I see the HTTP status code?
An HTTP status code checker is the easiest method because it’s a user-friendly way to see the status of a page. However, you can also see the code in your browser in some cases. For example:
- Google Chrome: Enter developer mode on a page by pressing Option + ⌘ + J (on macOS), or Shift + CTRL + J(on Windows/Linux) and you’ll see the status of the page and elements that exist.
- Firefox: Navigate to Tools > Browser Tools > Web Developer Tools and then click on the Network tab to see the status of a page and its elements.
Now that you know where to find these codes, what do they actually mean? It depends. There are a lot of codes to go through.
HTTP response status codes
Response codes can mean anything, from an HTTP status timeout to the request being successful. Codes are broken down into five main categories:
Informational responses (100–199)
- 100 Continue: A response that tells the client to continue or ignore the request.
- 101 Switching Protocols: A response to an Upgrade header and provides information relating to the protocol the server is switching to.
- 103 Early Hints: Used with the Link header. The 103 code allows the preloading of some resources while the response is pending.
Successful responses (200–299)
Below is the list of all SEO important 2xx status codes:
- 200 OK: Indicates that the request was a success.
- 201 Created: Commonly sent after a POST or PUT request to indicate that the request was successful and a new resource is being loaded.
- 202 Accepted: A response that the request was received, but no action has been taken yet. Typically, this response is given when the server is waiting for another server or process.
- 203 Non-authoritative Information: Sent when the metadata doesn’t match the origin server.
- 204 No Content: The server has no content to send back.
- 205 Reset Content: Reset the document from the request origin.
- 206 Partial Content: Sent when the Range header is requesting a partial resource.
- 207 Multi-Status: A set of multiple status codes for multiple resource requests.
Redirection messages (300–399)
- 300 Multiple Choice: Sent when a request has numerous response options.
- 301 Moved Permanently: The URL requested has moved, and a new URL is sent.
- 302 Found: Indicates that the URL requested has changed temporarily.
- 303 See Other: Sent to alert the client to seek the resource at a different URL.
- 304 Not Modified: Sent to clients when using cached resources to tell the client that the resource has not been modified since the last cached version.
- 307 Temporary Redirect: Follows the same rules as the 302-response code, but the user agent cannot change the HTTP method used.
- 308 Multiple Choice: Follows the same rules as a 301-status code, but the HTTP method cannot be changed.
Client error responses (400–499)
Here is the list of all SEO important 4xx response codes below:
- 400 Bad Request: An invalid syntax was sent to the server.
- 401 Unauthorized: The client has not authorized itself and must do so to receive a response.
- 403 Forbidden: The client does not have access to the file.
- 404 Not Found: The resource was not found by the server.
- 405 Method Not Allowed: The client sent an unsupported request method for the respective resource.
- 406 Not Acceptable: The client sent a request that doesn’t conform to the content in the request.
- 407 Proxy Authentication Required: The request must be resent by a proxy.
- 408 Request Timeout: The server wants to shut the connection down because it’s unused.
- 409 Conflict: The current state of the server is in conflict with the request sent.
- 410 Gone: A request for a resource that has been permanently deleted.
- 411 Length Required: The Content-Length sent in the header field was not defined and rejected the request.
- 412 Precondition Failed: Preconditions in the headers do not meet the server requirements.
- 413 Payload Too Large: The requested entity exceeds server limits.
- 414 URI Too Long: The client sent a URL request that the server refuses to interpret.
- 415 Unsupported Media Type: The client requested a media format that the server doesn’t support.
- 416 Range Not Satisfiable: The Range field does not satisfy server requirements.
- 417 Exception Failed: The Except header’s data cannot meet server requirements.
- 421 Misdirected Request: The server is unable to respond to the request.
- 422 Unprocessable Entity: Semantic errors are stopping the request processing.
- 423 Locked: The resource requested is locked.
- 424 Failed Dependency: A dependency request failed.
- 425 Too Early: The server refuses to fulfill the request because it may be repeated.
- 426 Upgrade Required: The server may approve the request if an upgrade to the client protocol is made.
- 428 Precondition Required: A request failed to meet the preconditions, and the request must be conditional.
- 429 Too Many Requests: A response indicating rate limiting due to excessive requests by the user.
- 431 Request Header Fields Too Large: The header fields sent by the client are too large to process and must be sent back with smaller header fields.
- 451 Unavailable for Legal Reasons: The resource is inaccessible due to legal reasons, such as government censorship.
Server error responses (500–599)
Below is the list of all 5xx status codes to know for SEO:
- 500 Internal Server Error: Server doesn’t know how to handle the client request.
- 501 Not Implemented: The server does not support the request.
- 502 Bad Gateway: An invalid response was sent to the server.
- 503 Service Unavailable: The server cannot handle the request.
- 504 Gateway Timeout: The server cannot receive a response fast enough when acting as a getaway.
- 505 HTTP Version Not Supported: The server does not support the HTML version requested.
- 506 Variant Also Negotiates: An internal configuration issue exists.
- 507 Insufficient Storage: The server cannot store and fulfill the request.
- 508 Loop Detected: Infinite loop is stopping the request from being successful.
- 510 Not Extended: Extensions to the original request are required to fulfill the request.
- 511 Network Authentication Required: The client must be authenticated to gain network access.
Why HTTP Status Codes and Errors Matter for Search Engine Optimization (SEO)
Google’s John Mueller has a lot of interesting advice (view below) where he discusses 404 errors specifically. Mueller states that if a site has 30% or 40% 404 errors, it’s totally fine. He mentions churn sites, such as classified ads, specifically.
However, while acceptable, this is truly dependent on the site and what value these pages offer.
For example, if you have removed pages that are of no SEO value, Google will not penalize you, according to what Mueller said in the video.
That’s a good thing.
With that said, let’s assume that you just migrated your site and now 20% of the pages are showing 404 errors. You’ll lose SEO value in the process. After a migration, you should check page status for all pages and work to restore pages that you want to keep on your site for SEO value or redirect them to corresponding pages.
Running a mass HTTP status checker on your site periodically is good practice and can help you correct any issues that naturally pop up during a site’s evolution.
The main issues that we see pop up with errors are:
- 4xx codes – Issues with pages disappearing exist because they’ll be deindexed by Google, so you lose SEO value and traffic.
- 301 and 302s – 3xx redirects aren’t bad, but it’s too easy to have a 301 redirect in place of a 302 or vice versa.
- 5xx status – The 5xx ranges are present with server errors and issues, such as an HTTP status code timeout, although some 4xx responses can also be timeout issues.
Thankfully, you don’t have to worry about a 1XX or 2XX response impacting your site’s SEO.
A status code checker helps you identify issues as they arise and make changes quickly to improve usability and rankings in some cases. You have a lot of options for monitoring and checking page status.
Monitoring HTTP Status Code Responses
What is the status code returned from the server to your browser? Unless an error is sent to your browser and displayed on the screen, you won’t know what code is sent to you. Instead, you should use an HTTP status code checker to monitor response codes.
You can sift through your site’s log files to search for a specific 4XX status code or 5XX status code, but it’s incredibly time-consuming.
If your site is an enterprise, a status code checker is the only feasible way to monitor status codes. Thankfully, monitoring status codes is possible with the right tools, such as:
Screaming Frog
Screaming Frog has a built-in crawler that will find broken links and server errors on your site. Running this HTTP status checker periodically and then exporting the list of errors is one way to monitor your site’s status.
Google Search Console
Google’s Search Console is something that you should use to find errors on your site. When you navigate to the “Coverage” tab, you’ll find pages where Google found issues on your site. While this isn’t the best URL status checker, it gives you a quick glimpse at what problems the search giant has when crawling your site.
Mazeless
We might be a little biased, but our HTTPS status checker is what we recommend you use for tracking your status codes. Our checker is part of our larger tool, but it provides a fast and easy way to monitor HTTP status timeout, 1XX status code, 2XX status code, 3XX status code, 3xx redirection and of course, 4XX and 5XX codes, too.
Click here to register for your free trial.
Browser compatibility
Certain browsers accept only some HTTP Response Status Codes. Here is a list of browsers and the codes they accept:
1XX Status Codes and Browser Compatibility
100 | |
Chrome | Y |
Chrome Android | Y |
Edge | 12+ |
Firefox | Y |
Firefox Android | Y |
Internet Explorer | Y |
Opera | Y |
Opera Android | Y |
Safari | Y |
Safari iOS | Y |
Samsung Internet | Y |
WebView Android | Y |
2XX Status Codes and Browser Compatibility
200 | 201 | 204 | 206 | |
Chrome | Y | Y | Y | Y |
Chrome Android | Y | Y | Y | Y |
Edge | 12+ | 12+ | 12+ | 12+ |
Firefox | Y | Y | Y | Y |
Firefox Android | Y | Y | Y | Y |
Internet Explorer | Y | Y | Y | Y |
Opera | Y | Y | Y | Y |
Opera Android | Y | Y | Y | Y |
Safari | Y | Y | Y | Y |
Safari iOS | Y | Y | Y | Y |
Samsung Internet | Y | Y | Y | Y |
WebView Android | Y | Y | Y | Y |
3XX Status Codes and Browser Compatibility
301 | 302 | 303 | 304 | 307 | 308 | |
Chrome | Y | Y | Y | Y | Y | 36 |
Chrome Android | Y | Y | Y | Y | Y | 36 |
Edge | 12+ | 12+ | 12+ | 12+ | 12+ | 12 |
Firefox | Y | Y | Y | Y | Y | 14 |
Firefox Android | Y | Y | Y | Y | Y | 14 |
Internet Explorer | Y | Y | Y | Y | Y | 11 |
Opera | Y | Y | Y | Y | Y | 24 |
Opera Android | Y | Y | Y | Y | Y | 24 |
Safari | Y | Y | Y | Y | Y | 7 |
Safari iOS | Y | Y | Y | Y | Y | 7 |
Samsung Internet | Y | Y | Y | Y | Y | 3 |
WebView Android | Y | Y | Y | Y | Y | 37 |
4XX Status Codes and Browser Compatibility
401 | 403 | 404 | 406 | 407 | 409 | 410 | 412 | 416 | 418 | 425 | 451 | |
Chrome | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
Chrome Android | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
Edge | 12+ | 12+ | 12+ | 12+ | 12+ | 12+ | 12+ | 12+ | 12+ | 12+ | – | 12+ |
Firefox | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | 58 | Y |
Firefox Android | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | 58 | Y |
Internet Explorer | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
Opera | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
Opera Android | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
Safari | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
Safari iOS | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
Samsung Internet | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
WebView Android | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | – | Y |
5XX Status Codes and Browser Compatibility
500 | 501 | 502 | 503 | 504 | |
Chrome | Y | Y | Y | Y | Y |
Chrome Android | Y | Y | Y | Y | Y |
Edge | 12+ | 12+ | 12+ | 12+ | 12+ |
Firefox | Y | Y | Y | Y | Y |
Firefox Android | Y | Y | Y | Y | Y |
Internet Explorer | Y | Y | Y | Y | Y |
Opera | Y | Y | Y | Y | Y |
Opera Android | Y | Y | Y | Y | Y |
Safari | Y | Y | Y | Y | Y |
Safari iOS | Y | Y | Y | Y | Y |
Samsung Internet | Y | Y | Y | Y | Y |
WebView Android | Y | Y | Y | Y | Y |
Protocols
The Internet protocols that allow HTTP requests to work include:
- Application Layer Protocols: The application layer deals with process-to-process communication and consists of numerous protocols, including but not limited to: HTTP/S, FTP, POP, DNS, XMPP, SSH and more.
- Transport Layer Protocols: The transport layer is used for connection-oriented transmissions and includes TCP, SCTP, UDP and others.
- Internet Layer Protocols: The Internet layer is a series of methods, protocols and specifications used to send network packets across the Internet. IPv6 and IPv6 are two core protocols used in the Internet layer.
- Link Layer Protocols: The lowest layer in the Internet protocol is the link layer. This layer “talks to” physical and logical network components using tunnels, NDP, PPP, MAC or other protocols.
Recap
HTTP response status codes indicate the health of your server, help you find issues with pages, folders or files on your site and allow you to correct them. Once you understand the codes and have an HTTP status checker in place, you’ll be better prepared to fix issues with your site that can lead to:
- Lost organic traffic
- Poor usability
- Drop in revenue
Identifying and correcting issues is vital to the success of any website.