How the DNS propagation check works
The tool asks the same question to 10 public resolvers at once: Cloudflare, Google, Quad9, OpenDNS, AdGuard, Verisign, Yandex, Level3, CleanBrowsing and ControlD. When they all return the same value, your change is visible to the users of all of them. When they disagree, some still serve the old answer from their cache.
There is no single moment when DNS propagation finishes. Each resolver drops the old answer when the TTL it received with it expires, so the real waiting time is the TTL your record had before the change, not a fixed 24 or 48 hours.
Speeding up the next change
Lower the TTL of the record, for example to 300 seconds, a day before you change it, wait for the old TTL to expire, make the change, then raise the TTL again. Resolvers will then refresh within five minutes instead of hours.
Frequently asked questions
How long does DNS propagation take?
As long as the TTL of the old record. A record with a TTL of 3600 is fully replaced within an hour of the change. Values of 24 to 48 hours mostly apply to name server (NS) changes at the registry, where TTLs are long.
Why do some resolvers show the new value and others the old one?
Each resolver cached the old answer at a different moment, so each one expires it at a different moment. Until they all have, results disagree. That is normal and resolves itself.
Can I force a resolver to refresh?
Some public resolvers offer a cache purge page, such as Google Public DNS and Cloudflare 1.1.1.1. For the others, you have to wait for the TTL to expire.