# HTTP Status Codes Explained for Website Owners

HTTP status codes are short server responses that explain what happened to a request. Browsers, crawlers, uptime monitors, APIs, and CDN edges all use them to understand whether a page loaded, redirected, failed, or was blocked.

You do not need to memorize every code. For website operations, the useful skill is knowing which class of response you are seeing and what to check next.

Use AccessTest URL Check to inspect status codes from different regions:

https://www.accesstest.net/tools/url-check/

The five status code classes

HTTP status codes are grouped by their first digit:

- `1xx`: informational responses. - `2xx`: successful responses. - `3xx`: redirects and cache-related responses. - `4xx`: request or access problems. - `5xx`: server, gateway, or upstream failures.

Most website owners spend the most time with `200`, `301`, `302`, `403`, `404`, `429`, `500`, `502`, `503`, and `504`.

2xx: success

200 OK

The request succeeded. For a normal public page, this is usually the expected response.

Check that the page is not only returning `200`, but also returning the correct content. A `200 OK` error page can still be a problem.

204 No Content

The server succeeded but returned no body. This is common for API actions and not usually expected for ordinary public pages.

3xx: redirects

Redirects are normal for HTTPS, canonical hostnames, language paths, and moved pages. The risk is redirect chains. Every extra hop adds latency and creates more room for mistakes.

301 Moved Permanently

Use `301` when a URL has permanently moved. Common examples include old page URLs, HTTP-to-HTTPS redirects, and non-canonical hostnames.

302 Found

Use `302` for temporary redirects. It tells clients that the move is not permanent.

307 and 308

These redirects preserve the HTTP method more strictly. `307` is temporary, and `308` is permanent.

304 Not Modified

This is a cache validation response. It tells the client the cached copy is still valid.

4xx: request or access problems

4xx responses mean the server understood the request but cannot fulfill it as sent. Sometimes the user made a bad request. Sometimes your site has a broken link, permission issue, or firewall rule.

400 Bad Request

The request is malformed or cannot be processed. Check URL format, headers, proxies, and application validation.

401 Unauthorized

Authentication is required. This is normal for protected areas and unexpected for public pages.

403 Forbidden

The server refuses access. For public pages, check WAF rules, file permissions, geo blocking, bot protection, and authorization logic.

404 Not Found

The URL does not map to a resource. This is fine for truly missing pages, but bad for internal links, indexed pages, and important moved content.

410 Gone

The content has intentionally been removed. Use this carefully when the page should not return.

429 Too Many Requests

The client hit a rate limit. If real users see `429`, review thresholds, bot rules, and whether shared IP ranges are being limited too aggressively.

5xx: server or upstream failures

5xx responses usually deserve urgent attention because they mean the server, gateway, CDN, or upstream dependency failed.

500 Internal Server Error

Generic application or server failure. Check application logs, recent deploys, configuration, and dependency errors.

502 Bad Gateway

A proxy, CDN, or gateway received an invalid response from the upstream server. Check origin health, upstream protocol, and CDN-to-origin connectivity.

503 Service Unavailable

The service is overloaded, in maintenance, or temporarily unable to respond. Check capacity, maintenance mode, deploys, and rate limiting.

504 Gateway Timeout

A gateway or CDN waited too long for the upstream server. Check slow endpoints, database queries, external APIs, and origin availability.

Which codes are most urgent?

For public website pages, prioritize:

- `500`, `502`, `503`, `504`: reliability issue. - Unexpected `403`: users or crawlers may be blocked. - Unexpected `404`: broken links or missing indexed content. - Long redirect chains: speed and SEO issue. - Wrong content with `200`: harder to detect, but still serious.

Monitor status codes by region

A page may return `200 OK` from one country and `403`, `502`, or a timeout from another. Monitor important URLs from more than one region, especially if your audience is international.

Track:

- Homepage. - Login and checkout pages. - Pricing or lead pages. - Contact page. - API health endpoint. - Important landing pages. - Blog and SEO pages.

FAQ

Is 404 always bad?

No. A 404 is fine for pages that truly do not exist. It is bad when important pages, internal links, or indexed URLs unexpectedly return 404.

Is 301 better than 302?

Neither is universally better. Use 301 for permanent moves and 302 for temporary moves.

Why does a CDN show 502 or 504?

The CDN may be unable to reach the origin, or the origin may be returning invalid, slow, or timed-out responses.

Can status codes affect SEO?

Yes. Search engines need stable, crawlable responses. Unexpected 4xx, 5xx, and redirect chains can hurt crawling and user experience.