Website Uptime Checker
Before you start debugging code, it's worth knowing whether the problem is your application or the server being unreachable. This tool answers that question instantly for any URL.
Website Uptime Checker
Check URL availability, response time, and HTTP status.
What uptime monitoring is and why it matters
Uptime monitoring is the practice of regularly checking whether a website or web service is reachable and responding correctly. For most websites, "uptime" is expressed as a percentage of time the site was accessible over a given period. 99% uptime sounds reassuring until you realize it allows for about 3.65 days of downtime per year. 99.9% (often called "three nines") allows 8.76 hours of downtime. 99.99% ("four nines") allows only 52 minutes. High-traffic commercial sites target four or five nines because even brief outages translate directly into lost revenue and damaged user trust.
The practical value of uptime monitoring extends well beyond simply knowing when a site goes down. A well-configured monitoring setup alerts you within seconds of a problem rather than waiting until a user reports it โ by which point damage has already accumulated. Monitoring data also reveals patterns over time: perhaps your server slows every day at a predictable hour because of a scheduled job, or perhaps response times degraded gradually over several months as database queries grew slower with increasing data volume. Without tracking this data, these trends are invisible until they become outages.
For site owners without dedicated infrastructure teams, a quick reachability check is often the first diagnostic step when something seems wrong. Is the API returning errors because my code has a bug, or because the third-party service it calls is down? Is my staging deployment broken, or is the hosting provider having an issue? The Website Uptime Checker answers these questions with a single URL check โ giving you a status code, response time, and redirect chain in under a second.
What it checks
Each check sends an HTTP request to the URL and reports back the status code, response time, and any redirects. The tool processes multiple URLs in parallel, so checking a list of 20 endpoints takes about the same time as checking one.
Status code
200, 301, 403, 404, 500 โ exact code with description.
Response time
Time to first byte in milliseconds.
Redirect chain
Full redirect path for 3xx responses.
SSL validity
Whether HTTPS certificate is valid.
Bulk check
Check up to 50 URLs simultaneously.
Export results
Download results as CSV.
How a reachability check works under the hood
When you enter a URL and click "Check," the tool initiates an HTTP request to that address. Before the request even leaves your machine, several steps happen in sequence that together constitute the full connection process.
First, DNS resolution translates the domain name into an IP address. Your browser queries a DNS resolver (usually provided by your ISP or a public resolver like 8.8.8.8 or 1.1.1.1), which returns the IP address associated with the domain. This lookup is usually cached for a period defined by the domain's TTL (Time to Live) record, so repeated checks to the same domain are faster. A failed DNS lookup means the domain either does not exist, has expired, or there is a problem with the DNS infrastructure between you and the authoritative name server.
Once the IP address is known, the browser establishes a TCP connection to the server on the appropriate port (usually port 80 for HTTP or port 443 for HTTPS). TCP is a reliable, connection-based protocol that requires a three-way handshake before any data is exchanged: the client sends SYN, the server responds with SYN-ACK, and the client confirms with ACK. This handshake adds latency proportional to the network round-trip time between client and server. A server on the other side of the world may add 150-300ms just from TCP handshake time, before any application-level processing begins.
For HTTPS URLs, a TLS handshake follows the TCP handshake. The client and server negotiate an encryption algorithm and exchange certificates. The server presents its TLS certificate, which the browser validates against a list of trusted certificate authorities (CAs). If the certificate is expired, issued to a different domain, or signed by an untrusted CA, the browser blocks the connection and the check reports an SSL error. This is what the SSL validity indicator in the tool reflects โ not just whether HTTPS is used, but whether the certificate is valid and trusted.
After the connection is established, the browser sends an HTTP request โ typically a HEAD or GET request with headers identifying the client. The server processes the request and sends back a response starting with a status line (the HTTP status code and reason phrase), followed by response headers, and then the response body. The response time shown by the tool is the time from when the request is sent to when the first byte of the response is received โ this is called Time to First Byte, or TTFB. It captures all the network and server processing time but excludes the time to download the actual response body.
HTTP status codes explained
HTTP status codes are three-digit numbers returned by a server to indicate the outcome of a request. They are grouped into five classes by their leading digit, each representing a different category of outcome. Understanding these classes helps you diagnose problems quickly without needing to look up every individual code.
The 2xx class covers successful responses. 200 OK is the standard success code for a request that returned content. 201 Created is returned when a POST request successfully created a new resource. 204 No Content indicates success but with no body โ common in DELETE requests and some API endpoints. All 2xx codes indicate the server processed the request successfully.
The 3xx class covers redirects. 301 Moved Permanently tells the client (and search engine crawlers) that the resource has a new permanent URL โ the client should update its bookmarks and future requests should go directly to the new URL. 302 Found (historically called "Moved Temporarily") means the redirect is temporary and the client should continue using the original URL for future requests. 307 Temporary Redirect is similar to 302 but explicitly requires the client to use the same HTTP method on the new URL. 308 Permanent Redirect is the method-preserving equivalent of 301. Redirect chains โ where one redirect points to another โ are shown in full by the tool, which helps you identify redundant hops that add unnecessary latency.
The 4xx class covers client errors โ cases where the request itself was the problem. 400 Bad Request means the server could not understand the request due to malformed syntax. 401 Unauthorized means authentication is required and has not been provided. 403 Forbidden means the server understood the request but refuses to authorize it โ the distinction from 401 is that providing credentials would not change the outcome. 404 Not Found is the most common 4xx code: the server is up and responding, but the requested URL does not exist. 429 Too Many Requests indicates rate limiting โ the client has made too many requests in a short time period.
The 5xx class covers server errors โ cases where the server encountered a problem it could not recover from. 500 Internal Server Error is a catch-all for unhandled exceptions in application code. 502 Bad Gateway means a server acting as a gateway or proxy received an invalid response from an upstream server โ often seen when a reverse proxy like Nginx cannot reach the application server behind it. 503 Service Unavailable means the server is temporarily unable to handle requests, either due to overload or maintenance. 504 Gateway Timeout is similar to 502 but specifically means the upstream server did not respond in time. Any 5xx response indicates a problem on the server side, not with the client's request, which is why the tool flags them as "down."
Response time and latency
Response time (time to first byte, TTFB) tells you how fast the server is responding, independent of how large the page is. A slow TTFB is a server-side problem โ it means the server is taking time to process the request before sending anything back. Use these benchmarks to classify what you see:
Latency has several components that contribute to the total TTFB. Network propagation delay is the time it takes for signals to travel through cables and fiber at the speed of light โ this is a physical constraint determined by geography. A server in the same city might have a base propagation delay of 2-5ms, while a server on another continent might have 150-250ms just from the round-trip distance. This is why CDNs (Content Delivery Networks) exist: they cache responses at edge nodes distributed globally, serving users from a nearby location rather than from a distant origin server.
Server processing time is the portion of TTFB that the application itself controls. It includes the time to parse the request, execute server-side code, query databases, call external APIs, and render a response. For a simple static HTML file, this is near-zero. For a dynamic page that queries a database and applies a template, it might be 50-200ms on a well-optimized system. If your server processing time is high, common causes include slow database queries (missing indexes, N+1 query patterns, large result sets), blocking synchronous operations, insufficient caching, or undersized server resources.
Queue time is latency that accumulates when a server is receiving more requests than it can immediately process. Web servers handle concurrency through worker processes or threads โ when all workers are busy, new requests wait in a queue. Under normal load, queue time is negligible. Under high load, a server that was previously responding in 100ms might suddenly respond in 2-3 seconds as requests pile up behind a slow operation. A sudden spike in response time accompanied by continued reachability often indicates queue buildup from a slow endpoint or a traffic spike.
"Down for me" versus globally down
One of the most important distinctions in site availability troubleshooting is whether a problem is local to you or affects all users globally. The answer determines who is responsible for fixing it and what the appropriate response is.
A site is "down for you" when your network or a specific path between you and the server has a problem, but the server itself is healthy and serving other users normally. This can happen for several reasons. Your ISP may have a routing issue or a peering problem with the network that hosts the server. A middlebox on your network path โ a firewall, a transparent proxy, or a deep-packet inspection device โ may be blocking or corrupting traffic to that specific destination. Your local DNS resolver may have a stale or incorrect entry, causing requests to go to the wrong IP address. In corporate and university networks, security appliances frequently intercept traffic and may block specific sites or endpoints, making them unreachable only from that network.
A site is "globally down" when the origin server itself is not responding or is returning error status codes to all clients, regardless of where they connect from. This happens when the server process crashes, the hosting provider has a data center incident, the domain registration or DNS records expire, the server runs out of disk space or memory, or a deployment breaks the application entirely. Global downtime is the responsibility of the site owner or hosting provider to fix.
A browser-based tool like this checker tests reachability from your specific network location โ it tells you whether you can reach the site. To confirm whether a problem is global, you need to compare results from multiple network vantage points. Practical approaches include: asking a colleague on a different network to check the URL, using a dedicated multi-region probe service such as Down For Everyone Or Just Me or UptimeRobot's public status page, or checking the site's official status page (many services maintain a status.domain.com page that reports known incidents). Social media is also a reliable global-down signal โ if a popular site goes down, you will see reports within seconds on platforms like X and Reddit.
The checker's CORS limitation is worth understanding. Browsers enforce the same-origin policy, which restricts cross-origin requests by default. A server can opt in to cross-origin requests by returning CORS headers (Access-Control-Allow-Origin). If a server does not return these headers, browser-based checks will fail with a CORS error even if the server is perfectly healthy and returning 200 for non-browser requests like curl or server-side monitoring agents. This is why some URLs appear "down" in this tool despite being reachable in a regular browser tab โ the browser is making a cross-origin fetch, which the server rejects, while a regular navigation is a top-level request that bypasses CORS restrictions.
Bulk URL checking
Paste a list of URLs โ one per line โ and the tool checks them all simultaneously. This is useful for:
- โChecking all API endpoints in a backend service after a deployment
- โVerifying all links in a sitemap XML are still returning 200s
- โPre-launch checklist: making sure all pages of a new site load
- โPost-incident audit: identifying which specific endpoints were affected by an outage
The parallel checking approach means that checking fifty URLs takes roughly the same wall-clock time as checking one โ all requests are dispatched simultaneously rather than sequentially. The bottleneck shifts from total request count to the slowest individual response, which is typically the server with the highest TTFB rather than the number of servers checked.
After a bulk check completes, you can export the results as a CSV file containing the URL, status code, response time, and up/down classification for each entry. This is useful for generating audit records, sharing results with a team, or importing into a spreadsheet to track changes between checks. For example, you might run a bulk check before and after a deployment and compare the two CSVs to confirm that no endpoints regressed.
Practical use cases for site owners and developers
The most immediate use case is incident triage. When a user reports that your site "isn't working," the first question to answer is whether the server is reachable at all. If the checker shows a timeout or a 5xx response, the problem is at the infrastructure level and you should look at your hosting provider's status page, check server logs, or contact your hosting provider. If the checker shows a 200 OK, the server is up and the problem is in the application layer โ a JavaScript error, a broken API call, a failed database query, or a CORS issue.
Deployment verification is another high-value use case. After pushing a new build to production, you can immediately check a set of critical URLs โ the homepage, the login page, the main API endpoint, and any public-facing webhooks โ to confirm they are all returning 200s. This takes ten seconds and catches broken deployments before users do. Combining this with the response time data helps you confirm that the new build has not introduced a performance regression.
Redirect audits are useful when migrating content or restructuring a site's URL hierarchy. The redirect chain view shows the full path of a redirected URL โ including how many hops occur before the final destination. Search engines follow redirect chains, but each hop adds latency and dilutes link equity. Chains longer than two hops (A to B to C) should generally be collapsed so that A redirects directly to C. This checker makes it easy to identify chains that have accumulated extra hops over time.
Third-party dependency monitoring is often overlooked. Most web applications call external APIs โ payment processors, analytics services, email providers, CDNs. When one of these services goes down, your application may behave incorrectly even though your own server is healthy. Checking the status endpoints of your key dependencies alongside your own URLs gives you a complete picture of whether a problem is internal or external. Many third-party services publish a health endpoint at /health or /status that returns a simple 200 when the service is operating normally.
For ongoing monitoring rather than one-off checks, this tool is best used alongside a dedicated monitoring service that polls your URLs automatically on a schedule and sends alerts when status changes. Services like UptimeRobot, Pingdom, and Better Uptime offer free tiers that check intervals as frequent as every minute and send email or SMS alerts within seconds of downtime. The Website Uptime Checker complements these services for on-demand investigation โ when you want to check an endpoint right now, without waiting for the next scheduled poll.
Frequently Asked Questions
How does the uptime checker measure response time?
The check uses the browser's Performance API (performance.now()) to measure the time from when the request is initiated to when the response headers are received. This reflects real-world latency including DNS resolution and TCP handshake.
Why does a website show as 'down' even though I can open it?
This usually means the server is returning a CORS error or blocking requests from browser origins. The site might be up, but its server is configured to reject cross-origin requests. Try checking from a tool that makes server-side requests, like Down For Everyone Or Just Me.
What counts as 'up'?
Any HTTP response with a status code below 500 is counted as 'up' โ this includes 200 OK, 301/302 redirects, 403 Forbidden, and 404 Not Found. A 5xx status (500, 502, 503) or a connection timeout counts as 'down'.
What is the difference between 'down for me' and globally down?
A browser-based check tells you whether your network can reach the server. A site is 'down for you' when your ISP or a regional routing path has a problem. A site is globally down when the origin server itself is offline. To confirm global downtime, compare results from multiple network connections or use a multi-region probe service.
Why is my TTFB slow even though the site loads fine?
TTFB reflects only the server processing time and network latency โ not how fast the rest of the page downloads. A slow TTFB usually points to server-side causes: a slow database query, missing caches, or geographic distance from the server. If your page loads acceptably despite a high TTFB, consider whether a CDN or server-side caching could bring it down for users in distant regions.
Related Articles & Guides
Website Uptime Monitoring: Why It Matters & How to Check
Your website is down. Right now, somewhere in the world, a potential customer is trying to reach you, gettingโฆ
Read guide โArticleWebsite Uptime Checker: Check if a Site is Down & Response Time
Check if any URL is up or down, measure response time, and see HTTP status codes and redirect chains.
Read guide โBlogHow to Analyze Any File Online: Format & Metadata Guide
Every file on your computer carries more information than its name suggests. The three-letter extension atโฆ
Read guide โ