HTTP Status Code Checker
Check the HTTP status code a URL returns, including redirect targets.
Looks up live data What you enter is sent to our server to fetch live results from public sources. Results are cached briefly. A Cloudflare Turnstile bot check runs when you press the button (it loads a script from challenges.cloudflare.com and may show a short challenge).
A Cloudflare Turnstile bot check runs when you press the button (it loads a script from challenges.cloudflare.com and may show a short challenge).
Report a problem with this tool
About this tool
Enter a URL to see the HTTP status code the server answers with, such as 200, 301, 404 or 500, plus the status text and the response time. The request is made from our server, not your browser. Redirects are not followed: if the page redirects, you see the 3xx code and the Location it points to, which makes it easy to confirm where a redirect goes. If you enter a bare domain the tool tries http:// first. Private and internal addresses and non-standard ports are blocked. A result is kept for up to a minute, so repeating the same check right away can show the same answer.
How to use it
- Enter a URL or domain, for example example.com/page.
- Press Check status.
- Read the status code, status text and response time.
- For a 3xx code, read the redirect target shown with the result.
What the status code classes mean
- 2xx success
- The server answered the request. 200 OK is the normal answer for a working page.
- 3xx redirect
- The page lives somewhere else. The tool shows the Location the server points to.
- 4xx client error
- The request could not be served as asked. 404 means not found, 403 means forbidden, 410 means the page was removed on purpose, 429 means too many requests.
- 5xx server error
- The server failed. 500 is a general error, 502 and 504 usually mean a proxy or gateway could not reach the server behind it, 503 means the service is unavailable or overloaded.
Reading a redirect result
301 and 308 are permanent redirects: search engines treat the target as the new address. 302 and 307 are temporary, so the original URL is expected to come back. 307 and 308 also tell the client to keep the same request method.
If the target is itself a redirect, check it next, or use the Redirect Checker, which follows the chain hop by hop. A page you want indexed should end in a 200 after at most a hop or two.
Why the result can differ from your browser
The check is a GET request from our server with a go-supertools user agent. Some sites block or challenge requests that do not come from a normal browser and answer with 403 or 503 instead. Sites can also answer differently by country or by cookie.
A bare domain is checked over http://, so many sites answer with a 301 to their https:// address. Type https:// in front to check the secure version directly.
Common problems
- A page that works in your browser shows a redirect code
- The tool does not follow redirects. Check the target it reports, or use the Website Status Checker, which follows them.
- The request fails or times out
- The site may be down, block our server, or take longer than the 12 second limit.
- Refused: internal or private address
- Localhost, private IP ranges and ports other than 80, 443, 8080 and 8443 are blocked for safety.
Frequently asked questions
Why does my domain return 301 instead of 200?
Without a scheme the tool checks http://, and most sites redirect that to https:// or to the www version. Check the URL shown as the redirect target to see its own status.
Does it use a HEAD or a GET request?
A GET request, the same method a browser uses to load a page.
Can I check several URLs at once?
No, the tool checks one URL per request.