Advertisement
Seven public resolvers plus your own nameservers

DNS Propagation Checker
Why your change has not taken effect yet

Enter a domain and this tool asks seven public resolvers what they are handing out right now, then asks every one of your own nameservers directly with recursion switched off. It shows the seconds remaining on each cached answer, compares your registrar’s delegation against your zone, and tells you whether you are waiting on caches or looking at a problem that waiting will never fix.

Check DNS propagation for any domain

Enter the domain, pick the record type you changed, and — if you know it — the value you are waiting for.

Quick answer: how do I check if DNS has propagated?

Ask several independent resolvers the same question and compare the answer sets they return, then ask the domain’s own nameservers directly. If the nameservers agree with each other and the resolvers differ, you are waiting on cached copies and the TTL tells you how long. If the nameservers themselves disagree, or the registry lists different nameservers than your zone does, waiting will never fix it.

Advertisement
Robert Harrison, OSINT & Network Utility Expert, on DNS propagation at TrustMyIP.com
Written & Verified By

Robert Harrison

OSINT & Network Utility Expert

Robert works on DNS, ports, SSL and the network utilities that sit underneath them, helping administrators audit domain infrastructure and read what the protocol is actually telling them.

This tool was built to answer the question a flag grid cannot: not how many servers have the new answer, but whether the answer is right at the source. Before release its analysis was driven through 145 assertions against hand-built DNS responses — one for every verdict it can reach, plus a rotating multi-address record, a nameserver answering without authority, a missing glue record, a registry that disagrees with the zone, and 30,000 random buffers through the response parser.

Last reviewed 23 September 2026 · Published 23 September 2026

View all articles by Robert Harrison
Advertisement

What DNS Propagation Actually Is — and Why Nothing Propagates

Nothing spreads outward across the internet when you change a DNS record. The moment you save it, your own nameservers serve the new value to anyone who asks. What you are waiting for is the opposite of spreading: you are waiting for other people’s computers to forget the old value. “Propagation” is a misleading name for the expiry of thousands of independent timers.

Every answer a resolver receives arrives stamped with a TTL. RFC 1035 section 4.1.3 defines it as “a 32 bit unsigned integer that specifies the time interval (in seconds) that the resource record may be cached before it should be discarded.” That number is permission you gave in advance. A resolver that fetched your old address one minute before you changed it, with a one-hour TTL, is behaving perfectly correctly when it keeps serving that old address for the next fifty-nine minutes.

This is why the question “has it propagated yet” has no single answer. Different resolvers fetched your record at different moments, so their copies expire at different moments. The check above does not try to produce a percentage out of that; it shows you which distinct answers exist right now, how long the stale ones may still be served, and — the part that actually decides what to do next — whether the record is correct at its source. For the step-by-step version of what to change and when, our guide on fixing DNS propagation delay for new domains covers the procedure; this page is about reading the state you are in.

Advertisement

Key fact: a TTL of zero is a real instruction, not an empty field. RFC 1035 section 3.2.1: “Zero values are interpreted to mean that the RR can only be used for the transaction in progress, and should not be cached.” If you see a zero TTL in the results above, that record is not being cached anywhere and there is nothing to wait for.

How to Read Your DNS Propagation Check Result

The verdict is one of eight states, and each one implies a different next action. Four of them mean stop waiting and go and change something. There is no score and no percentage, because a number would hide exactly the distinction that matters: whether the problem is in someone else’s cache or in your own zone.

VerdictWhat it meansWhat to do
ConvergedEvery resolver that answered, and every one of your nameservers, returns the same set.Nothing. It is done.
Still clearingYour nameservers agree; some resolvers hold something else.Wait. The countdown shows the longest remaining copy.
Negative cacheYour nameservers have the record, but most resolvers are still answering “no such record”.Wait for the SOA minimum, not the record TTL. See the negative caching section.
Not publishedEvery nameserver of yours answered, and none has this record.Check the zone and host name where you saved it. Waiting cannot help.
Not convergingYour own nameservers disagree with each other, or their SOA serials differ.A zone transfer problem at your DNS provider. Waiting cannot help.
Delegation problemThe registry and your zone name different nameservers, or in-zone nameservers have no glue.Fix it at the registrar, not the DNS host.
No such domainThe registry says the name does not exist.Check the spelling, the registration and the expiry date.
No verdictToo few servers replied in time to compare anything.Try again in a minute. An honest blank beats a confident guess.

One detail is worth knowing before you read the table of answer sets: the comparison is between sorted sets, never first records. A domain with several addresses hands them out in a rotating order, so a naive comparison would show seven different answers for a domain where nothing is wrong at all. If you want the full record inventory for a domain rather than a propagation check, our DNS lookup tool lists every type at once.

Advertisement

Your Own Nameservers Are the Only Ones That Matter

Public resolvers can only ever tell you what they were given some time ago. Your own nameservers tell you the truth right now. So this tool asks each of them directly, by address, with the recursion-desired bit switched off — which means “answer from your own zone, do not go and look this up for me”. A server that is genuinely authoritative for the zone sets the AA flag in its reply. One that answers without it is not speaking for your zone, and that is reported separately as not authoritative rather than being mixed in with the real answers.

Why the SOA serial is in the table

Most zones have one primary nameserver and one or more secondaries that copy the zone from it. Each copy carries a serial number in the zone’s SOA record, and the secondaries use it to decide whether they need a fresh copy. If two of your nameservers report different serials, they are serving different versions of your zone. That is the classic invisible fault: half the internet gets the new record and half gets the old one, forever, and no amount of waiting changes it because both servers think they are right.

Seeing it requires asking each server individually, which is precisely what a resolver will never do for you — it picks whichever nameserver answers fastest and caches that. If the serials in your result differ, the fix is at the DNS provider: force a zone transfer, or find out why one secondary has stopped pulling.

Advertisement

Do it yourself: the same question from a terminal is dig @ns1.example.com example.com SOA +norecurse, repeated once per nameserver. Compare the serial in each answer. Our guide to finding a website’s server address covers the surrounding commands.

Delegation: When the Registry and Your Zone Disagree

Two separate systems both hold a list of your nameservers. Your registrar pushes one list into the registry for your extension — that is the delegation, and it is what the rest of the internet follows. Your DNS host publishes another list inside the zone itself. They are supposed to match. When somebody moves DNS provider and only updates one of them, they do not.

A recursive resolver hides this problem rather than showing it, because it follows the registry’s list and hands you back whatever it finds. To see the disagreement you have to ask the parent zone directly, with recursion off, which is what the delegation panel above does: it walks down from the root, asks the registry for your extension what it holds for your domain, and compares that with what your own nameservers say.

Glue records, and the failure that looks like nothing happening

If your nameservers are named inside the domain they serve — ns1.example.com serving example.com — there is a bootstrapping problem. To find ns1.example.com a resolver must ask example.com’s nameservers, which is the thing it is trying to find. The registry breaks the loop by publishing the nameservers’ addresses alongside the delegation. Those are glue records. Without them nothing resolves, and the symptom is the one that brings people to a propagation checker in the first place: three days have passed and absolutely nothing has changed.

Glue is set at the registrar, usually under a name like “host records”, “registered nameservers” or “private nameservers”. If you are not sure which company is your registrar, a WHOIS lookup names it. If a name resolves nowhere at all rather than to the wrong place, our guide to fixing “IP address not found” errors covers the wider set of causes.

Why a Record You Just Added Still Shows as Missing

There is a second kind of caching, and almost nobody is told about it. When a resolver asks for a name that does not exist, it does not just shrug — it remembers the absence. That memory has its own lifetime, and the lifetime does not come from the record you just created, because there was no record to carry a TTL. It comes from your zone’s SOA.

RFC 2308 section 4 makes this explicit: the SOA minimum field is “the TTL to be used for negative responses”. So if your SOA minimum is 3600, a resolver that asked one minute before you published can keep telling people the record does not exist for the next hour, and re-checking will not shorten it by a second.

This is the single most common reason a brand-new record “has not propagated”, and it is why the verdict above treats it as its own state rather than lumping it in with ordinary caching. The two need different waits: ordinary caching clears in one record TTL, negative caching clears in one SOA minimum, and those numbers are often very different.

Worth checking on your own zone: RFC 2308 section 5 observes that “values of one to three hours have been found to work well” for negative caching, and that “values exceeding one day have been found to be problematic”. If the negative caching panel above shows a day or more, that is a setting worth lowering before your next change, not after it.

Reading the Countdown: What the Remaining TTL Tells You

The TTL shown next to each resolver is not the TTL you configured. It is what is left of it: the number of seconds that resolver may still serve the copy it holds. That difference turns a vague “up to 48 hours” into an actual clock, and it carries a second piece of information most people miss.

If a resolver is serving an answer that differs from your nameservers and its remaining TTL is close to your full configured TTL, that copy was fetched moments ago. A copy fetched moments ago is not a stale cache. It means that resolver was given a different answer — which happens when a domain deliberately serves different addresses by location, when a nameserver is out of sync, or when something between the resolver and your zone is not what you think it is. The tool surfaces that as evidence and stops there, because from a single vantage point those explanations are indistinguishable.

Checking it yourself

# What one resolver is holding, and how long it may keep it

dig @1.1.1.1 example.com A

# What your own nameserver says, with recursion off

dig @ns1.example.com example.com A +norecurse

# The delegation the registry publishes, not your zone's own copy

dig @a.gtld-servers.net example.com NS +norecurse

# Avoid ANY: since RFC 8482 a server may answer it with one synthesised record

Run the first command twice a minute apart and the TTL will have fallen by roughly sixty. That falling number is the whole of “propagation”. If you want to watch a server actually respond rather than watch a cache expire, our ping test answers the different question of whether the machine at the other end is up.

What This DNS Propagation Check Cannot See

Every query on this page leaves one server in one location. What varies between the rows is which resolver was asked, not where the asking happened. That is a real limit and it is worth stating plainly, because a grid of country flags implies something this method does not provide.

  • Anycast. All seven of these resolvers run the same address from many sites at once. We reach whichever site is nearest to our server. A visitor elsewhere may be served by a different machine with a different cached copy, and it will not appear here.
  • Your visitors’ own resolvers are invisible. Most people use whatever their ISP, their employer or their router hands them. None of those can be queried from outside, and a corporate resolver with a long minimum cache can lag everything shown here.
  • Why, not just what. When two resolvers differ, this page says they differ. It does not say why, because a stale cache, a withheld answer and a deliberately location-specific answer produce identical evidence from one vantage point. Any tool that tells you the reason is guessing.
  • One moment in time. A TTL that reads 40 seconds will read 10 seconds half a minute later. The result is a snapshot, which is why the shareable link re-runs the check rather than storing an old one.

The part that is not a snapshot, and not subject to any of the above, is the answer your own nameservers give. That is why the verdict is anchored there. Two related checks complete the picture from a different angle: our reverse IP lookup shows what else lives at the address you are being sent to, and the cluster’s background explainer, how DNS resolves domain names to IPs, walks the whole query path from browser to authoritative server.

How the queries are sent: every lookup on this page goes out on its own UDP socket, which gives each one an unpredictable source port. RFC 5452 section 9.2 asks resolver implementations to “use an unpredictable source port for outgoing queries” and “use an unpredictable query ID”; sending them in parallel rather than one after another satisfies both and is also why a check of roughly thirty queries finishes in well under a second.

Frequently Asked Questions About DNS Propagation

Why is my DNS not propagating?

Nothing is stuck in transit — there is no such thing. What is actually happening is that resolvers around the world are still serving an answer they cached before you made the change, and they are entitled to keep it until its TTL runs out. The check above separates the two cases that matter: if your own nameservers already serve the new record, you are only waiting on caches. If they do not, the change never reached your DNS provider and waiting will not help.

Why do different DNS checkers show different results?

Because they are asking different resolvers at different moments, and each resolver has its own independently expiring copy. A difference between two resolvers is real information; the reason behind it is not visible from outside. A stale cache, a resolver that filters some names, and a domain that deliberately answers differently by location all look identical from one vantage point, which is why this page reports that they differ and never guesses why.

My nameservers were changed two days ago and nothing has happened. What now?

Two days is well past any normal cache lifetime, so the problem is almost certainly not caching. Look at the delegation panel. If the registry still lists your old nameservers, the change was not saved at your registrar or has not been pushed to the registry. If the registry lists nameservers that live inside your own domain and shows no glue, resolution cannot even start. Both are fixed at the registrar, not at the DNS host.

Why does my new record show as "not found" instead of showing the old value?

That is negative caching, and it is a different mechanism from ordinary caching. When a resolver asks for a name that does not exist yet, it is allowed to remember the absence — and RFC 2308 makes the lifetime of that memory the SOA minimum field of your zone. If your SOA minimum is an hour, a resolver that asked one minute before you published can keep saying "no such record" for the next hour, no matter how many times you check.

Can I make DNS propagate faster?

Not retroactively. Once a resolver has been given an answer with a one-hour TTL, nobody can shorten that hour from the outside — not you, not your DNS provider. What you can do is prepare: lower the TTL on the record a day before a planned change, make the change, then put the TTL back. Flushing your own machine only clears your own copy. Our guide on fixing DNS propagation delay walks through the full sequence.

What does the TTL number next to each resolver mean?

It is the number of seconds that resolver is still allowed to serve the copy it is holding, counting down in real time. It is not your configured TTL — it is what is left of it. A resolver showing a number close to your full TTL was refreshed moments ago, which is useful: if it is serving an answer that differs from your nameservers and its copy is only seconds old, that is not a stale cache, it was handed a different answer.

How do I query a specific nameserver myself?

With dig on Linux or macOS: dig @ns1.example.com example.com A +norecurse asks that one nameserver and nothing else. On Windows, nslookup example.com ns1.example.com does the same job. Avoid ANY queries — since RFC 8482 a server may answer them with a single synthesised record, which makes a healthy domain look almost empty.

Does this tool check from 30 countries?

No, and it says so. Every query on this page leaves one server in one place. What varies is which resolver is asked, not where the asking happens. Those seven resolvers are anycast networks, so we reach whichever of their sites is nearest to us — a visitor in another country may be talking to a different machine with a different cached copy. That limit is why the panel your own nameservers answer is the one that decides the verdict.

Related DNS and domain tools

A propagation check answers one question. These answer the ones that usually come next.

Now check what the domain is actually publishing

Once the answer has settled, the next question is usually whether every other record is right too — mail, verification, certificate authority.

Last updated 23 September 2026 · queries sent live over UDP port 53 to public resolvers and to the domain’s own nameservers