HTTP Response Codes

Hypertext Transfer Protocol (HTTP) response codes, also known as status codes, are created every time a person visits a webpage. Browsers and search bots use these codes to process requests and get more information, which allows webpages to be accessible.

Common HTTP Response Codes Cheat Sheet

Two entities are involved with delivering and receiving HTTP response codes. The web client (browser) and the server. When you use a web client to visit a webpage you’re making a request with a web server. The request to view the page or complete an action requires documentation provided by the server, and the server responds accordingly.

On the backend, the request is made using HTTP protocol. It’s essentially the universal language of the Internet. HTTP response codes let you know how the server responded – success, error, failure, etc. 

Currently, there are 66 assigned HTTP response codes. Some of them are very common while others are rarely used.

All of the HTTP response codes fall into one of five categories:

      100s – Informational Responses

      200s – Successful Responses

      300s – Redirects

      400s – Client Errors

      500s – Server Errors

Trying to keep all of the codes in order can be difficult. That’s why we created this cheat sheet that explains the most common codes.

200 – OK

Indicates the request was successful and the web page was delivered to search bots and users, but users won’t actually see the code. 

301 – Moved Permanently

This code is for pages that have been moved permanently. It seamlessly redirects users and search bots to the new address of the requested content. For organic search purposes, 301 is a better option than 302 (Moved Temporarily).

400 – Bad Request

This means that the server doesn’t understand the request. It’s usually due to syntax errors.

401 – Unauthorized

A 401 code is generated when the server doesn’t recognize the client and isn’t granting the request. To solve the problem you may need to login on the client side. It’s a common code for membership-based applications and websites. 

403 – Forbidden

Documents that aren’t accessible or are access-protected come up as a code 403. When this happens your client doesn’t have the authority to access the page and the server is denying the request. You’ll be given a 403 notice letting you know.

404 – Not Found

You’ve probably seen a 404 page at some point. This error code shows up when the page/file/resource is not found by the server and is no longer available. The documents either no longer exist at that web address or they were moved without putting a redirect in place. 

410 – Gone

This response is very similar to the 404 code. However, this code makes it clear the webpage is gone from the server and is nowhere to be found with a redirect. The 410 code sends a direct message to search bots that the page no longer exists and is gone for good so there’s no reason to look for it again.

500 – Internal Server Error

When there’s an unexpected error in the server that prevents the request from going through a 500 HTTP response code occurs. It’s often referred to as a catch-all code because the error can stem from so many issues. An internal error report is generated with this code so that repairs can be made to the server software. 

502 – Bad Gateway

Sometimes the server acts as a gateway to process a response. When there is an invalid response from the upstream server that was accessed to fulfill the request a 502 code is generated. 

503 – Service Unavailable

This means the server that is responding to the request is overloaded and can’t respond. The server may provide a response with information as to when the server will be available and the request can be handled. This is a temporary problem that could be resolved by reloading the page or trying to load the page later.

504 – Gateway Timeout

A gateway timeout is a network problem that can occur when there are multiple servers that aren’t communicating properly. It happens because a background server isn’t connecting with the server you’re connected to and data can’t be received in a timely manner.

How does your product stack up to the competition?

Get the 2019 Product Benchmarks report to learn more.

Download Report

Complete List of HTTP Response Codes

Informational Responses

100 – Continue

101 – Switching Protocols

102 – Processing

103 – Early Hints


Successful Responses

200 – OK

201 – Created

202 – Accepted

203 – Non-Authoritative Information

204 – No Content

205 – Reset Content

206 – Partial Content

207 – Multi-Status

208 – Already Reported

226 – IM Used



300 – Multiple Choices

301 – Moved Permanently

302 – Found

303 – See Other

304 – Not Modified

305 – Use Proxy

306 – Unused

307 – Temporary Redirect

308 – Permanent Redirect


Client Errors

400 – Bad Requests

401 – Unathorized

402 – Payment Required

403 – Forbidden

404 – Not Found

405 – Method Not Allowed

406 – Not Acceptable

407 – Proxy Authentication Required

408 – Request Timeout

409 – Conflict

410 – Gone

411 – Length Required

412 – Precondition Failed

413 – Payload Too Large

414 – URI Too Long

415 – Unsupported Media Type

416 – Range Not Satisfiable

417 – Expectation Failed

421 – Misdirected Request

422 – Unprocessable Entity 

423 – Locked

424 – Failed Dependency 

425 – Too Early

426 – Upgrade Required

428 – Precondition Required

429 – Too Many Requests

431 – Request Header Fields Too Large

444 – Connection Closed Without Response

451 – Unavailable for Legal Reasons

499 – Client Closed Request


Server Errors

500 – Internal Server Error

501 – Not Implemented

502 – Bad Gateway

503 – Service Unavailable

504 – Gateway Timeout

505 – HTTP Version Not Supported

506 – Variant Also Negotiates

507 – Insufficient Storage

508 – Loop Detected

510 – Not Extended

511 – Network Authentication Required

598 – Network Read Timeout Error

599 – Network Connect Timeout Error

Learn how to pick the metrics that matter for your business

Download the free Guide to Product Metrics today.

Get the Guide