Whether as a user or as a digital marketer, we all see HTTP 400 errors as a bummer. Landing on a page with a 400 error code can be frustrating. Just as frustrating as not understanding why it happened on your own website.
Fixing these 4xx errors has a positive impact on the user experience, and customizing fallback pages does too. However, none of this is possible without understanding exactly what each of these HTTP response codes means.
This guide covers:
- What are HTTPS status codes
- What is a 4XX Error
- A breakdown of HTTP 400 vs. 500 Status Error codes
- Why 4XX Errors can negatively affect your SEO
Ready? Let’s dive in.
What Are HTTPS Status Codes?
You probably already know what “HTTP status codes” or “HTTP response codes” are. But just in case, let’s agree on a definition.
HTTP status codes are codes issued by a server in response to a user request. As we’ll see, a status code’s first number indicates its type of response. Although in this article we’ll only deal with HTTP 400 response codes (also known as 400 errors), let’s see what these classes are.
HTTP response codes are divided into five categories:
- 1xx informative response – it indicates that the user’s request has been received, and a process is in progress
- 2xx successful – it indicates that the request has been received, understood, and accepted successfully
- 3xx redirection – it indicates that further action is required to complete the request
- 4xx client error – it indicates that the user’s request contains incorrect syntax or cannot be completed
- 5xx server error – it indicates that the server was unable to complete a valid request
In short, status codes tell you how your requests are going. When the server returns a 200 message, that means everything is fine. In most cases, you won’t see a 200 message. Instead, you’ll just visualize the content you were looking for, or a success message. But when code 400 or 500 shows up, it’s a different story.
Now let’s take a closer look at 4xx errors.
What Is a 4XX Error?
In summary, when browsing the web you’re playing the role of the client. You have demands and needs and act on them through your web browser. You request websites and those requests go to a web server.
In the previous section, we saw that HTTP 400 errors belong to the vast client error category. These status codes just tell the client that their request can’t be fulfilled by the server, so it timed out.
It’s important to note that 4xx errors can have many causes. Typical 4xx errors occur when a page on a site is no longer active and a redirect hasn’t been set. 400 errors are frustrating to find. In fact, it’s not uncommon for users to leave a site and never return after encountering too many 404s. So, it’s wise to take the time and resources to detect and prevent them.
HTTP 400 vs. 500 Status Error Codes
At this point, you may be wondering what’s the difference between 400 and 500 HTTP errors.
Everyone seems to agree that 400 errors mean client problems, and 500 errors mean server problems. But it isn’t so clear-cut.
A quick look at 404s is enough to see a problem with this common distinction between 5xx and 4xx errors.
Some 404s are caused by website maintenance errors, not by users’ mistakes. For instance, when a user finds a 404 caused by missing and deleted content, they’re not dealing with a mistake they made, but with a consequence of content mismanagement.
Meanwhile, all 5xx errors are always caused by web server misconfiguration or other server-side issues.
How 4xx Errors Affect SEO
When we discuss 4xx errors with an SEO eye, we mostly talk about 404 errors and SEO. Your Google Search console even has an audit function for 404s.
But what is the problem with having 4XX errors on your website?
In short, 4xx errors can cause:
- Poor UX, which can lead to high bounce rates and low user dwell time
- Getting URLs dropped from the SERPs, after they’ve been unavailable several times
- Crawlability issues
Identifying HTTP 4XX Error Response Codes (List)
In this section, we’ll dive into some of the most common 4XX errors. To make this guide especially useful for technical SEOs, we’ll only cover 4XX error responses that will affect:
- Your users’ experience
- How your website is crawled
We’ll cover:
- 400 Bad Request
- 401 Unauthorized
- 403 Forbidden
- 404 Not Found
- 405 Method Not Allowed
- 406 Not Acceptable
- 407 Proxy Authentication Error
- 408 Request Timeout
- 410 Gone
- 411 Length Required
- 413 Request Entity Too Large
- 414 Request-URI Too Long
- 416 Requested Range Not Satisfiable
- 429 Too Many Requests
- 451 Unavailable For Legal Reasons
Let’s dive into each one.
400 Bad Request
A 400 Bad Request error is a type of 4XX error that indicates that the server wasn’t able to understand the request sent by the client.
This type of 4XX error can be caused by a variety of factors, such as:
- An invalid URL
- Incorrect syntax
- An overloaded server
- An incorrect header
In short, 400 errors occur when a request is structured incorrectly or mandatory parameters can’t be found.
401 Unauthorized
A 401 Unauthorized error is an HTTP status code that means the page you’re trying to access cannot be loaded until you have proper authorization. This status code is generated when a user attempts to access a web page without providing the necessary credentials.
The most common cause of a 401 Unauthorized error is an expired or invalid login cookie. In other cases, the server may have a misconfigured authentication mechanism, or the user may be attempting to access a resource that requires a higher level of authorization than they possess.
402 Payment Required
402s are extremely rare. It’s not a standard response used by browsers.
402 HTTP responses are still experimental and under development. But they’re intended to be used for microtransactions and digital payments.
Google’s developer API, for example, uses a 402 error message to signal when a developer goes over their request limit. Other platforms use the 402 error code to tell users when there’s a problem with their payment.
So, when you see a 402, it usually means there’s been a problem with a payment. But as of this writing, there isn’t a standardized use for this error code.
403 Forbidden
A 403 Forbidden error is an HTTP status code indicating that the client doesn’t have permission to access the requested resource. It’s commonly caused by:
- Incorrect permissions settings for the requested file or folder
- Incorrect ownership settings for the requested file or folder
- The client’s IP address being blocked from accessing the server
If you’re seeing this type of 4xx error as a response to legitimate requests, you may want to reach out to a specialist to check your server configuration. But, in some cases, a 403 Forbidden error is exactly what a user should see. If any of your website’s URLs shouldn’t be publically accessible, make sure they aren’t being indexed by Google.
404 Not Found
404 Not Found is probably the most common 4XX error out there.
A 404 Not Found error is an HTTP status code that indicates that the page requested by the user cannot be found. This can happen when:
- A page has been moved or deleted
- The user mistypes a URL
You can prevent users from encountering 404s by:
- Setting redirects when deleting or moving pages
- Keeping your internal links updated
- Adopting simple and readable URL slugs
- Monitoring and fixing broken links
- Regularly checking server logs for 404 errors
- Keeping your sitemap updated
405 Method Not Allowed
A 405 error code means your web server has received and acknowledged the user’s request to access your site, but rejected the specific HTTP method they’re using.
In other words, the user’s browser can’t access the requested page because the web server is configured so that it won’t allow them to perform a specific action for a specific URL.
This 4xx error is particularly common among WordPress sites.
And it’s usually due to:
- The user entering an incorrect URL
- A recent WordPress update
- Conflicts with plugins and themes
- Unexpected changes in your database tables and records
- Unintentional handling instructions in your server configuration
- Errors in your Access.log or WordPress error logs
- Problems with WordPress code or scripts
406 Not Acceptable
406 is one of those rare HTTP response codes. Even though it’s unusual, it’s still possible for a 406 to become an SEO problem on your site. If browsers spoke plain English, a 406 would say something like this:
“Howdy, I’m a browser. I tried to display this web page, but one of these two problems occurred:
- The website server sent me an incorrect file format
- The website server violates security settings or requirements”
In essence, there was a miscommunication between the browser and the server. The browser couldn’t read or verify your data because it didn’t meet some requirements.
The most common cause is that the server didn’t match the browser’s “Accept” header. These headers come in many types:
- Accept-ranges – the server restricted the response because of the size of the file
- Accept-encoding – some compression methods and formats were not accepted
- Accept-charset – The character encodings used were not suitable for form submission
- Accept-language – The natural language and locale are not available
- MIME-type violation – The server couldn’t provide the requested MIME type (JPEG images, specific video formats, plain text)
407 Proxy Authentication Required
The 407 ‘Proxy Authentication Required’ HTTP response code indicates that the server can’t complete the request because the client doesn’t have the right credentials for a proxy server to intercept it.
407s are different from 401 errors because the server doesn’t report a direct authentication error, but instead says the client needs to authenticate with a proxy server, which must send a special Proxy-Authenticate header.
The most common causes of a 407 error code are:
- Inputting an incorrect URL
- Issues on your platform, maybe due to modifications to the underlying extensions or buddy PHP code
- Errors in your CMS, extensions, or modules due to updates
- Database changes
- Problems with your server logs or/and applications
408 Request Timeout
A 408 Request Timeout is an HTTP response code that indicates that the server didn’t receive a complete request from the client within a certain period. It’s usually caused by:
- A slow server response
- An overloaded server
- A poor connection between the server and the client
410 Gone
A 410 Gone error code is an HTTP status code that indicates to the user that the requested resource has been permanently removed from the server. This code is often used for pages that have been moved, deleted, or deliberately taken offline.
Causes of a 410 Gone error code can include:
- The intentional removal of a page
- The accidental deletion of a page
- The expiration of a page due to a lack of maintenance
At this point, you may be wondering: What’s the difference between a 404 error and a 410 error?
As Google’s Matt Cutts explained in 2014, “404 means page not found, 410 typically means gone, as in the page is not found and we do not expect it to come back (…) So 410 has a little more of a connotation that the page is permanently gone.”
411 Length Required
A 411 Length Required error code is an HTTP status code indicating that the server needs requests to arrive with a specific Content-Length header. This error is usually caused by a misconfigured server, and it can significantly impact a website’s performance.
413 Request Entity Too Large
A 413 Request Entity Too Large error code indicates the server is refusing to process a request because it exceeds the maximum size the server is configured to accept.
For example, a user may find a 431 error when submitting a very heavy attachment to a form. It’s extremely reasonable to set a maximum file attachment size on your forms. And we also suggest you add a bit of copy explaining what the maximum size is.
This error won’t affect your SEO directly. But it can surely be frustrating for your users.
414 Request-URI Too Long
A 414 Request-URI Too Long error code is an HTTP status code returned by a web server when a URL is too long for it to process. This error occurs when a URL exceeds the server’s maximum allowed length, which is typically between 2048 and 8192 characters. This error is most commonly caused by URLs that are excessively parametrized.
You can prevent 414 Request-URI Too Long errors by reducing the number of parameters you pass in a URL, as well as by making sure that they’re encoded correctly.
416 Requested Range Not Satisfiable
A 416 Requested Range Not Satisfiable error code indicates that the server is unable to deliver the requested range of data.
This error can be caused by a misconfigured server or by the wrong client request. In some cases, a server can be configured to return this error when a client requests a range of data that is larger than the total amount of data available.
When faced with this error, the server will abort the current process and load the page again.
429 Too Many Requests
A 429 Too Many Requests error code is an HTTP status code that indicates that the client has sent too many requests to the server within a short period. This is usually caused by a sudden burst of requests from the same user or IP address, or from bots and crawlers that are crawling a website too frequently.
You can prevent 429 Too Many Requests errors through rate-limiting techniques. This involves setting a maximum number of requests per hour and rejecting any requests that exceed that limit. Additionally, if a bot is crawling your website too frequently, you can restrict its access to your platform through your robots.txt file.
451 Unavailable For Legal Reasons
Error 451 (numbered after Ray Bradbury’s novel, Fahrenheit 451) appears when the server refuses to provide the desired resource for legal reasons. It means that your Internet Service Provider (ISP) has blocked the site at the network level.
Put Your Technical SEO on Autopilot
In this post, we dove into how your site’s SEO performance can be negatively affected by 4xx errors. We also covered the most common 4xx errors, what causes them, and how to fix them.
Keeping an eye on your code can be difficult and time-consuming. Fortunately, SEORadar has you covered.
SEORadar constantly monitors your website and checks for technical SEO issues that may affect your ranking.
Aside from keeping an eye on hundreds of HTML elements, SEORadar automatically alerts you of new 4xx errors on your platform. Plus, you can customize alerts based on your workflow and priorities.
Don’t let technical errors jeopardize your SEO. Start a free trial or schedule a demo today.