Utinzo

DNS Propagation Checker

Check whether your DNS changes have propagated across Cloudflare, Google, and Quad9 resolvers worldwide.

Did this tool work for you?

How to use this calculator

  1. 1

    Enter the domain name whose DNS propagation you want to check.

  2. 2

    Select the record type you recently changed.

  3. 3

    Click "Check Now" to query Cloudflare, Google, and Quad9 resolvers simultaneously.

  4. 4

    If all resolvers show the same value, propagation is complete.

Frequently asked questions

Which servers does the tool ask?

Three public recursive resolvers over DNS-over-HTTPS: Cloudflare, Google and Quad9. Each query has an 8-second timeout, and a resolver that fails to answer is shown as TIMEOUT. It does not query your authoritative name servers, local ISP resolvers or servers in specific countries, so it is a sample of three, not a worldwide map.

What does Consistent across checked resolvers mean?

The tool joins each resolver’s answer into a text string and compares the three strings. If they are identical, it reports consistent. It does not compare the answers with the value you expect, so three resolvers returning the same old address would still show as consistent. Check the Records column against your new value yourself.

Why does it say inconsistent when the records look the same?

The comparison ignores the order of records and removes duplicates, so the same set returned in a different order counts as consistent. It is still flagged as inconsistent if the resolvers return different sets, which is normal for geo-routed DNS, CDNs and some round-robin setups that give different addresses by resolver location. Read the Records column before concluding that a change has not propagated.

Is DNS propagation really a thing?

DNS changes are not pushed anywhere. Resolvers cache an answer for the TTL (time to live) set on the record, so after you change a record, each resolver shows the old value until its cached copy expires and then fetches the new one. That is why the resolvers can disagree for a while. Lowering the TTL well before a planned change shortens the window.

What do the Status values mean?

Status is the response code from the resolver, such as NOERROR when the name exists, or NXDOMAIN when it does not. An answer with NOERROR and No records means the name exists but has no record of the type you asked for. A name that has not existed can be remembered by a resolver for a time, which is called negative caching, so a newly created record may be missing on one resolver for a while.

Which record types can I check, and can I check a subdomain?

The menu offers A, AAAA, MX, NS, CNAME and TXT. You can enter a subdomain such as www.example.com or mail.example.com. TXT answers are shown with their quotation marks. Other types, such as SRV or CAA, are not available.

Does it show the TTL or which name server answered?

No. The table shows the resolver name, the status and the record data only. To see a record’s TTL or to query your authoritative servers directly, use the DNS lookup tool or a command-line tool such as dig.

About dns propagation checker

Checking a DNS change against three public resolvers

What happens when DNS records change

When you edit a record at your DNS provider, the authoritative name servers change immediately, but resolvers around the world hold copies of the previous answer until its TTL runs out. A record with a TTL of 3600 seconds can keep serving the old value for up to an hour after you change it; one with 86400 seconds can take a day. Changes to the name servers themselves also depend on the delegation data held at the top-level domain. This is the phenomenon people call propagation. It is cache expiry rather than a broadcast, which is why different resolvers can give different answers at the same moment.

How the tool tests it

The tool sends the same question for your domain and chosen record type to the DNS-over-HTTPS endpoints of Cloudflare, Google and Quad9, and shows one row per resolver.

What each result column shows
Column or lineMeaningNotes
ResolverCloudflare, Google or Quad9Fixed set of three
StatusResponse code such as NOERROR or NXDOMAINTIMEOUT if no answer in 8 seconds
RecordsRecord data joined by commasNo records if the answer is empty
Propagation lineCompares the three Records stringsOrder-insensitive (sorted, duplicates removed); does not compare with your expected value

Example inputs and how to read them

After moving a site to a new host, enter the domain with record type A and compare each row with the IP address your host gave you. If one resolver still returns the previous address, it is still holding the cached answer, and waiting for the old TTL to expire is the fix. For email changes, choose MX and check that every row lists the new mail servers, including priority numbers. When you add a verification token, choose TXT and look for the token string in all three rows. For a delegation change, choose NS. If all three rows show NXDOMAIN, check the spelling of the name and whether the record was created at the right host name.

Interpreting disagreement

Three matching rows suggest the public caches have caught up with your change, but they do not prove that every resolver has, and they do not show a local cache on your router or computer, which can lag behind. A mixed result is expected in the first hours after a change and is only a concern if it persists well beyond the old TTL. In that case, check that the change was saved at the correct DNS provider, that the domain’s NS records point to that provider, and that no second record of the same type conflicts with it.

DNS Propagation Checker – Utinzo

Learn more from an authoritative source:

MDN Web Docs
Related tools

Results are estimates for informational purposes only and do not constitute professional financial, medical, legal, or technical advice. Read full disclaimer →