HTTP Status Code Checker
Check which HTTP status code a URL returns right now, with the reason phrase, response time and each redirect followed to the final page. Enter a URL such as https://example.com.
- Free
- No signup required
- Live HTTP request
Common HTTP status code problems
The page looks fine but returns 404
Some CMS themes and single-page apps show a friendly "not found" page, or even the real content, while sending 404. The opposite also happens: a "soft 404" shows an error message with status 200, so search engines index an empty page. Trust the status code shown here, not what the page looks like, and make your error pages send the code they describe.
A redirect returns 302 where you wanted 301
Frameworks and hosting panels often default to a temporary redirect. Browsers do not care, but search engines treat 302 and 307 as "the old URL is still the real one". For a permanent move, such as HTTP to HTTPS or an old slug to a new one, use 301 or 308.
Too many redirects or a redirect loop
Two rules fighting each other, such as Cloudflare's Flexible SSL forcing HTTP to the origin while the origin forces HTTPS, send the visitor round in circles until the browser gives up. The redirect chain in the result shows where the hops start repeating.
Your browser gets 200 but the checker gets 403
A firewall, bot filter or hosting security rule is blocking requests that do not come from a normal browser session. That same rule may also block search engine crawlers, link previews and uptime monitors, so it is worth looking at even if your own visits work.
Intermittent 5xx errors
A server that returns 500, 502 or 503 only some of the time usually has one unhealthy instance behind a load balancer, a worker pool that runs out under load, or a deploy that restarts processes. One manual check can easily miss it. Check a few times, then look at the server logs around those moments.
How to check an HTTP status code
- Enter the full URL, including https:// and the path you care about.
- Click Check status.
- Read the final status code and reason, and the redirect chain if there was one.
- If the code is a 4xx or 5xx, open the matching guide below for causes and fixes.
What is an HTTP status code?
Every HTTP response starts with a three-digit status code and a short reason phrase. The code tells the client what happened to its request before it reads a single byte of the page. Browsers, search engines, APIs and uptime monitors all act on this number.
The first digit is the class. 1xx is informational (for example 101 Switching Protocols for WebSockets). 2xx means success: 200 OK, 201 Created, 204 No Content. 3xx means the content is somewhere else: 301 and 308 are permanent redirects, 302 and 307 temporary ones, and 304 Not Modified tells the client its cached copy is still good.
4xx means the request was the problem as far as the server is concerned: 400 Bad Request, 401 Unauthorized (log in first), 403 Forbidden (you are not allowed), 404 Not Found, 410 Gone, 429 Too Many Requests. 5xx means the server or something behind it failed: 500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable and 504 Gateway Timeout.
This checker sends a real request from TinyPing's server, follows redirects and shows each hop, so you see the code a crawler or API client gets, not what your browser has cached.
GET / HTTP/1.1 Host: example.com HTTP/1.1 301 Moved Permanently Location: https://www.example.com/ HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8
When to use an HTTP status checker
After a site migration
Moving from WordPress to Shopify or Webflow, or restructuring URLs, check that old addresses return 301 to the right page instead of 404.
Debugging a webhook or API endpoint
Stripe, GitHub and other providers retry webhooks that do not get a 2xx answer. Check that your endpoint answers with the code you expect from outside your network.
Confirming a fix in production
You changed an nginx rule or a Cloudflare page rule. Check the live URL instead of trusting a browser that may still be serving a cached response.
Checking a page before you share it
Before a launch email or ad campaign goes out, make sure every landing page returns 200 and is not stuck behind a login, a staging password or a redirect to the home page.
Check something else
- Redirect CheckerTrace every redirect hop of a URL with status code, Location and time, and spot loops and long chains.
- Website Down CheckerCheck if a website is down for everyone or just you, with status code, response time and final URL.
- 503 Service UnavailableCheck if a URL returns 503 Service Unavailable, and fix maintenance mode, overload, rate limits and empty backend pools.
- Website Response Time TestMeasure how long a website takes to respond, split into DNS, connect, TLS, server wait and download.
Frequently asked questions
Which status codes count as the site being up?
For a normal page, 200 is what you want after redirects. 3xx codes are fine as long as the chain ends in a 200. Any 4xx or 5xx on a page that should be public means visitors are not getting the content.
Does the checker follow redirects?
Yes. It follows each redirect and shows every hop with its status code, then the final code. That way you see both the redirect type and where it ends.
What is the difference between 401 and 403?
401 means the server does not know who you are and wants credentials. 403 means it knows enough and still refuses, or refuses everyone, for example because of file permissions or a firewall rule. Logging in again fixes a 401, rarely a 403.
Why do I see a different code than my browser?
Your browser may be serving a cached page or redirect, sending cookies that log you in, or reaching a different server through a VPN or local DNS. This checker makes a fresh request with no cookies from TinyPing's server.
Is 404 bad for SEO?
A 404 for a page that really does not exist is correct and harmless. It becomes a problem when pages that used to rank, or that other sites link to, return 404 instead of redirecting with 301 to their new address.
Does a 5xx error hurt search rankings?
Short outages usually do not. Search engines slow down crawling when they see 5xx errors and come back later. If pages keep returning 5xx for days, they can drop out of the index.
Stop checking status codes by hand
A page that returns 200 today can start returning 404 after a deploy or 503 during a bad night. TinyPing checks it every 5 minutes and alerts you when:
- the URL returns an error status code
- the server times out or refuses the connection
- an expired certificate breaks HTTPS
US$6.99 a month or US$47 a year per 50 monitors, team members free. 7-day free trial, no card needed.
Want alerts in team chat? Follow the guide for Slack or Google Chat.