Type above and press Enter to search. Press Esc to cancel.

Home Learn Site Security and Management A Guide to HTTP Status Codes

A Guide to HTTP Status Codes

Key takeaways:

  • HTTP status codes show how a server responds to a request, helping you understand whether a page is working, redirected, missing, or experiencing an error.
  • These codes are grouped into categories (1xx to 5xx), each signaling a different type of response that affects how users, browsers, and search engines interact with your site.
  • Monitoring and fixing problematic HTTP status codes can improve site usability, crawlability, and SEO performance by ensuring pages load and index correctly.

Ever accessed a page only to encounter a 404 Not Found or a 500 Internal Server Error? It’s frustrating and often feels like a dead end.

These error messages are HTTP status codes that reveal what’s happening behind the scenes of your website. They may be a pain to run into, but they play a key role in how servers communicate with browsers and search engines, signaling whether a page is working, missing, or broken.

In this guide, we’ll break down HTTP status codes and what they mean for your site, especially when it comes to SEO and how LLMs access your content. You’ll also learn how different code classes from 1xx to 5xx work and how to check HTTP status codes on your website.

What are HTTP status codes?

HTTP status codes are three-digit messages that explain how a web server responds to a client’s request. When a user agent, such as a browser, search engine crawler, or AI crawler, requests a page, image, file, or other resource, the server returns a response code indicating what happened.

In simple terms, an HTTP status code tells you whether the request worked, was redirected, could not be completed, or failed because of an issue. For example, a 200 code indicates that the request was successful, while a 404 code indicates that the page could not be found.

The response may come from the site’s origin server or from another system involved in delivering the page, such as a proxy or gateway. Some requests may also involve multiple status codes, especially when redirects happen before the browser reaches the final response.

HTTP status codes are grouped into five main categories:

  • 1xx Informational responses: Request received and still processing.
  • 2xx Successful responses: Request received, understood, and accepted.
  • 3xx Redirection responses: More action is needed, or a new location is required.
  • 4xx Client error responses: The request has a client-side issue.
  • 5xx Server error responses: The server failed to complete the request.

For website owners, these categories make it easier to understand a page’s status when maintaining your site. They also help identify successful HTTP requests and issues that may affect how users, browsers, search engines, and AI tools access your site.

1xx (Informational)

1xx HTTP status codes are temporary responses indicating that the server has received the request and is still processing it. They usually appear before the final response, so most end users do not see them while browsing a site.

100 Continue

The first part of the request was accepted. The client can keep sending the request body, often after using the Expect request header field to confirm the server is ready.

101 Switching Protocols

A 101 Switching Protocols status code indicates that the server agrees to change the protocol for the connection. It is sent when the client requests a protocol switch, such as moving from HTTP to another supported protocol.

102 Processing

The server has received the request but does not yet have a final status to send. It is most often associated with WebDAV requests.

103 Early Hints

A 103 Early Hints status code lets the browser begin preparing before the final response is ready. As the server prepares the page, it can point the user agent to resources it may need for future requests.

2xx (Success)

2xx HTTP status codes indicate that the server successfully received, understood, and accepted the request. In most cases, these are the codes you want to see, as they indicate that the requested action worked as expected.

Some 2xx responses return content to the browser, while others confirm that the request was completed without showing any visible message. For website owners, these codes can confirm that important pages are reachable and that search engines or AI crawlers can successfully access content.

200 OK

A 200 OK status code indicates successful HTTP requests. It’s the normal final response when the target resource loads correctly.

201 Created

A 201 Created status code means a POST request or similar action successfully created a new target resource. The response usually points to the newly requested resource.

202 Accepted

The server received the request, but processing is not complete. It may be completed later, and future requests may be needed to check the result.

203 Non-Authoritative Information

A 203 Non-Authoritative Information response code means the request succeeded, but a proxy or other system changed some details before sending the response. This often involves modified metadata rather than a problem with the content itself.

204 No Content

The request is completed successfully, but the final response does not include a message body. The browser or app can stay on the same page without loading new visible content.

205 Reset Content

The request is completed, and the user agent should reset form fields or the current document view. It is often used after a user submits information and should clear the input area.

206 Partial Content

The server is sending only part of the requested resource. This partial response usually happens when the client uses a range header, such as when resuming downloads or streaming media.

207 Multi-Status

A 207 Multi-Status response code contains multiple status codes for one overall request. It is commonly used with WebDAV, where the server may need to report a separate resource status for several files or operations.

208 Already Reported

A 208 Already Reported status code is used in WebDAV when a resource status was already included earlier in the same multi-status response. This reported status code helps avoid repeating duplicate information across multiple status codes.

226 IM Used

A 226 IM Used response code means the server response represents the result of one or more instance manipulations. In practice, it is tied to delta encoding, in which the server sends changes rather than the full resource.

3xx (Redirection)

3xx HTTP status codes indicate that the requested page or file is available elsewhere. These codes are common during site migrations, URL updates, and temporary page changes.

300 Multiple Choices

This means that the requested resource has multiple possible responses. It is not a list of multiple status codes; instead, the server offers options, and the user agent or user chooses which version to open.

301 Moved Permanently

The requested URL has a new permanent location. The server provides a forwarding address; browsers or crawlers should use the new URL for future references, as this is a permanent redirect.

302 Found

The target resource resides temporarily at a different URL. Since it is a temporary redirect, the original URL should still be used for subsequent requests unless the server later sends a permanent change.

303 See Other

A 303 See Other status code is a redirect response that tells the client to retrieve another URL with a GET request. It is often used after a POST request so the user can view a separate confirmation page.

304 Not Modified

A 304 Not Modified status code is used for cache validation. It tells the user agent that the requested resource has not changed, so the cached version can be used instead of downloading a new final response.

307 Temporary Redirect

A 307 Temporary Redirect status code redirects the user agent to another URL for now, while keeping the same request method. The original URL should still be used for subsequent requests because the redirect is temporary.

308 Permanent Redirect

The resource has permanently moved to another URL. Like 301, it tells clients to update future references, but it also requires the same request method to be used during the redirect.

4xx (Client Error)

4xx HTTP status codes indicate that the request could not be completed due to a client-side issue. That does not always mean the visitor did something wrong. It can also happen when a link points to a missing page, a browser sends incomplete information, a file is restricted, or a request does not meet the server’s rules.

These errors are more visible to everyday users than 1xx or 2xx responses because they often appear as browser error pages. It’s important for website owners to monitor their sites for 4xx codes, as they can affect user experience, crawlability, and how AI systems access your content.

400 Bad Request

The request failed because the server could not process it. Common causes include malformed request syntax, invalid request message framing, or deceptive request routing.

401 Unauthorized

The request lacks valid authentication credentials. The server usually sends request headers indicating which valid authentication credentials are required before access can continue.

402 Payment Required

This status code is reserved for digital payment systems. It is rarely used in everyday browsing, but it generally indicates that the request failed because payment is required before access can continue.

403 Forbidden

The server refuses to provide the requested page or file. Even with valid authentication credentials, the request may still result in an access denied response.

404 Not Found

The request failed because the requested resource could not be found. The target resource may have been deleted, moved, renamed, or linked incorrectly.

405 Method Not Allowed

The server recognizes the URL but not the request method. For example, the page may allow one HTTP method, such as GET, but reject another.

406 Not Acceptable

The server cannot return content that matches the client’s request headers. It is tied to content negotiation and indicates that no acceptable response format is available.

407 Proxy Authentication Required

A 407 Proxy Authentication Required status code is a proxy status code. It means the client must provide valid authentication credentials to the proxy server before the request can continue.

408 Request Timeout

The server closed the connection because it did not receive a complete request within the allotted time. The server detected that it could not provide a timely response.

409 Conflict

The request failed due to a conflict with the current state of the target resource, such as editing a file that has already changed.

410 Gone

The requested resource has been permanently removed. It also tells clients not to use the old URL for future references.

411 Length Required

The server needs a Content-Length value before it can process the request body. This value is usually sent through request headers.

412 Precondition Failed

The request failed because one or more request header fields evaluated as false. This often happens when a conditional request no longer matches the resource.

413 Content Too Large

The request body exceeds the server’s limit. Older references may call this request entity too large.

414 URI Too Long

The request failed because the request URI exceeds the server’s processing limit. This may occur due to malformed request syntax or excessive query parameters.

415 Unsupported Media Type

The server rejected the request because the request body uses an unsupported Content-Type. This often happens when uploaded files or API data use the wrong format.

416 Range Not Satisfiable

The server cannot return the part of the requested resource specified by the Range header. The requested range may fall outside the file size.

417 Expectation Failed

The request failed because the server could not meet the expectation sent in the Expect request header field.

418 I’m a teapot

This is a humorous status code from an April Fools’ joke. This teapot status code means the request failed because a teapot cannot brew coffee.

421 Misdirected Request

The request failed because it reached an origin server that cannot produce a response for the target resource.

422 Unprocessable Content

The server understood the request body, but could not process the request entity. Unlike malformed request syntax, the format may be correct, but the data has errors.

423 Locked

The request failed because the requested resource is locked. The resource locked response is commonly associated with WebDAV systems.

424 Failed Dependency

The request failed because it depended on another action that also failed. In WebDAV, this often happens after a previous request cannot be completed.

425 Too Early

The server detected a possible request replay risk. It refuses to process the request until it is safe to handle.

426 Upgrade Required

The server requires a protocol upgrade before it can process the request method. It is different from HTTP Version Not Supported, which is a 5xx server error.

428 Precondition Required

The server requires conditional requests before changing the target resource. The needed request header fields evaluated by the server help prevent conflicting updates.

429 Too Many Requests

The client has exceeded a request limit. The server detected too many requests in a set period and may ask the client to try again later.

431 Request Header Fields Too Large

A 431 Request Header Fields Too Large status code means the request headers are too large for the server to process. The issue may involve a single field or several header fields that are too large.

The requested resource is blocked because of a legal demand. It may also appear when content restrictions involve policy or security concerns.

5xx (Server Error)

5xx HTTP status codes mean the server received a valid request but could not complete it. Unlike 4xx errors, which usually point to an issue with the request, 5xx errors point to a problem on the server side.

500 Internal Server Error

A 500 Internal Server Error is a generic error message that means the server encountered an unexpected issue. It may be caused by a broken script, a plugin conflict, a database issue, or an internal configuration error.

501 Not Implemented

The server failed to support the functionality needed to complete the request. This usually happens when the server does not recognize or support the request method.

502 Bad Gateway

A gateway server received an invalid response from an upstream server. This often happens when servers, proxies, or hosting systems fail to communicate properly.

503 Service Unavailable

The server encountered a temporary issue and cannot handle the request at the moment. Common causes include scheduled maintenance, traffic spikes, or server overload.

504 Gateway Timeout

A gateway or proxy server did not receive a timely response from an upstream server. The request may still be valid, but the server took too long to respond.

505 HTTP Version Not Supported

The server does not support the protocol version used in the request. The issue is related to the HTTP version, not necessarily the request method itself.

506 Variant Also Negotiates

A 506 Variant Also Negotiates status code points to a server configuration issue during content negotiation. It may occur when the server creates a circular reference, which can appear as an internal configuration error.

507 Insufficient Storage

The server failed because it does not have enough storage to complete the request. As a result, the request failed even though it may be valid.

508 Loop Detected

The server detected an infinite loop while processing the request. This usually occurs in WebDAV systems and indicates that the request failed before it could be completed.

510 Not Extended

The server response requires additional extensions before the request can succeed. The client may need to include an extension required by the server through the right request headers.

511 Network Authentication Required

The client must authenticate before it can gain network access. This often appears on public Wi-Fi or captive portals that require valid authentication credentials before browsing.

How do HTTP error codes affect SEO?

HTTP status codes affect SEO by indicating whether your pages are accessible, functioning properly, or experiencing issues that prevent them from being indexed.

HTTP status codes are also important for your website’s SEO. In addition to providing insight into the communication between a client and a server, they help search engine crawlers, such as Googlebot, assess the overall health of your website.

These codes also influence how search engines index your pages (add them to search results). For instance, if one of your pages is blocked due to a 403 Forbidden error, crawlers won’t be able to access the page’s content. Because search engines can’t index it, this limits your site’s visibility in search results.

To better understand their impact, here are the most common status codes that significantly affect your SEO:

  • 200 OK
  • 301 Moved Permanently
  • 302 Temporary Redirect
  • 403 Forbidden
  • 404 Not Found
  • 500 Internal Server Error
  • 503 Service Unavailable

200 OK

This is the “all clear” signal from the server. It means that everything worked perfectly, and the requested page is available. From an SEO perspective, a 200 OK code is the ideal status to have because it tells search engines that the page is active and can be indexed.

301 Moved Permanently

This status code indicates that a page has been permanently moved to a new address or URL. It’s like when you’re moving to a new house, and you inform your friends to update their address book.

In SEO, 301 redirects are important because they ensure that the value of the old page gets passed onto the new page by providing the requester with a forwarding address. This helps keep the page ranking in search results.

However, be mindful when using 301 redirects, as redirect chains can lead to delayed crawling and slow down your website. It can also lead to a loss of the link juice or boost that you get from trustworthy backlinks.

For instance, a single redirect can still pass most of a page’s link value. However, each additional redirect in the chain can reduce that value. In some cases, losing around 5% of link equity per redirect means that after multiple redirects, the final page may receive significantly less authority overall. As a result, this can affect your overall SEO performance.

302 Temporary Redirect

A 302 Temporary Redirect is like 301, but it’s used only for temporary redirection. In SEO, this is less helpful than a 301 redirect because it doesn’t pass along the link value. It’s only useful if you need to temporarily redirect traffic without affecting rankings.

403 Forbidden

This response code means the server refuses to let you access the page. This situation isn’t good for SEO because a user agent can’t get to the page, so they can’t index it. If many pages on your site have this error, Google may think your site is broken or untrustworthy.

404 Not Found

A 404 error means that the page you were trying to visit doesn’t exist. Having many of these errors can hurt your site’s SEO rankings because they give a terrible user experience and suggest that your site is unorganized. It’s best to fix these by removing broken links or redirecting to active pages.

500 Internal Server Error

This is a general error that means something went wrong on the server side. There may be problems with your site’s host, or some of its scripts may be broken. In any case, you need to have it fixed as soon as possible because if search engines run into this too often, they’ll have trouble indexing your site, which can hurt your SEO.

503 Service Unavailable

In 503 errors, the server is temporarily unable to process any requests. The problem might be due to maintenance or overloading. This error is less damaging than a 500 error because it suggests the issue is temporary. However, if the issue persists, search engines might consider your site unavailable or unreliable, negatively affecting your SEO performance.

Do HTTP status codes impact LLMs

Yes. HTTP status codes can affect how LLM crawlers and AI systems access your website content. When an AI crawler requests a page, your web server returns a response code that explains whether the requested resource can be accessed, has moved, is blocked, is missing, or is temporarily unavailable.

In this process, the response code acts like an access signal. Before an AI system can understand a page’s content, it first needs to know whether the page is reachable. If the server returns a clear, successful final response, the crawler can proceed to read the page and evaluate its content for possible use in AI-generated answers.

LLM crawlers rely on stable server responses to decide whether they should continue requesting pages, revisit URLs for future requests, or stop because access is restricted. If a page is unavailable, the crawler may not reach the actual content. This limits the system’s ability to understand the page or consider it as a source.

Consistent HTTP responses help AI systems interpret your site more reliably. Working pages should return successful responses, moved pages should point to the correct destination, and unavailable pages should return the proper error. When these signals are clear, AI crawlers are more likely to access your content.

How to check HTTP status codes using tools

Besides your browser’s developer console, you can use other tools to check HTTP status codes. Below are some of the best tools to help you monitor and manage HTTP responses efficiently.

HTTPStatus.io

HTTPStatus.io is a free online tool that allows you to check the HTTP status codes of multiple URLs at once. To use it, go to HTTPStatus.io and enter the URLs you want to check in the input box. Click the “Check Status” button. The tool will display the HTTP status code for each URL along with details like redirect paths and response headers.

Google Search Console

Google Search Console is a free tool that helps you monitor and optimize your site’s SEO performance. It provides insights into indexing issues, including pages returning HTTP errors like 404 (Not Found) or 500 (Internal Server Error).

To check HTTP status codes in Google Search Console:

  • Log in to Google Search Console using your Google account.
  • Select your website property.
  • Go to Pages under the Indexing section.
  • Review the list of pages grouped by their status.
  • Click on a specific error to see affected pages and Google’s explanation.
  • Fix the issue on your site.
  • Return to the report and click Validate Fix to request a recrawl.

Screaming Frog SEO Spider

Screaming Frog SEO Spider is a desktop-based website crawler that analyzes your site’s structure, finding broken links, redirects, and HTTP status codes. It’s widely used by SEO professionals to efficiently audit large websites.

To check your site’s HTTP status using this tool:

  • Download and install the program.
  • Open the tool and enter your website URL in the search bar.
  • Click Start to begin crawling your website.
  • Wait for the crawl to complete.
  • Go to the Response Codes tab to view the results.

You can filter the results to see specific HTTP status codes. Click on any URL to see more details about the response. If needed, you can export the report for further analysis using the Export function.

Ahrefs Site Audit

Ahrefs Site Audit is an SEO tool that crawls your website and detects errors, including HTTP status codes affecting your site’s performance. It provides a detailed health score and recommendations for fixes.

To check error codes using Ahrefs Site Audit:

  • Sign in to your Ahrefs account.
  • Go to Site Audit from the main dashboard.
  • Add your website URL and start a new crawl.
  • Wait for the audit to complete.
  • Open the Internal Pages report.
  • Filter by HTTP Status Codes to view the errors.
  • Click on any error to see affected pages and suggested fixes.

Frequently asked questions

What’s the difference between 401 and 403?

A 401 Unauthorized status code comes first in the access process. It means the server needs valid authentication before it can decide whether to allow access. A 403 Forbidden status code comes after that check. It means the server recognizes the request, but the user still doesn’t have permission to access the resource.

What is the most important status code for SEO?

The most important status code for SEO is 200 OK. It tells search engines that your page is accessible and can be indexed and ranked. While other codes like 301 and 404 matter, 200 OK ensures your content is visible in search results.

Why are HTTP status codes important?

HTTP status codes tell browsers and search engines whether a page request was successful or not. They help search engines understand how to crawl and index your site. For example, a 404 blocks indexing, while a 301 redirect helps preserve SEO value.

What is a bad HTTP response code?

A bad HTTP response code is usually a 4xx or 5xx error. These indicate problems that prevent pages from being accessed or indexed. Common examples include 404 Not Found and 500 Internal Server Error.

Do HTTP codes affect SEO?

Yes, HTTP status codes directly affect SEO. Search engines use them to decide whether a page can be crawled and indexed. Pages with errors like 404 or 500 won’t appear in search results.

Enhance your site’s performance and SEO with Domain.com

HTTP status codes reveal what’s happening between your browser and the server when loading a web page. Understanding these codes and how to address them can boost your site’s performance and positively impact your search engine rankings.

Another key factor in improving your site’s SEO is choosing a reliable hosting provider like Domain.com. With the right SEO tools, mobile-friendly web designsSSL certificates, and built-in optimization features, you can enhance your site’s visibility and improve user experience.

Take control of your site’s performance with the right tools and hosting support. Explore our solutions and build a website that’s faster, more reliable, and ready to rank.

Read more from this author

Domains are sorta our thing.

Skip to section

Domains are sorta our thing.

Short on time? Leave it to our expert designers.

  • Custom website design & copy
  • Your own in-house design team
  • Content with SEO in mind
  • Easy-to-reach support

Speak with an expert today!