Severity: Critical · Fix time: 5–15 min · Skill level: Beginner

DNS_PROBE_FINISHED_NXDOMAIN is a browser error — most visible in Chrome — that means the domain name you’re trying to reach could not be found in the Domain Name System. “NXDOMAIN” stands for “Non-Existent Domain”: the DNS resolver returned a definitive “this domain does not exist” response rather than just failing to find it. In WordPress terms, this error prevents any visitor from reaching your site at all — they never get as far as the web server. The browser stops at the DNS lookup step.

This error sits at the very top of the network stack. Unlike most WordPress errors, it has nothing to do with PHP, your database, or any code on your site. The domain itself is either not configured correctly in DNS, recently expired, recently migrated, or there’s a problem with the DNS resolver on the visitor’s device or network.

Both site owners and visitors can trigger this error — sometimes the DNS configuration on the server side is broken, and sometimes the visitor’s local DNS cache has a stale or corrupted record.

Need a quick map of every WordPress error? See our 70+ WordPress Errors Guide → for a categorized reference of every common WordPress issue.

[Image: Chrome browser showing DNS_PROBE_FINISHED_NXDOMAIN error with the “This site can’t be reached” message and the “ERR_NAME_NOT_RESOLVED” sub-code]

How DNS_PROBE_FINISHED_NXDOMAIN Works

Every time someone types your domain name into a browser, their device queries a DNS resolver — usually provided by their internet service provider or a public DNS service like Google’s 8.8.8.8 or Cloudflare’s 1.1.1.1 — to translate the domain name into an IP address. The resolver looks up the authoritative nameservers for your domain, queries them for the A record (or CNAME), and returns the IP.

When the resolver returns NXDOMAIN, it means the authoritative nameservers for the domain’s TLD (like .com or .org) have no record of that domain existing. This is different from a “record not found” at the nameserver level — NXDOMAIN is more definitive. It means either the domain was never registered, has expired, or the domain registrar has removed the DNS zone entirely.

The most common causes in a WordPress context:

  • Domain expired — The most disruptive cause. If the domain registration lapses, the registrar removes the DNS records and the domain returns NXDOMAIN. The site is fully unreachable to everyone.
  • DNS misconfiguration during or after migration — When a site migrates to new hosting, the nameservers or A record must be updated. If the old DNS records were deleted before the new ones propagated, there’s a window where NXDOMAIN is returned.
  • Stale local DNS cache — The visitor’s device has a cached DNS record pointing to a domain that no longer exists or has been modified. Flushing the local DNS cache usually resolves this for individual users without any server-side changes.
  • Incorrect nameserver configuration — The domain registrar is pointing to nameservers that don’t have a valid zone file for the domain. This often happens after a partial migration where the nameservers were changed but the zone wasn’t fully configured.
  • Typo in the URL — A mistyped domain name returns NXDOMAIN by definition — a domain with a typo usually doesn’t exist. Chrome shows DNS_PROBE_FINISHED_NXDOMAIN rather than a more obvious “404 page not found” because the failure happens before any server is reached.
  • Chrome’s separate DNS cache — Chrome maintains its own DNS cache independent of the operating system. Even after flushing the OS-level DNS cache, Chrome may still serve stale records until its own cache is cleared.

Check This First — 2-Minute Diagnostic

This error has both client-side and server-side causes. Narrow it down fast:

  1. Test from a different device or network — If the domain loads on your phone’s mobile data but not your computer, the problem is local (DNS cache, browser cache, or network settings). If it fails everywhere, the problem is with the domain’s DNS configuration.
  2. Check the domain’s status at your registrar — Log into your domain registrar (GoDaddy, Namecheap, Google Domains, etc.) and confirm the domain is active and not expired. An expired domain shows clearly in the registrar dashboard.
  3. Use an online DNS checker — Visit a tool like dnschecker.org or whatsmydns.net and enter your domain. If DNS is propagating correctly, you’ll see the IP address returned from multiple global locations. If you see NXDOMAIN across all locations, the domain’s DNS configuration is the problem.
  4. Flush your OS DNS cache — On Windows: run ipconfig /flushdns in an elevated Command Prompt. On macOS: run sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder in Terminal. On Chrome specifically, navigate to chrome://net-internals/#dns and click “Clear host cache.”
  5. Try a different DNS server — Change your device’s DNS server temporarily to Google (8.8.8.8) or Cloudflare (1.1.1.1) in your network settings. If the site loads after switching, your ISP’s DNS resolver has a bad record for your domain.

Purpose & Benefits

1. Understanding Domain Expiration Risk Before It Happens

A domain expiration that triggers DNS_PROBE_FINISHED_NXDOMAIN is a fully preventable disaster. The domain usually gives months of advance notice via email — but those emails go to the address registered at the time of purchase, which is often a rarely-checked inbox. Understanding how NXDOMAIN works makes it clear that domain expiration is a complete business disruption, not just an inconvenience. Setting domains to auto-renew and keeping registrar contact information current eliminates this risk entirely. Our WordPress maintenance services include monitoring that alerts you before a domain lapses.

2. Minimizing Downtime During Site Migrations

DNS changes during a migration have a propagation window — typically up to 48 hours, though most records update within 1–4 hours with modern TTL settings. If DNS records are modified incorrectly or the old zone is deleted before the new one is live, NXDOMAIN is returned during the gap. Understanding this means building the right migration sequence: create the new DNS records first, verify they’re resolving, then remove the old records — never the reverse. This approach keeps the site accessible throughout the migration.

3. Protecting SEO During Domain and DNS Changes

Every minute your domain returns NXDOMAIN, search engines cannot crawl it. If Google’s crawler encounters NXDOMAIN repeatedly over several days, it begins treating the domain as deregistered and may start de-indexing pages. SEO recovery after an extended NXDOMAIN period can take weeks. Fast diagnosis and resolution — and understanding the difference between a local cache issue and a genuine DNS failure — protects the search equity you’ve built.

Examples

1. Domain Expires and Entire Site Goes Down

A small business owner registers their domain for one year and forgets to enable auto-renew. The registrar sends expiration warnings to an old email address the owner no longer monitors. The domain lapses, the registrar removes the DNS zone, and all visitors begin seeing DNS_PROBE_FINISHED_NXDOMAIN. The fix: log into the registrar, renew the domain immediately, and wait 30–60 minutes for DNS records to repopulate. Most registrars restore the zone records automatically upon renewal. If the domain entered a grace period, there may be a redemption fee. After resolution, enable auto-renew and update the registrar email address.

2. Nameserver Change During Migration Creates NXDOMAIN Gap

A WordPress site migrates from Shared Hosting Provider A to Managed Hosting Provider B. The site owner updates the domain’s nameservers in the registrar to point to Provider B’s nameservers, but Provider B’s DNS zone isn’t fully configured yet — only the nameserver entries exist, with no A records. During the propagation window, DNS resolvers query Provider B’s nameservers, find no records, and some return NXDOMAIN. The fix: always verify that Provider B’s DNS zone contains all required records (A, CNAME, MX, TXT) before updating nameservers at the registrar. Use a staging check at dig @ns1.newhost.com yourdomain.com to confirm records are live before switching.

3. Chrome DNS Cache Returns NXDOMAIN After IP Change

A site owner changes their hosting IP address and updates the DNS A record. Hours later, they’re still seeing DNS_PROBE_FINISHED_NXDOMAIN in Chrome even though other browsers and devices can reach the new IP. The issue is Chrome’s internal DNS cache, which has a longer TTL than the OS cache. Navigating to chrome://net-internals/#dns and clicking “Clear host cache,” then reloading the page, resolves it immediately. No server-side changes needed.

Common Mistakes to Avoid

  • Assuming the site is down for everyone when only you see NXDOMAIN — Test from a second device on a different network immediately. A local DNS cache issue affects only you — the site is running normally for everyone else. Don’t contact your host until you’ve confirmed it’s not a local cache problem.
  • Changing nameservers without verifying the new zone is ready — Switching nameservers before the new DNS zone contains all records creates a guaranteed NXDOMAIN window during propagation. Build the new zone first; switch nameservers second.
  • Using very long DNS TTLs before a migration — If your DNS TTL is set to 86400 seconds (24 hours), changes during a migration won’t propagate for up to a day. Before a planned migration, reduce your DNS TTL to 300 seconds (5 minutes) 24–48 hours in advance, so changes take effect quickly when you make them.
  • Not monitoring domain expiration dates — An expired domain causes complete business disruption: no website, no email, potentially no access to other services tied to the domain. Enable auto-renew at your registrar for every domain you depend on.
  • Forgetting that Chrome has its own DNS cache — Flushing the OS DNS cache doesn’t flush Chrome’s internal cache. If the site loads in other browsers after an OS flush but not in Chrome, chrome://net-internals/#dns → “Clear host cache” is the next step.

Best Practices

1. Enable Auto-Renew and Set Calendar Reminders for Domain Renewal

Log into every domain registrar where you have registered domains and enable auto-renew for each one. Also set a personal calendar reminder 60 days before the expiration date as a backup. Verify that the email address associated with the registrar account is one you actively monitor — expiration warnings go to that address. A domain that expires causes complete NXDOMAIN failure for every visitor, with no graceful degradation.

2. Lower DNS TTL Before Planned Changes

The TTL (Time to Live) value on your DNS records determines how long resolvers cache the record before checking for updates. Before any planned DNS change — migration, IP switch, CDN enablement — lower your TTL to 300 seconds (5 minutes) by editing your DNS records 24–48 hours in advance. This ensures that once you make the actual change, propagation completes in minutes rather than hours. After the migration is complete and stable, raise the TTL back to 3600 seconds (1 hour) or higher:

# Check current TTL on your domain's A record using dig
dig yourdomain.com A

# The answer section shows: yourdomain.com. 3600 IN A 203.0.113.1
# The "3600" is the TTL in seconds (1 hour in this example)
# Lower it to 300 before making changes, raise it after

3. Verify New DNS Records Are Live Before Switching Nameservers

When migrating hosting, always query your new DNS provider’s nameservers directly before pointing your registrar to them. This confirms the zone is configured and ready, preventing NXDOMAIN during the transition:

# Query the new nameserver directly, before switching
# Replace ns1.newhost.com with your new nameserver
dig @ns1.newhost.com yourdomain.com A

# Expected result: your new server's IP address
# If you see NXDOMAIN or empty answer, the zone isn't configured yet

Only update the nameservers at your registrar after this query returns the correct IP.

4. Use Public DNS for Troubleshooting

When diagnosing NXDOMAIN reports from visitors, test using public DNS resolvers rather than your ISP’s resolver. Different resolvers may have different cached states, and testing with Google (8.8.8.8) and Cloudflare (1.1.1.1) gives you a reliable baseline:

# Test with Google DNS
dig @8.8.8.8 yourdomain.com A

# Test with Cloudflare DNS
dig @1.1.1.1 yourdomain.com A

# If both return valid IPs, the domain is resolving globally
# If both return NXDOMAIN, the DNS zone has a problem

5. Monitor DNS Resolution in Your Uptime Monitoring

Most uptime monitoring services (UptimeRobot, Pingdom) check HTTP availability, which catches server-down events. Fewer monitor DNS resolution directly. Consider adding DNS monitoring alongside HTTP checks — a NXDOMAIN failure doesn’t return an HTTP error code; it fails before HTTP. A monitoring check that tests DNS resolution separately from server availability catches domain expiration or DNS misconfiguration immediately, before visitors report it.

Frequently Asked Questions

What causes DNS_PROBE_FINISHED_NXDOMAIN most often?

For site owners, the most common cause is a domain that has expired or a DNS record that was misconfigured during a hosting migration. For individual visitors, the most common cause is a stale local DNS cache — the domain exists and resolves fine for everyone else, but the visitor’s device cached an old or invalid record. The quickest first diagnostic: test from a different network. If it loads there, it’s a local cache issue.

How do I fix DNS_PROBE_FINISHED_NXDOMAIN when locked out of wp-admin?

DNS_PROBE_FINISHED_NXDOMAIN means you can’t reach the server via the domain name at all — wp-admin included. To access your WordPress files, connect directly via SFTP using your server’s IP address rather than your domain name. To fix the DNS itself, log into your domain registrar and hosting control panel to check domain status and DNS records. Your host’s support portal is typically accessible via a URL that doesn’t depend on your domain.

Can DNS_PROBE_FINISHED_NXDOMAIN hurt my SEO?

Significantly, if it lasts more than a day or two. Search engine crawlers check your site regularly. If they repeatedly encounter NXDOMAIN, they interpret it as the domain being deregistered or abandoned. Google may de-index pages after sustained NXDOMAIN responses. After resolving a DNS outage, submit your sitemap via Google Search Console to accelerate reindexing and monitor your SEO positions over the following two weeks.

Why does my site show NXDOMAIN for some users but not others?

DNS records propagate across global resolver networks, and different resolvers cache at different rates. During a DNS change, some resolvers will have the new record while others still have the old one (or its absence). This creates a period where some users can reach your site and others see NXDOMAIN. This is normal propagation behavior and typically resolves within 1–4 hours. Check dnschecker.org to see which regions are resolving correctly.

What’s the difference between DNS_PROBE_FINISHED_NXDOMAIN and ERR_CONNECTION_REFUSED?

DNS_PROBE_FINISHED_NXDOMAIN means the domain name couldn’t be resolved to an IP address at all — the DNS lookup failed before any connection was attempted. ERR_CONNECTION_REFUSED means the domain resolved to an IP address, the browser tried to connect to that IP, and the server actively refused the connection. NXDOMAIN is a DNS layer failure; ERR_CONNECTION_REFUSED is a TCP layer failure. Both feel the same to a visitor but require completely different fixes.

Related Glossary Terms

How CyberOptik Can Help

Still broken? Our team fixes WordPress errors like this in under 30 minutes for maintenance clients. DNS_PROBE_FINISHED_NXDOMAIN can mean a 30-second DNS cache flush or a full DNS configuration rebuild — and knowing which situation you’re in quickly is what prevents a brief hiccup from becoming a multi-day outage. If your domain is down, your SEO is eroding every hour. We diagnose DNS issues, coordinate with hosting providers, and get sites back online fast. Contact us to discuss your site or learn about our WordPress maintenance plans.