You type your domain into the browser, hit enter, and instead of your site you get a blank Chrome error page: DNS_PROBE_FINISHED_NXDOMAIN. No site, no error page from your host, nothing — just Chrome telling you the domain doesn't exist. If you've just launched a new site, moved hosts, or haven't touched your DNS in months, this is one of the most common tickets we see. Here's how to actually diagnose it instead of guessing.
What NXDOMAIN Actually Means
NXDOMAIN is a real DNS response code — it means "non-existent domain." When your browser asks a DNS resolver "where does example.com point?" and the resolver comes back with NXDOMAIN, it's saying it can't find any DNS records for that name at all. This is different from a server-side error (500, 502, connection refused) — those mean DNS worked fine and something is wrong with the server. NXDOMAIN means DNS resolution itself failed before your request ever reached a server.
Common Causes
- Domain not pointed anywhere yet — you registered it but never set nameservers or A records.
- Wrong or stale nameservers — the domain is still using nameservers from a previous registrar or a parking page provider.
- Missing A/CNAME record — nameservers are correct, but the specific record for that hostname (e.g.
wwwor a subdomain) was never created. - Typo in the domain — sounds obvious, but "exmaple.com" will NXDOMAIN every time.
- DNS not propagated yet — you made changes minutes ago and they haven't reached your ISP's resolver.
- Local DNS cache or browser cache — your machine remembers an old failure and won't recheck.
- Domain expired — an expired domain gets pulled from the zone and will NXDOMAIN until renewed.
Step 1: Confirm It's Not Just Your Device
Before touching any DNS settings, rule out local caching. This wastes the least time and fixes the issue surprisingly often.
- Try the domain on your phone with WiFi off (mobile data only). If it loads, the problem is local to your network/device, not the domain.
- Flush your local DNS cache:
ipconfig /flushdns (Windows) sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder (macOS) sudo systemd-resolve --flush-caches (Linux, systemd) - Open
chrome://net-internals/#dnsin Chrome and click "Clear host cache." - Try a different browser or an incognito window.
If it's still broken everywhere, the problem is with the domain's actual DNS — move on.
Step 2: Check What DNS Is Actually Returning
Don't rely on your browser for diagnosis — query DNS directly. From a terminal:
dig example.com
dig www.example.com
dig NS example.com
Look at the ANSWER SECTION. If it's empty and the status says NXDOMAIN, that confirms the DNS server itself has no record — this isn't a caching or propagation illusion, it's a real gap. The dig NS example.com query tells you which nameservers are currently authoritative for the domain. Compare those against what your registrar and your hosting provider expect.
Step 3: Verify Nameservers Match Where DNS Is Managed
This is the single most common cause we see. There are two valid setups, and mixing them up breaks everything:
| Setup | What to check |
|---|---|
| DNS managed at your registrar | Domain's nameservers stay as the registrar's defaults; you add A/CNAME records in the registrar's DNS panel. |
| DNS managed by your host (SkyServer) | Domain's nameservers must be changed at the registrar to point to SkyServer's nameservers (e.g. ns1.skyserver.in, ns2.skyserver.in) — then records are managed inside cPanel's Zone Editor. |
If your nameservers still point to the registrar's default (like GoDaddy or Namecheap parking nameservers) but you're trying to manage DNS in cPanel, none of your cPanel zone edits will ever take effect — the world is still asking the registrar, which has nothing configured.
Step 4: Confirm the Records Exist
If nameservers are correct but a specific subdomain still NXDOMAINs, the record itself is probably missing. In cPanel, go to Domains → Zone Editor, select the domain, and confirm:
- An
Arecord exists for@(the root domain) pointing to your server's IP. - A
CNAMEorArecord exists forwww— this is not automatic just because the root domain works. - Any subdomains you're using (
mail,shop,api) have their own records.
If a record is missing, add it, save, and give it 15-30 minutes before testing again.
Step 5: Check If the Domain Has Actually Expired
An expired domain is pulled from the global DNS zone entirely — every query for it will NXDOMAIN, even though the DNS records you configured are still sitting untouched in your panel. Run:
whois example.com
and check the Registry Expiry Date field. If it's in the past, this is your answer — renew the domain (most registrars allow renewal for a grace period after expiry, but don't count on it).
Step 6: Give It Time If You Just Made Changes
Nameserver changes typically take 2-24 hours to propagate globally, though it's often much faster. New A/CNAME records inside an already-correct zone usually resolve within 15 minutes to a few hours depending on TTL. If you changed anything in the last hour, the honest answer might just be "wait." You can check propagation status across multiple global resolvers using a tool like dig @8.8.8.8 example.com and dig @1.1.1.1 example.com to see if Google's and Cloudflare's public resolvers already have it, even if your ISP doesn't yet.
Prevention
- Set a calendar reminder for domain renewal — don't rely solely on the registrar's email, which can land in spam.
- Enable auto-renewal on domains you depend on.
- When migrating hosts, lower your DNS TTL to 300 seconds a day or two before the move so the eventual cutover propagates fast.
- Keep a written note of which nameservers your domain should be using — it's the first thing to check when something breaks months later and nobody remembers who touched what.
Frequently Asked Questions
Is DNS_PROBE_FINISHED_NXDOMAIN the same as a 404 error?
No. A 404 means the server was reached and responded, but couldn't find that specific page. NXDOMAIN means DNS resolution failed before any server was contacted — the domain effectively doesn't exist as far as that DNS query is concerned.
I just bought the domain a few minutes ago — is this normal?
Yes, this is expected. New domain registrations and nameserver changes need time to propagate across the world's DNS resolvers. Give it a few hours before troubleshooting further.
Why does the domain work on my phone's mobile data but not on my WiFi?
This points to a caching issue with your router or ISP's DNS resolver, not the domain itself. Try restarting your router, or temporarily switch your device's DNS to 8.8.8.8 (Google) or 1.1.1.1 (Cloudflare) to confirm.
Can a firewall or security plugin cause NXDOMAIN?
Not directly — NXDOMAIN happens at the DNS layer, before any firewall on your server gets involved. If DNS resolves correctly but you still can't reach the site, that's a separate, later-stage issue (connection refused, timeout, or SSL error), not NXDOMAIN.
How do I know which nameservers my domain should use for SkyServer hosting?
Check your welcome email or the client area for the exact nameserver addresses assigned to your hosting account, then update them at your domain registrar (not in cPanel) — nameservers are always changed where the domain is registered.
