Home/Network Tools/HTTP Status Codes

HTTP Status Codes

Complete reference guide for all HTTP status codes

1xx Informational

100

Continue

The server has received the request headers and the client should proceed to send the request body.

101

Switching Protocols

The requester has asked the server to switch protocols and the server has agreed to do so.

2xx Success

200

OK

The request has succeeded. The meaning depends on the HTTP method used.

201

Created

The request has been fulfilled and resulted in a new resource being created.

202

Accepted

The request has been accepted for processing, but the processing has not been completed.

204

No Content

The server successfully processed the request, but is not returning any content.

206

Partial Content

The server is delivering only part of the resource due to a range header sent by the client.

3xx Redirection

301

Moved Permanently

The URL of the requested resource has been changed permanently. The new URL is given in the response.

302

Found

The URI of requested resource has been changed temporarily. New changes in the URI might be made in the future.

304

Not Modified

Indicates that the resource has not been modified since the version specified by the request headers.

307

Temporary Redirect

The server sends this response to direct the client to get the requested resource at another URI with same method.

308

Permanent Redirect

The resource is now permanently located at another URI, specified by the Location: HTTP Response header.

4xx Client Errors

400

Bad Request

The server cannot or will not process the request due to an apparent client error.

401

Unauthorized

Authentication is required and has failed or has not yet been provided.

403

Forbidden

The request was valid, but the server is refusing action. The user might not have the necessary permissions.

404

Not Found

The requested resource could not be found but may be available in the future.

405

Method Not Allowed

A request method is not supported for the requested resource.

408

Request Timeout

The server timed out waiting for the request.

409

Conflict

The request could not be processed because of conflict in the current state of the resource.

410

Gone

The resource requested is no longer available and will not be available again.

413

Payload Too Large

The request is larger than the server is willing or able to process.

422

Unprocessable Entity

The request was well-formed but was unable to be followed due to semantic errors.

429

Too Many Requests

The user has sent too many requests in a given amount of time (rate limiting).

5xx Server Errors

500

Internal Server Error

A generic error message when an unexpected condition was encountered on the server.

501

Not Implemented

The server does not recognize the request method, or it lacks the ability to fulfill the request.

502

Bad Gateway

The server was acting as a gateway or proxy and received an invalid response from the upstream server.

503

Service Unavailable

The server is currently unavailable (overloaded or down for maintenance).

504

Gateway Timeout

The server was acting as a gateway or proxy and did not receive a timely response from the upstream server.

About HTTP Status Codes

HTTP Status Codes is a free reference tool that provides the complete list of HTTP status codes with descriptions, explanations, and practical use cases. Search or browse any status code — from 100 Continue to 511 Network Authentication Required — and understand exactly what it means, when it is used, and what to do when you encounter it.

HTTP (HyperText Transfer Protocol) status codes are three-digit numbers returned by web servers in response to every HTTP request. They communicate whether a request succeeded, failed, or requires further action. Understanding them is fundamental to web development, API integration, SEO, and debugging. Every web developer, DevOps engineer, and SEO professional encounters status codes daily.

Status codes are organised into five classes by their first digit. 1xx (Informational) codes indicate the request was received and processing is continuing — rarely seen in practice. 2xx (Success) codes indicate the request was successfully received, understood, and accepted — 200 OK is the most common. 3xx (Redirection) codes indicate the client must take additional action to complete the request — 301 Moved Permanently and 302 Found are essential for SEO redirects. 4xx (Client Errors) indicate the request contains an error from the client side — 404 Not Found and 403 Forbidden are the most familiar. 5xx (Server Errors) indicate the server failed to fulfil a valid request — 500 Internal Server Error and 503 Service Unavailable indicate server-side problems.

For SEO, the distinction between redirect types is critical. A 301 redirect (permanent) passes full link equity (PageRank) to the destination URL and tells Google to update its index to the new URL. A 302 redirect (temporary) preserves link equity at the original URL and tells Google the original URL will return. Using 302 when 301 is intended is a common mistake that prevents domain authority from consolidating on the new URL after a migration.

How to Use HTTP Status Codes

  1. 1Search for a specific status code number or keyword (e.g. "404" or "redirect")
  2. 2Browse by category (2xx, 3xx, 4xx, 5xx)
  3. 3Click any code for a full description, when it is used, and what action to take

Frequently Asked Questions

A 301 is a permanent redirect — the resource has moved permanently. Browsers and search engines update their records to the new URL. Link equity passes to the new URL. A 302 is temporary — the resource is temporarily at the new location but may return. Search engines keep the original URL indexed and link equity stays on the original.

A 500 error indicates something went wrong on the server — a PHP or Python exception, a database connection failure, a misconfigured server, or exhausted server resources. The client's request was valid; the server failed to process it. Check server error logs for the specific cause.

401 Unauthorised means the request requires authentication — the client has not provided credentials (or provided invalid ones) and can try again with correct credentials. 403 Forbidden means the server understood the request but refuses to authorise it — even with valid credentials, this user or IP is not allowed access.

429 Too Many Requests is a rate limiting response — the client has sent too many requests in a given time period. The server may include a Retry-After header indicating when to try again. Implement exponential backoff in API clients to handle 429 responses gracefully.

You might also like