Key takeaways:
- HTTP status codes impact your website’s user experience (UX) and search engine optimization (SEO).
- Common errors like 404 Not Found and 503 Service Unavailable can hurt your site’s performance.
- Monitoring tools such as Google Search Console (GSC) help catch status code issues before they impact traffic.
Hypertext Transfer Protocol Secure (HTTP) status codes are short, blunt notes from your website telling visitors what’s happening behind the scenes. Sometimes it’s a cheerful “All good!” message (even if you never see it). Other times, it’s a frustrating “Something’s wrong, try again later.”
For example, a 404 Not Found or 503 Service Unavailable indicate a problem with your site. These codes are helpful; they tell you when something is broken, overloaded, or just not where it’s supposed to be. And while they might seem random numbers, understanding them can help you fix problems faster, keep your site healthy, and even protect your search rankings.
Here, we’ll explore the different types of status codes, how they affect your site’s performance and SEO, and what to do when they show up at the worst possible time.
What are HTTP status codes?
HTTP status codes are three-digit messages from a website’s server to a browser to indicate the outcome of a request.
They’re how your site communicates whether things are working as expected—or if something’s gone wrong. These codes show up during every interaction with your site, even if visitors don’t see them. When something doesn’t load properly, the browser shows the code to explain.
There are five main categories of status codes, each starting with a different number. Think of them as traffic signals: some mean “all clear,” others say, “go another way,” and a few are flashing warning lights that need attention.
Let’s break down the five main types of status codes you’ll likely encounter:
- 1xx — Informational responses. Rarely displayed on browsers and web pages, they mean the request was received, and the server is still working on it.
- 2xx — Success. This means the request was successful. The most common one is 200 OK, which means the page loaded error-free.
- 3xx — Redirects. These codes tell the browser that the page has been moved. The most common is 301 Moved Permanently, which indicates permanent movement.
- 4xx — Client errors. These error messages appear when something goes wrong on the visitor’s end, like typing in a bad URL or trying to access a page that doesn’t exist. The error 404 Not Found is the most common example. The visitor clicks or visits a link to the page that’s no longer there.
- 5xx — Server errors. These errors come from the server’s side. Here, a request can’t be fulfilled due to a broken plugin or overloaded server.
HTTP status codes: Full list and what each one means
Every HTTP status code comes with a short message that helps explain what’s happening between your website and a visitor’s browser. Some let you know everything’s working fine, while others are a heads-up that something needs fixing.
Here’s a full list of status codes, what each one says, and what it means:
Code | Text | Description |
100 | Continue | Request received, keep going. |
101 | Switching Protocols | Protocol change request accepted. |
102 | Processing | Server is processing the request. |
103 | Early Hints | Preload resources while waiting for final response. |
200 | OK | The request was successful. |
201 | Created | Resource created successfully. |
202 | Accepted | Request accepted but not completed. |
203 | Non-Authoritative Information | Response from a third party. |
204 | No Content | Request succeeded, no content returned. |
205 | Reset Content | Request succeeded, reset the form. |
206 | Partial Content | Partial resource returned. |
207 | Multi-Status | Multiple responses for WebDAV. |
208 | Already Reported | Repeated element in WebDAV. |
226 | IM Used | Instance manipulation completed. |
300 | Multiple Choices | Multiple options for the resource. |
301 | Moved Permanently | Resource moved to a new URL. |
302 | Found | Resource temporarily at a different URL. |
303 | See Other | Check another URL with GET. |
304 | Not Modified | Resource not changed since last request. |
305 | Use Proxy | Must access through a proxy. |
306 | Switch Proxy | Deprecated. |
307 | Temporary Redirect | Temporary redirect, use same method. |
308 | Permanent Redirect | Resource moved permanently, use same method. |
400 | Bad Request | The server can’t process the request. |
401 | Unauthorized | Authentication required. |
402 | Payment Required | Reserved for future use. |
403 | Forbidden | Access is denied. |
404 | Not Found | The requested resource doesn’t exist. |
405 | Method Not Allowed | The request method is not supported. |
406 | Not Acceptable | Resource not acceptable per request headers. |
407 | Proxy Authentication Required | Auth needed through proxy. |
408 | Request Timeout | Server timed out waiting. |
409 | Conflict | Request conflict with current state. |
410 | Gone | Resource permanently removed. |
411 | Length Required | Content-Length header required. |
412 | Precondition Failed | Server conditions not met. |
413 | Payload Too Large | The request entity is too large. |
414 | URI Too Long | Request URI too long. |
415 | Unsupported Media Type | Media type unsupported. |
416 | Range Not Satisfiable | Range can’t be fulfilled. |
417 | Expectation Failed | Expectation header can’t be met. |
418 | I’m a teapot | April Fools’ joke. |
421 | Misdirected Request | Sent to the wrong server. |
422 | Unprocessable Entity | Can’t process the request. |
423 | Locked | Resource is locked. |
424 | Failed Dependency | Previous request failed. |
425 | Too Early | Premature request. |
426 | Upgrade Required | Must switch to a different protocol. |
428 | Precondition Required | Missing required preconditions. |
429 | Too Many Requests | Rate limit exceeded. |
431 | Request Header Fields Too Large | Headers too large. |
451 | Unavailable For Legal Reasons | Blocked for legal reasons. |
500 | Internal Server Error | Server encountered an error. |
501 | Not Implemented | Server can’t fulfill the request. |
502 | Bad Gateway | Invalid response from upstream server. |
503 | Service Unavailable | Server is overloaded or down. |
504 | Gateway Timeout | Upstream server timed out. |
505 | HTTP Version Not Supported | Version not supported. |
506 | Variant Also Negotiates | Negotiation error. |
507 | Insufficient Storage | Not enough storage for request. |
508 | Loop Detected | Infinite loop in processing. |
510 | Not Extended | More extensions required. |
511 | Network Authentication Required | Network login required. |
How do HTTP status codes affect SEO?
Google and other search engines look at status codes to understand if your pages are available and functioning properly. These codes help crawlers (automated programs that browse web content) decide whether to keep indexing your content, try again later, or stop visiting altogether.
That’s why certain status codes can either help your SEO or quietly hurt it.
2xx codes (Success) help keep your site healthy
When your site returns a 200 OK, that’s a green light for Googlebot. It means your content is accessible and can be indexed. This is exactly what you want search engines to see across all your important pages.
3xx codes (Redirects) can pass SEO value
Redirects tell search engines that a page has been moved.
- A 301 Moved Permanently passes most of the original page’s ranking power to the new URL.
- A 302 Temporary Redirect, on the other hand, might confuse search engines if the move is permanent.
Pro tip: Use 301 redirects for permanent changes like moving blog posts or product pages. Avoid redirect chains or two or more redirects that lead from an initial URL to the final one. They slow things down and dilute ranking signals.
4xx codes (Client errors) can block indexing
Errors like 404 Not Found or 410 Gone tell search engines that the page doesn’t exist. A few of them on your website aren’t a big deal. But too many broken links or missing pages signals poor site maintenance and can hurt your SEO.
Search engines have a “crawl budget” and have a limit on the number of pages that they can discover or crawl. With broken links or missing pages, crawlers may spend more time on dead ends instead of important pages. This also harms UX since human visitors expect to find information on a page, and not an error.
If high-value pages, such as landing pages or blog posts, are returning 404 Not Found, you lose rankings and traffic without even knowing it.
5xx codes (Server errors) may damage trust and crawlability
When your site returns a 500 Internal Server Error or a 503 Service Unavailable, it means something’s broken on your server’s end. If search engines see this repeatedly, they slow down crawling or temporarily stop indexing parts of your site.
Even worse than this is if users are also seeing these errors. It discourages them from visiting your site, affecting bounce rates and engagement—two indirect signals that can affect your visibility in search.
How to troubleshoot common HTTP status codes
Seeing error codes pop up on your website isn’t ideal, but they’re not the end of the world either. Most HTTP status codes give you a clue about what’s wrong and where to look.
Here’s how to handle some of the most common ones:
404 Not Found
The page doesn’t exist. Perhaps the URL you typed was wrong, or someone may have already deleted the page without updating the links.
What you can do:
- Double-check the URL for typos.
- If the page was moved, set up a 301 redirect to the new URL.
- Use Google Search Console (GSC) to find broken links pointing to it.
- Create a custom 404 page that guides visitors back to key pages on your site.
403 Forbidden
This response code means visitors are blocked from accessing a page.
What you can do:
- Make sure file permissions on your server are correct.
- Check your .htaccess file (or ask your service provider) to see if access is being restricted.
- If using a firewall or security plugin, make sure it’s not blocking access to certain pages.
500 Internal Server Error
Something went wrong on the server, but the server isn’t saying what it is.
What you can do:
- Deactivate new plugins or themes if you’re using WordPress.
- Clear your website’s cache. You can ask your host to do this for you if an option on your end is not available.
- Contact your hosting provider. They can check the error logs and help resolve this problem.
503 Service Unavailable
The server is temporarily down, perhaps due to maintenance or overwhelmed by too many requests.
What you can do:
- Wait a few minutes and try again. It might be temporary.
- If it keeps happening, check if your hosting plan needs an upgrade.
- Ask your host to check if there’s a traffic spike, DDoS attack, or server misconfiguration.
429 Too Many Requests
Your site, or a visitor, is sending too many requests in a short amount of time.
What you can do:
- Limit bot activity. You can implement this with the use of captcha, bot managers, or rate limiters.
- Set or adjust rate limits in your API or server settings. Ask a developer for help if you find this process too advanced.
- Use caching tools to reduce the load on your server, such as browser caching, content delivery network (CDN), or site-level caching tools.
Tools for checking HTTP status codes
Whether you’re debugging a broken link or just trying to make sure Google sees your pages correctly, these tools can help you check the status codes returned by your website:
Note: Prices mentioned in this section are accurate at the time of writing and are subject to change. Please visit the product’s official website for the most current information.
1. Browser developer tool
This tool is built into browsers such as Chrome and Firefox. It lets you peek under the hood of any web page.
What it does:
- It shows the HTTP status code of any page or file in real time.
- It checks how each page or resource is loaded.
To open the developer tool on your browser:
- Right-click the page.
- Select Inspect.
- Go to the Network tab.
- Reload the page and check the codes under the Status column.
2. Google Search Console
This is Google’s free tool that shows how your website is performing in search results.
What it does:
- It flags crawl issues like 404 errors and server issues.
- The tool lets you inspect live URLs and view HTTP status responses.
- It helps monitor indexed pages and redirects.
You can connect your website to Google Search Console for free using a Google account.
Here’s our more detailed guide on how to use GSC.
3. HTTP Status Checker
This is a simple and free online tool where you can check one or multiple URLs for their HTTP responses.
What it does:
- The site instantly shows the HTTP status code for each URL.
- It identifies redirect chains and destination URLs.
- This tool can check whether redirects are set up properly.
HTTP Status Checker is great for quick fixes—no need to sign up.
4. Screaming Frog SEO Spider
This tool is a powerful desktop-based app that analyzes your website’s structure. It gives detailed SEO insights, including HTTP status codes. It’s available in both a free version and a paid version priced at $271.42.
What it does:
- It scans every link and page on your website.
- It reports on all HTTP status codes.
- The tool highlights broken links, redirects, and server errors.
Since it’s desktop-based, you need to download and install the app first to your device before you can use it.
5. Ahrefs Site Audit
It is a website auditing tool that checks for technical SEO issues, including HTTP status code problems.
What it does:
- The tool crawls your entire website and reports on broken links, redirect chains, and server errors.
- It groups issues by severity, so you can prioritize fixes.
- It helps you spot crawl waste, orphaned pages, and unnecessary redirects that could affect your SEO and crawl budget.
Site Audit is part of the full Ahref’s toolkit, so you’ll need a subscription (starts at $129.00 per month) to use it. However, if you value SEO as part of your overall strategy, then it’s worth the investment.
Best practices for managing status codes
HTTP status codes are signals that affect how users interact with your site, and how search engines crawl and rank it. Managing these codes properly helps you avoid traffic losses, broken links, and SEO setbacks.
Here are a few best practices to stay on top of them:
- Keep your URLs clean and up to date. Use clear, consistent URL structures and update internal links whenever you move or remove pages. If a page is removed for good, set up a 301 redirect to the closest relevant page to avoid broken links and traffic loss.
- Monitor your site for 4xx and 5xx errors. Tools like Google Search Console, Ahrefs, and Screaming Frog can help you spot 404 Not Found or 500 Internal Server Errors. Fix the errors on the affected pages to keep both users and search engines happy.
- Avoid soft 404s. A soft 404 is when a page looks like it’s missing (displays a “Page not found” error) but returns a 200 OK code instead of a real 404. Ensure these pages return a proper 404 or 410 so Google doesn’t think it’s real content worth indexing.
- Test status codes after major changes. Whenever you update or redesign your site, run a full crawl to make sure important pages return the correct status codes. Test high traffic pages manually with tools like HTTP Status Checker to double-check.
Boost your site with the right tools
HTTP status codes play a huge role in how your website functions, how users experience it, and how search engines rank it. Keeping your status codes in check is one of the simplest ways to keep your site running smoothly and support your long-term SEO goals.
But great performance doesn’t stop at fixing status codes. It also comes from choosing the right hosting, using a website builder that fits your needs, and having SEO tools that push your site forward.
Network Solutions is your all-in-one platform for building, optimizing, and growing a website that’s built to last. Explore our services and give your site the boost it deserves!
Frequently asked questions
A 301 redirect is permanent. It tells search engines that the page has moved for good, and any SEO value should be transferred to the new page. A 302 redirect, on the other hand, is temporary. Meaning the move isn’t permanent, and the original page may come back. If you want to keep your SEO rankings intact when redirecting a page, go with the 301 redirect.
Too many 404 errors can hurt your SEO. They create a poor user experience and can waste your crawl budget, or the time search engines spend exploring your site. If important pages return 404 errors, they won’t show up in search results. This means missed opportunities for traffic.
HTTP status codes signal the users and search engines whether a page is working, missing, redirected, or facing issues. Clean, properly managed status codes keep your site running smoothly and help search engines understand your content better.