As an SEO professional, you know that crawling and indexing is imperative to SEO success.
You should also know that the status codes your pages return to search engines can hurt or help your rankings, especially when things move around as they tend to do on websites.
What we’ve collected here are the main HTTP status codes that everyday SEOs (and webmasters and website owners) need to know so that you don’t hurt your SEO.
Table of Contents
200 – Ok
The 200 status code is the main status code that most URLs on the web return. It tells the browser that a request was received, broken down, and accepted and that the page should be loaded.
A page returning a 200 status code does not mean that there are no errors on the page, simply that the resource was found and can be loaded at the URL at which it was requested.
301 – Permanently Moved
A 301 redirect means that the resource has “permanently moved” and tells the browser to, you guessed it, redirect the user (and search bots) to the new resource which should then return a 200 status code and load at the new URL.
301 redirects are important to SEO because they pass link equity (in Google’s terms, “pagerank”) to the new page. Search engines also drop the old URL from their search index and replace it with the new URL.
The most common issue with 301 status codes is when a page redirects to another page that then redirects to another page. This is called a “redirect chain” and reduces the link equity passed to the final location.
When a redirect chain occurs, it can take longer for the old URL to drop from the index and be replaced by the new. Redirect chains are silent SEO killers.
302 – Temporarily Moved
A 302 redirect also tells a browser “this resource has moved”, but there is an additional qualifier. This status code is really saying “this resource has moved temporarily and is probably coming back.”
302 redirects matter to SEO because they do not pass link equity/PageRank (though Googlers have said that if a 302 redirect is left in place long enough then it may be treated as a permanent redirect).
SEOs the world over will debate if a 302 redirect passes link equity, but innumerable tests have proven that when 302s are changed to 301s then positive ranking changes occur.
307 – Temporarily Moved
Now here’s a fun fringe case for you. A 307 redirect, just like a 302 redirect, means “this resource has temporarily moved”. It is less commonly used than a 302 redirect, but essentially does the same thing.
So why do both exist?
To put it plainly, 302 came first but is a bit of a “fuzzy” signal. With the advent of HTML 1.1, the 307 was created and is a more precise temporary redirect. It has grown in popularity over the years, but is not as widely used as a 302 redirect.
404 – Gone / Not Found
When you try to access a URL and receive a message that the page doesn’t exist, that probably means it is returning a 404 status code that tells the browser “This resource cannot be found here”.
404s are a common part of the internet and something that happens naturally. But, they can also be SEO killers for reasons including:
- The resource moved somewhere but the old URL was not redirected and therefore the search engine will have a harder time finding the new;
- Pages returning a 404 may have valid external links that are now not helping the site rank.
When a page returns a 404, the search engines will eventually drop it from the index. They do not always do it on the first crawl because a 404 does not mean that the resource is “permanently gone”, just that “it can’t be found right now”. Thus they take a more conservative approach (though some in SEO wish they wouldn’t).
Fixing 404 errors can show big results too.
I remember one time I worked with a site and uncovered literally thousands of valid backlinks pointing to 404 pages. Valuing the links at $300 a piece, I literally found hundreds of millions of dollars worth of backlinks. We redirected those old URLs and traffic increased dramatically.
410 – Permanently Gone
If you want the search engines to drop a page from the search index because it is gone forever, you should use a 410 status code which means “this resource is permanently gone.”
A 410 is a stronger directive than a 404 and much less widely used. These are most commonly used on pages like PPC landing pages and the like that are there for a bit but then gone forever not to be seen again and shouldn’t be indexed or crawled.
500 – Internal Server Error
There are two main server errors that SEOs need to know – the 500 and the 503.
The 500 status code means that there is an unspecified error happening on the server that is not letting the page load, but that’s all it knows.
This often means that the server is still up but there is a code error or something similar (like permissions or PHP timeout) that won’t let the page load, but nothing specific is sent.
If this happens on your site, it’s best to ask your developer.
503 – Service Unavailable
Like a 500 error, a 503 refers to the server. Unlike a 500, the 503 status code tells you that the server itself is unavailable and it probably isn’t a code error or similar.
The most common reasons why a server may go down are:
- Overloaded with traffic (some website builders still sell plans based on amount of traffic and a site can go down if a post becomes very popular)
- Server maintenance (hopefully scheduled) which means the server will be back back once that is done.
- The server has been targeted by a Distributed Denial Of Service (DDOS) attack and can’t stay up under all the hits to the server.
Looking for an SEO company to help you with your site?