Troubleshooting guide · website-errors · Published 2026-08-15 · 4 min read

Website not loading at all

Diagnose why a website will not load at all: walk DNS, connection, server and TLS in order, and separate a not loading site from a blank page.

Not loading versus blank

The request never reaches a usable answer. The browser has no HTML, no status, no error page of its own; it just waits or shows one of the DNS or connection errors. A blank page is different: the server answers with 200 and a body that renders empty, and that case has its own article. This one covers the chain that stops before a server responds.

The difference matters because the fixing is drawn at the same line. If the browser does open the page but it is white, the error is in the render, not the network.

The four steps that must work

For a page to load, four steps have to succeed in order. The error at each step has a recognizable name in the browser. Small table:

Failing stepError textExample
DNS resolutionERR_NAME_NOT_RESOLVEDDomain deleted, record removed
TCP connectionERR_CONNECTION_TIMED_OUT, ERR_TIMED_OUTFirewall, dead host
Server rejectsERR_CONNECTION_REFUSEDWeb server not listening
TLS handshakeSSL_PROTOCOL_ERROR or a certificate pageCertificate expired
Nothing returnsLong spinnerServer hung, disk full, DB down

Test the chain in order

  1. Start with a private window. If the site loads there, the browser, a proxy, or an extension was the blocker, not the webserver.
  2. Test from outside your network. Open an independent uptime checker or a second device on a different network. If the site loads there, the problem is local, likely DNS or ISP. If it fails everywhere, the problem is on the site or host.
  3. Resolve the DNS step. From the terminal: nslookup example.com, or Resolve-DnsName example.com on Windows. NXDOMAIN means no record answers at all. A time out means the DNS server did not answer.
  4. Check the web server. curl -sI https://example.com/. A HTTP/1.1 line is the server answering; a hang after connection means the server is stuck.
  5. Check the edge. If the site sits behind a CDN like Cloudflare, its code 522, 523 or 524 points back to the origin. The edge being up does not prove the origin is.

When it loads on some devices but not others

When the failing step is the server

If the chain survives the browser and the DNS, read the server. The classic causes of "will not load at all, everywhere":

Each of these has its own article. dns-propagation-and-resolution covers the record steps, and http-500-internal-server-error covers the server side if the site loads but errors, plus the connection-timed-out article for the timeouts. Verify the DNS and the server before blaming the code; a site that loads for other people but not for you is usually a local DNS problem.

The outcome

Use the symptom to pick a step, fix that step, and prove the fix with a private window and a curl status check. The moment the connection, the DNS, and the server answer 200, the problem has moved to the page, not the network, and the blank section of this library takes over.

Need a website built, fixed, optimised, migrated or replaced?

This technical resource is written by CSMBAC, a small design and development studio. If you would rather hand the problem to a professional, the website service page explains how we build enquiry-ready websites.

Explore website services