HTTP status codes and what they mean.
The codes a server sends before a page: success, redirects, client errors and server errors, in plain language.
Five classes, one first digit.
Every HTTP response starts with a three-digit status code. The first digit gives the class: 1xx is informational, 2xx means success, 3xx means the client should look elsewhere, 4xx means the request was wrong, and 5xx means the server failed.
This list covers the codes you will meet most often when working with links, redirects and websites. To see the status of a real URL, use the HTTP status checker.
Informational
| Code | Name | What it means |
|---|---|---|
| 100 | Continue | The first part of the request was received; the client can send the rest. |
| 101 | Switching Protocols | The server agrees to switch protocol, for example to WebSocket. |
| 103 | Early Hints | The server sends hints, such as resources to preload, before the final response. |
Success
| Code | Name | What it means |
|---|---|---|
| 200 | OK | The request succeeded and the response contains the page or data. |
| 201 | Created | The request created a new resource. |
| 202 | Accepted | The request was accepted for processing, which hasn't finished. |
| 204 | No Content | The request succeeded and there is nothing to return. |
| 206 | Partial Content | Only the requested part of the resource was sent, as for a video range. |
Redirection
| Code | Name | What it means |
|---|---|---|
| 301 | Moved Permanently | The URL has a new permanent address. Search engines switch to it. |
| 302 | Found | The URL is temporarily somewhere else. The original stays in use. |
| 303 | See Other | Get the result from another URL, always with a GET. Used after form submissions. |
| 304 | Not Modified | The cached copy is still valid, so no body is sent. |
| 307 | Temporary Redirect | Temporary redirect that repeats the same method and body. |
| 308 | Permanent Redirect | Permanent redirect that repeats the same method and body. |
Client errors
| Code | Name | What it means |
|---|---|---|
| 400 | Bad Request | The server couldn't understand the request. |
| 401 | Unauthorized | Authentication is required and missing or invalid. |
| 403 | Forbidden | The server understood the request and refuses it. |
| 404 | Not Found | Nothing exists at this address. |
| 405 | Method Not Allowed | The URL doesn't accept this HTTP method. |
| 408 | Request Timeout | The server gave up waiting for the request. |
| 410 | Gone | The page was removed on purpose and won't come back. |
| 429 | Too Many Requests | The sender made too many requests and is being rate limited. |
Server errors
| Code | Name | What it means |
|---|---|---|
| 500 | Internal Server Error | The server failed while handling a valid request. |
| 501 | Not Implemented | The server doesn't support the requested feature. |
| 502 | Bad Gateway | A server in the chain got an invalid response from the next one. |
| 503 | Service Unavailable | The server is overloaded or down for maintenance. |
| 504 | Gateway Timeout | A server in the chain didn't get a response in time. |
See the real status of your links.
Check up to ten URLs at once, with every redirect followed.
Common questions
What is the difference between 301 and 302? +
301 is permanent, so search engines switch to the new URL. 302 is temporary, so the original stays in use.
What is the difference between 404 and 410? +
404 means the page wasn't found and may return. 410 says it was removed on purpose and is gone for good.
What does a 5xx error mean for visitors? +
The problem is on the server, not with their request. They can try again later, and the site owner needs to fix it.
How do I see the status code of a URL? +
Paste it into the HTTP status checker, which shows the code of the URL and of the page it redirects to.