HTTP Status Code 404: What Is the 404 "Not Found" Error?
By Tommy Griffith • Last Updated: February 24, 2020
What are HTTP status codes, why do they happen, and how do you deal with them? Here's a simple guide to HTTP status code 404 - the "not found" error.
HTTP Status Code 404: The “Not Found” Error
HTTP Status Code 404: The “Not Found” Error
This is a very common error. What happens here is that the URL being requested was simply not found.
It’s not true that all 404s are bad—this is actually a misconception.
It’s fine to serve a 404 if you simply don’t have that page, or if a user misspells a URL (you don’t have to redirect every conceivable URL). So, in many situations, it’s totally fine to serve a 404—Google won’t hurt you in this kind of situation.
You can actually solve this by having a great 404 page – something like “Sorry, the page you requested was not found. Here are some of the most popular links”.
However, if you have authoritative pages that are 404s, you should absolutely replace them. So, for example, if you have a URL that used to have a ton of links (or still has them), and now it’s serving a 404, you want to do a 301 permanent redirect to the most relevant page you have on your site. You don’t want to leave that as it is.
If you’ve ever gotten the dreaded status code 404 error, and you have no idea what it is, then this guide is designed for you. It’ll quickly explain what a status code 404 error is, why it happens, and the best way to fix it.
BONUS: If you want to check your website’s response codes AND get a comprehensive SEO audit, you can use the tool below (it’s free):
Free SEO Audit Tool
The HTTP Protocol
Let’s talk about how the HTTP protocol works.
At its very foundation, the Internet is made up of two core things: clients and servers.
Any time you click on your browser, you are accessing the Internet through a web client. It may be Chrome, Firefox, Safari or Internet Explorer.
When you visit a website, you are making a request to a web server.
Facebook.com, ClickMinded.com, MarthaStewart.com/1525880/marthas-chocolate-chip-cookies, all of these sites have their own home address. It’s called an IP address.
Your home address might be 123 Main Street, New York, NY 10001, and Facebook’s address happens to be 18.104.22.168.
Whenever you visit a page on the web, you are requesting a whole bunch of documents from that website’s server. Maybe those documents are HTML, CSS, images, a PDF—whatever it is, the basic relationship stays the same: you (the client), make a request, and the website (the server) responds to that request.
The language you are using to make these requests is called the HTTP protocol. These protocols are really just standards that everyone on the web has agreed to. Just like English, Spanish and Chinese are all languages that have an understood protocol, HTTP is just a bunch of standards and an understood protocol.
There are a number of different web protocols out there – and you might be familiar with some of them:
DNS – Domain Name System
FTP – File Transfer Protocol
HTTP – Hypertext Transfer Protocol
IRC – Internet Relay Chat Protocol
SMTP – Simple Mail Transfer Protocol
SSL – Secure Sockets Layer
HTTP Status Codes
Now that we understand what the HTTP protocol is, let’s talk about HTTP status codes. Status codes let us know whether the HTTP request was a success, a failure, or something in between.
Let’s take a look at the five core status codes:
1xx block: informational requests
2xx block: successful requests
3xx block: redirects
4xx block: client errors
5xx block: server errors
Some status codes are more common than others. For example, when you’re doing digital marketing, you’ll often come across status code 200, status code 301 and status code 404 – but you may never see status code 206 or 307.
Let’s briefly go over each status code block and what they mean.
1xx Status Codes
These are informational requests. The server hasn’t fully completed the request yet and it’s still processing the information. You will not see these codes often. They include:
100 – Continue
101 – Switching protocol
103 – Checkpoints
2xx Status Codes
These are successful requests, which means everything is okay. They include:
200 – OK (you will see this one the most)
201 – Created
202 – Accepted
205 – Reset Content
206 – Partial Content
3xx Status Codes
These are redirects. These are shown when you request an address, but you are sent somewhere else. These can be good or bad. They include:
301 – Moved Permanently
302 – Found
304 – Not Modified
305 – Use Proxy
307 – Temporary Redirect
4xx Status Codes
These are client errors. That means something went wrong with the request (client/user) and not the response (website/server). They include:
400 – Bad Request
401 – Unauthorized
403 – Forbidden
404 – Not Found
408 – Request Timeout
410 – Gone
429 – Too Many Requests
5xx Status Codes
These are server errors. That means something went wrong with the response (website/server) and not the request (client/user). They include:
500 – Internal Server Error
502 – Bad Gateway
503 – Service Unavailable
504 – Gateway Timeout
More On HTTP Status Codes
Looking for more on a particular status code? We have a series of short guides on every HTTP response, so you can optimize your digital marketing strategy. Grab them here:
SEO Masterclass: Learn the EXACT SEO strategy used at PayPal and Airbnb.
8,702 companies use ClickMinded to massively increase traffic and sales from search engines.
Massively grow any business with digital marketing SOPs.
Thank you for being a part of the ClickMinded family!
Tommy Griffith has been doing search engine optimization for almost 10 years. He was previously managing SEO at PayPal and Airbnb.
He feels weird writing about himself in the third person, but admits that it sounds slightly more epic.