tools.x7.al › DNS Propagation Checker

DNS Propagation Checker

After you change a DNS record it does not appear everywhere at once. This tool asks several independent public resolvers for the same record and shows what each one currently returns, plus the TTL and whether the answers agree. If every resolver returns the same values, the change has propagated; differences mean some caches are still serving the old answer.

Enter a bare domain — e.g. example.com or www.example.com.

Advertisement

Why DNS "propagation" takes time

There is no central server that all of the internet updates at once. DNS is a hierarchy of caches, and each cache keeps an answer only for as long as the record's TTL (time to live) allows. When you change a record, the authoritative name servers answer with the new value immediately — but recursive resolvers around the world still hold the previous answer until their copy expires. What people call "propagation" is really those caches ageing out, one by one.

That is why the same name can resolve differently depending on who asks and when. A resolver in one network may have refreshed already while another still answers from a cache filled minutes ago. Eventually every caches expires and everyone agrees — usually within the TTL of the record that was changed.

TTL is the lever

The TTL on a record tells resolvers how many seconds they may cache it. A record with a TTL of 3600 (one hour) can keep an old value alive for up to an hour after you change it; a TTL of 300 (five minutes) refreshes far faster. To make a planned change roll out quickly, lower the TTL well before the change (so the short TTL is already cached everywhere), make the change, then raise the TTL again afterwards.

The TTLs you see here vary between resolvers because each one counts down from the moment it cached the answer — a resolver that just refreshed shows a value close to the original TTL, while one that cached a while ago shows a smaller number. The lowest TTL across resolvers tells you roughly how long until the last cache expires.

Reading the results

  • All resolvers agree — the record has propagated. Every resolver returns the same value(s).
  • Resolvers disagree — some caches still hold the old value; wait for the TTL to expire and check again.
  • Unreachable / timeout — a resolver did not answer in time; this is about the resolver, not your record.
  • NXDOMAIN / no records — the name does not exist, or it has no records of this type.

Common causes of "stuck" propagation

  • A high TTL left in place. The old answer stays cached for hours. Lower the TTL before changing anything.
  • Your own device or ISP resolver. It may cache longer than the record's TTL in practice — flush your local cache or your router's.
  • Editing the wrong zone. The record lives at a different provider than you think, so nothing actually changed.
  • Negative caching. A recent NXDOMAIN for the name is itself cached for a period, delaying the new record.
  • Waiting on the registrar. Changing the delegation (name servers) is not the same as changing a record, and can take much longer.

Privacy and limits

We query a fixed set of public resolvers plus this server's own resolver and compare the answers. These resolver addresses are fixed, run only standard DNS queries, and requests are rate-limited per IP and cached for under a minute.

Advertisement