Kristina Green
Jul 19, 2017 | 7 min read

HTTP status codes are allowing the browser and the server talk to each other. If we want to understand their language, we need to take a few lessons in hypertext transfer protocol. Read our comprehensive guide to understand what are the status codes and their impact on SEO.
All the response status codes are grouped into 5 classes: informational responses, successful responses, redirects, client errors, and server errors.


100. Indicates that everything so far is ok, the server has received and is processing the request, but no response is available yet.
200. Indicates that the request was received, understood, accepted and processed successfully.
300. Indicates that the requested content has been temporarily moved to another URL.
400. Indicates that there are some problems with your request.
500. Indicates that you are requesting a specific resource and it is found, but the server can’t give you an access to it.


infographics server codes

300 MULTIPLE CHOICES

When does it occur?

For example, when the visitor googles “video” search query and land in the site with a lot of different categories and models of electronic appliances. In such a case the server automatically provides a choice of pages with video cameras and video players.

301 MOVED PERMANENTLY

Indicates that an URL has been moved to a new location and passes the new location over to the client.

When does it occur?

The most “fresh” example is the switching from HTTP to HTTPS. In this case, SEO specialists prefer this particular code, because it passes almost all the link juice. Previously, 301 redirects resulted in around a 15% loss of PageRank. But trying to promote a migration to a secure connection protocol, Google had changed the rules and now 301 (as well as other 3xx redirects) don’t lose PageRank at all.

Gray area:

#1 Google repeatedly stated about the irrelevance of Page Rank (PR) as a ranking factor. But not everyone (including us) fully believe in it. In any case, PR is among the hundreds of Google ranking factors. If you 301 redirect a page to an exact copy of that page, and the only thing that changes is the URL, then you may expect no traffic loss. But each additional change might increase the risk.

#2 The 301 was initially invented to redirect www URLs to non-www. But SEO-pros find more creative ways to use it with the maximum benefit.

#3 There are some limitations. Google doesn’t index beyond the 4th redirect, moreover each next redirect results in loss of ranking weight. Here’s our lifehack: set direct redirects (instead of 1 -> 2 -> 3, do 1 -> 3).

302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)

Unlike the permanent 301 redirect, this one is temporary. It indicates that the page was found, but so far it has been temporarily moved to a new location.

When does it occur?

Usually, it’s confused with 301. After Google equated all 3xx redirects and announced that they don’t lose the PR anymore, the situation has worsened. In fact, 302 redirect means that you will use the same URL again. This is exactly what you’re saying to the search engine, and it doesn’t pass the traffic value, page authority, and PR from the old to the new page.

Gray area:

#1 Despite the fact that Google “equated” 3xx redirects in terms of saving PageRank, their identity is not always confirmed in practice. It’s worth remembering that earlier 302 passed PageRank, but only after an impressive amount of time. However, 301 redirect passes PR almost instantaneously.
#2 302 is a web standard, and if Google handles it in his own way, it doesn’t mean that other search engines do it in the exact same manner.

304 Not Modified

The server indicates that a page has not changed since the last visit.

When does it occur?

When you want to speed up the indexing of the pages. After receiving this answer, the crawler will not load the page, which means it will be able to index more pages of the site.

Gray area:

Every SEO pro waits for the 200 OK response. It means that the request has succeeded. But 304 has the same meaning. In short, the new pages and the first visit should receive 200 code, and all others – 304.

307 Moved Temporarily (HTTP 1.1 Only)

This code intends to replace 302 since the latter doesn’t give an accurate idea of whether the URL will be used again. It says that the page is only temporarily moved to another location.

Gray area:

Some clients use earlier protocols and don’t understand the status 307. Therefore, add to the request a hypertext note with a link to a new URL so the user can see where to go.

403: Forbidden

It indicates that the user doesn’t have a permission to access the page.

When does it occur?

This can happen for several reasons, one of them if the user is logged in but don’t have the required permissions to access the resource. For example, the author of this article sees it every time when she tries to login as an admin of the SE Ranking site, using the password and the login of her personal account.

An error may occur if the index file for the main page is incorrect. It should be called “index” and have *.shtml, *.html, *.htm, *.phtml or *.php extensions.

Gray area:

When you switch to https, 403 error may occur if the DNS cache has not yet been updated. Better wait, but if it’s a matter of life or death, follow the instruction on the web to clear your DNS immediately.

404 Not Found

The most “favorite” error in SEO. It indicates that the server has not found anything matching the specified URL.

When does it occur?

Sometimes you try to visit a webpage that doesn’t exist, or it has been removed or reconstructed, or its URL has been changed. In those (and other) cases you get the 404 error message. The 404 page isn’t indexed and doesn’t pass any weight. Therefore, some specialists use a “soft 404” replacing a 404 page with a standard 200 response. But in this case, a lot of duplicate pages can appear in the index.
If your CMS did not generate it yet, you can customize the 404 page yourself:
Via htaccess: the simplest way to set a 404 error page is by directly setting a 404 error message in the .htaccess file itself:
ErrorDocument 404 “<H1>Page not found</H1>”

Via PHP: use the header function.

Each 404 message tells the search engine that something is wrong with your site. This is a bad signal for them and might results in the dropped rankings. Therefore, monitor 404 errors using Google Search Console or tools like On-page SEO Audit. For these pages, it is better to set a 410 response code.

Gray area:

Earlier the 404 page looked like a bunch of numbers on the screen. Now everything has changed, and the 404 page has become more creative. But don’t forget that the user came with a specific request, and our task is to solve it not only to entertain. Therefore, make sure to optimize the 404 page:

  1. Apologize for the error.
  2. Help the user find what he wanted: add links to the main page and top categories.
  3. Add a contact form and support contact information.
    This will bear a fruit, as TechCrunch increased its search engine traffic by 9% in a matter of 30 days just because of its 404 error page optimization.

410 Gone

It indicates that the requested resource is no longer available in the server and no forwarding address is known.

When does it occur?

410 can be preferable for pages with low trust and without links, or those that are permanently deleted. For example, you stopped offering a particular service, and you don’t want to draw in irrelevant traffic that searches for that service.

Google treats 410 errors differently than 404s. By using a temporary custom 410 page, you give the search engine robots the more accurate status and knowledge that the old link should be removed from their crawl index which can stop the unnecessary traffic.

Gray area:

Think twice before removing a page. You can always put a redirect to a similar one, and get at least some of the traffic. If you can’t avoid removal remember about the side effects. After the page is completely removed a few more URLs can disappear as well, which means they need to be processed also. Here is an example of what happened when the Google Panda launched. It resulted in a massive removal of bad content. If you remove all blog posts with a specific tag – a page which aggregates these posts is also removed and redirected to the 404 page. And what’s worse? More pages with 400 error, more chances to lose your rankings and traffic even faster than from Google Panda sanctions.

451: Unavailable for Legal Reasons

It indicates that the user landed on a resource which cannot be served for the legal reasons, – for example, a web page censored by the government.

When does it occur?

Error 451 would let people know that a court ordered the site to be blocked. This might be because it contains restricted political content or carries copyrighted material. It’s similar to the 403 Forbidden but the latter only means that the site wants to deny the access.

Gray area:

To configure a normal 451 page you can copy 404.php, rename it and change the content.

503 Service Unavailable

It indicates that the website server is simply not available right now.

When does it occur?

Most of the time, a 503 error occurs because the server is too busy or it undergoes a maintenance.

Other reasons:
– The site is undergoing some technical makeovers.
– DDOS-attack on the site.
– Using a large amount of scripts and other elements from external resources like widgets, pictures, etc.
– Slow queries to the database.
– An excessive volume of requests to the site by the search robots, users or parser services.

In a perfect world, the 503 page contains the message with the exact time when the visitor should come back.

In PHP the code for a 503 would be like this:

1
$protocol = &quot;HTTP/1.0&quot;;

2
if ( &quot;HTTP/1.1&quot; == $_SERVER[&quot;SERVER_PROTOCOL&quot;] )

3
$protocol = &quot;HTTP/1.1&quot;;

4
header( &quot;$protocol 503 Service Unavailable&quot;, true, 503 );

5
header( &quot;Retry-After: 3600&quot; );

Gray area:

500 and 503 errors don’t allow the search engines to index the site. In addition, it is a sign of bad maintenance because the users don’t find what they came for. Therefore, it’s important that such issues are solved as quickly as possible otherwise it will affect your overall rankings.

How to check the server response

You can use the following services to check the server responses:

  1. Live HTTP Headers for Chrome (allows you to quickly see the HTTP header information for the current URL).
  2. SE Ranking On-page SEO Audit.
  3. Screaming Frog.
  4. Google Search Console. Go to the Crawl> Crawl Error report to find the URL errors.
Share article
2 comments
  1. A digital marketers should know the error codes it will help them to troubleshoot the problems with ease. SEO screaming frog is really helpful tool for checking the status of pages, thanks for sharing such great information.

More Articles
SEO Insights
Unpacking SEO for the Google Local Pack
Nov 20, 2018 9 min read

The Local Pack appears in almost 30 percent of all the first page SERPs, making it one of the most frequently displayed SERP feature. Given the presence of the Local Finder on the first SERP, we tend to skip the organic results since the block gives us all the info we need right away. This post explains what the Local 3-Pack is and how to get ranked in it.

Stasia Avetysian
SEO Insights
All you need to know about the new SE Ranking API
Nov 08, 2018 5 min read

We've launched a new version of our API, and it’s ready for you to test it out. Actually, this is the fourth and currently the most updated version of our API. Find out what is really cool about this version in this article and set up the API customization process with ease.

Julia Torchynska
SEO Insights
GDPR: The whats and how-tos
Nov 07, 2018 6 min read

In May of 2018, the GDPR, or General Data Protection Regulation was put into action in the European Union. This regulation has tightened Europe's already strict laws about what businesses can and can’t do with people’s data. In return, it gives people more control over how their information is collected and used as companies have to make sure that all of their actions with it are justified.

Julia Karnaukh