# DNS_PROBE_FINISHED_NXDOMAIN: how to fix it

> Chrome's way of saying the domain name doesn't resolve at all. The four causes - typo, expired domain, broken records, stale cache - in order.

Published: 2026-07-27 | Updated: 2026-08-05 | Canonical: https://yoping.me/guides/dns-probe-finished-nxdomain

`DNS_PROBE_FINISHED_NXDOMAIN` is Chrome reporting that DNS returned
NXDOMAIN - "non-existent domain." Not slow, not blocked: the resolver is
saying this name has no address. That narrows the search enormously,
because only four things cause it.

## Is it just your machine, or everyone?

Ask a public resolver directly, bypassing every cache between you and
the answer:

```
dig example.com @1.1.1.1 +short
dig example.com @8.8.8.8 +short
```

Both returning an IP means the domain is fine and *your* DNS path is the
problem - skip to the cache section. Both returning nothing means the
domain genuinely doesn't resolve, and it's one of the first three causes.

## Cause 1: the name is simply wrong

Typos produce NXDOMAIN by definition, and so do missing subdomains: the
apex `example.com` can resolve while `www.example.com` has no record, or
the reverse. Check exactly the name from the address bar, character by
character. This is embarrassing exactly as often as it is the answer.

## Cause 2: the domain expired

Registrars pull expired domains out of DNS fast. Check the paper trail:

```
whois example.com | grep -iE 'expiry|expiration|status'
```

`clientHold` or `serverHold` in the status means the registrar has
suspended the name - expiry and unpaid renewal are the usual reasons.
Renewal usually restores resolution within hours.

## Cause 3: the nameserver records are broken

The domain exists but delegation is wrong - nameservers that don't
answer, or answer without the zone:

```
# Who is supposed to be authoritative?
dig example.com NS +short

# Do they actually answer for the name?
dig example.com @ns1.exampledns.com +short
```

An empty answer from your own authoritative server means the zone is
missing or the record was deleted - common after a DNS-provider
migration where a record didn't make the trip.

## Cause 4: a stale cache on your side

If public resolvers answer but your browser doesn't:

```
# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
```

Then Chrome's own cache: open `chrome://net-internals/#dns` and click
"Clear host cache." VPNs and corporate resolvers add their own layers - toggling the
VPN is a fast differential.

## How do you find out before your visitors do?

NXDOMAIN failures are the quietest outage there is - your site's server
is perfectly healthy while nobody on the internet can find it. An
external check catches it because it resolves the name fresh, from
outside: YoPingMe does that from both of your check regions on every run
and pages you on email, webhook, or Slack when they agree.
[Ten monitors free](https://app.yoping.me/signup), including the domain you
forgot expires next month.
