← All guides DNS · NXDOMAIN

DNS Not Resolving: Why Your Domain Won't Load

$ dig example.com +short (no output — NXDOMAIN)

If a site "won't load" and the browser tab spins forever or shows "This site can't be reached," DNS is one of the first things worth ruling out. Before your browser can even talk to a server, it has to translate a domain name like example.com into an IP address — and if that lookup fails, nothing else matters.

What's actually happening

Every domain has nameservers on file with its registrar, and those nameservers hold DNS records (A, AAAA, CNAME, and others) that map the domain to an IP address. When DNS "isn't resolving," one of a few things is usually true: the nameservers themselves aren't responding, the required records were never created, a recent change hasn't finished propagating, or the domain is pointed at nameservers that no longer control anything.

How to check it

Common causes, and the fix for each

Nameservers point to the wrong provider

If you moved your DNS management (say, from your registrar to Cloudflare) but never updated the nameservers at the registrar, the domain is still asking the old provider for records that don't exist there anymore. Log in to your registrar and confirm the nameservers listed match where your DNS is actually managed.

The record was never created, or was deleted

A missing A record (for IPv4) or AAAA record (for IPv6) at the apex domain or a missing CNAME for a subdomain like www is one of the most common causes for a brand-new site. Check your DNS provider's dashboard directly rather than assuming the record exists.

Propagation hasn't finished

DNS changes aren't instant. Depending on the TTL (time-to-live) set on the previous record, it can take anywhere from a few minutes to 48 hours for changes to be visible everywhere. If you just made a change, that's often simply the wait.

A typo in the record

A single wrong character in an IP address or a CNAME target is enough to break resolution entirely. Double-check the exact value against what your host or platform documentation specifies.

Quick checklist
  • Confirm nameservers at the registrar match your actual DNS provider
  • Confirm the A/AAAA/CNAME record exists and has the correct value
  • Check the TTL and allow time for propagation after any change
  • Test from a couple of different networks or a propagation checker