The site won't load. Is it down for everyone — or is it your connection, your DNS, your network? Here's the quick checklist, and how to stop finding out from your customers next time.
Updated August 2026 · 6 min read
curl -I https://yoursite.com.
200/301/302 = server alive. 500/502/503 = real outage. Timeout = host or DNS issue.nslookup yoursite.com and compare with the
IP your host documents. A mismatch means DNS, not downtime.$ curl -I https://yoursite.com HTTP/2 503 # down for everyone — call your host HTTP/2 200 # up from here → the problem is local
A single check answers "is it down now". But customers ask a different question: "when was it down, and for how long?" A site that flickers for two minutes at 3 AM never gets noticed manually — except by the customers who tried to buy.
The fix is monitoring that runs itself: a short interval, a notification when the response fails, and history you can inspect afterwards. DeskUptime does exactly that from your menu bar — no cloud account, no monthly fee:
Try it on another network (mobile data). If it works there, the problem is local. If not, check your host's status page or use a tool that probes the site externally — such as DeskUptime, which runs on your own machine.
Common causes: a stale local DNS cache, ISP routing problems, VPN/corporate firewalls blocking the domain, or cached content. Flush your DNS cache and try a private window first.
Yes — run curl -I https://example.com in a terminal. A 200 means the server is up; 5xx means a real server error; a timeout suggests hosting or DNS trouble. But manual checks only answer 'is it down right now' — automatic alerts need monitoring software.
A desktop app like DeskUptime runs locally and notifies you on your machine — a one-time cost instead of the typical $10–30/month cloud services charge. For mission-critical production sites, keep an external service as backup coverage.