---
title: Free HTTP Status Checker
description: Get the HTTP status code a URL returns right now — 200, 301, 404, 503 — with the response time, redirect count, final URL and headers, fetched from a real probe location rather than your own network. Confirm a page is really down, a redirect is really a 301, or an API is really answering.
canonical: https://watchfor.io/http-status-checker
---

[Back to all free tools](/free-tools)

# HTTP Status Checker

Get the HTTP status code a URL returns right now — 200, 301, 404, 503 — with the response time, redirect count, final URL and headers, fetched from a real probe location rather than your own network. Confirm a page is really down, a redirect is really a 301, or an API is really answering.

Result

No result yet

Enter the inputs above and press Run. Results appear here in a moment.

Monitor this 24/7 — get alerts on the first failure.

[Start free](/auth/sign-up)

Only run these tools against systems you own or are authorized to test. Using them to scan or probe systems without permission violates our [Terms](/legal/terms).

## What is HTTP Status Checker ?

The HTTP status code is the first thing a server says about a request — 200 it's here, 301 it moved for good, 404 there's nothing here, 503 I'm overloaded. Every SEO tool, monitoring system, load balancer health check and browser decides what to do next from that three-digit number, and an unexpected one is the cause of most "the site is up but…" tickets: the page that serves a 200 on an error, the redirect that's a 302 instead of a 301 , the API that returns 500 only for real clients.

This tool requests a URL from a real probe location and reports the status code it gets, along with the response time breakdown, the number of redirects followed, whether the final URL is HTTPS, and every response header. Because the request comes from our infrastructure and not your network, it answers the question your own browser can't: what does everyone else get?

## How it works

A plain HTTP request with the details kept:

- 1 Send GET (or HEAD) — From the nearest probe or the one you choose, following redirects by default. Turn following off to see the first hop's own status — the 301 rather than the 200 it leads to.
- 2 Time each phase — DNS, TCP connect, TLS handshake and time to first byte, so a slow 200 and a fast 200 are distinguishable.
- 3 Report status and headers — The final status code, redirect count, and the complete header list with copy buttons.

For the full hop-by-hop chain when a URL redirects several times, use the redirect checker; for a status check on a schedule with alerts, that's a website monitor.

## When you'd use it

### "Is it down for everyone or just me?"

Your browser shows an error. A request from a probe in another region returning 200 means the problem is between you and the site — DNS, VPN, a corporate proxy, a bad cache.

### Verifying a redirect type

SEO depends on 301 for permanent moves. Many frameworks and CDNs default to 302 . Check with redirect-following off to see the actual code on the old URL.

### Soft 404s

A page that says "not found" with a 200 status is indexed as a real page and wastes crawl budget. The check shows the code the crawler sees, not the words on the page.

### Load balancer and health-check endpoints

/healthz should be a 200 with a small body from outside, or the balancer will pull the instance. Check it from the probe closest to the balancer.

## Reading the result

### 2xx

Success. 200 for content, 204 for no content, 206 for a range. Anything else in the class is unusual for a web page.

### 3xx

Redirects. 301 / 308 permanent (cached by browsers, ranking passed by search engines), 302 / 307 temporary. 304 is a cache validation, not a move.

### 4xx

The client's fault, says the server. 401 / 403 access, 404 missing, 405 wrong method, 429 rate-limited — a probe hitting a bot-protection rule often gets 403 or 429 while browsers sail through.

### 5xx

The server's fault. 500 unhandled error, 502 / 504 the proxy couldn't reach or wait for the backend, 503 overloaded or in maintenance. This is the class monitoring exists for.

## Check it yourself

curl -s -o /dev/null -w '%{http_code} %{redirect_url}\n' https://example.com Add -L to follow redirects and print the final code instead.

## Common pitfalls

### HEAD and GET disagree

Some servers return 405 or a different status for HEAD. If HEAD looks wrong, repeat with GET — that's what browsers send.

### Bot protection answering instead of the site

A WAF or Cloudflare challenge returns 403 / 503 to anything it doesn't recognise as a browser. Our probes identify themselves honestly; a 403 from the WAF means the rule blocks non-browser clients, which may or may not be what you want.

### Status from the wrong hop

With redirects followed, the status is the final page's. The old URL's own code — the one search engines evaluate — needs following turned off.

## Run HTTP Status Checker on every change, not just once.

Get alerts the moment something breaks — across HTTP, DNS, SSL, RDAP, ping, blacklist and more. Free forever for 10 monitors. No card.

[Start free](/auth/sign-up)

## Frequently asked questions

What is the difference between 301 and 302? 301 is permanent: browsers cache it, search engines transfer ranking to the destination. 302 is temporary: nothing is cached or transferred, and the old URL stays indexed. Use 301 (or 308 ) for moves.

What does a 503 mean? Service unavailable — overloaded, restarting, or deliberately in maintenance. With a Retry-After header, crawlers come back later without penalty; without one, a prolonged 503 gets pages dropped.

Why do I get a 403 from the tool but the site works in my browser? Bot protection or geo-blocking: the server treats non-browser clients or certain regions differently. Try another probe location; if every location gets 403 , the rule blocks all automated clients — including search engines' crawlers if it's too broad.

What is a soft 404? A page that returns 200 but shows an error or empty content. Search engines detect some, index the rest. Return a real 404 (or 410 if gone for good).

Can I check status codes for many URLs? This page does one at a time. For a list, the sitemap checker samples URLs from the sitemap and reports broken ones; for continuous checking, a website monitor per URL alerts on any unexpected status.

## Related web tools

- [HTTP HeadersInspect response headers, status, redirect chain and security headers.](/http-header-checker)
- [MCP Server CheckerTest a Model Context Protocol server: initialize handshake, protocol version, capabilities and the full tool inventory.](/mcp-server-checker)
- [SSL Certificate CheckInspect certificate validity, expiry, SANs, issuer and chain trust.](/ssl-checker)
- [SSL/TLS GradeGrade a server's TLS config A+ to F — protocols, ciphers, forward secrecy, post-quantum, HSTS and certificate, with the exact reasons.](/ssl-grade-checker)

---

Canonical page: https://watchfor.io/http-status-checker · Site guide: https://watchfor.io/llms.txt
