Why Hasn't My DNS Change Propagated Yet?
"Propagation" is a bit of a misnomer. A DNS change doesn't travel anywhere. What actually happens is that resolvers around the world cache the old answer for as long as its TTL (time-to-live) allows, and each one only asks the authoritative nameserver again once its own cached copy expires.
Last updated: August 29, 2026
What TTL actually controls
Every DNS record is published with a TTL, in seconds, telling any resolver that caches it how long it may keep using that cached answer before checking again. If a record's TTL is 3600 (one hour), a resolver that cached the old value ten minutes before you made your change will keep serving that old value for up to fifty more minutes, regardless of how quickly you update the authoritative record.
Why different locations show different answers
There isn't one global DNS cache. There are thousands of independent resolvers (ISP resolvers, public resolvers like those used by browsers and phones, corporate resolvers), each with its own cache state depending on when it last looked up your record. Two people querying from different networks at the same moment can legitimately see different answers, both correct relative to their own resolver's cache.
How long should I actually expect to wait
For an ordinary record change (A, TXT, CNAME, MX), the wait is bounded by whatever TTL was in effect before you made the change, not the new TTL you just set. Nameserver (NS) changes behave differently: they involve the parent zone/registry level too, and conventionally are given up to 24-48 hours, though it's often much faster in practice.
Speeding it up for next time
If you know a change is coming, lower the TTL well in advance (a day or more) so the shorter TTL itself has time to propagate through caches before you make the actual change. Dropping the TTL at the same moment you change the record doesn't help, since the old, longer TTL is still what's cached everywhere.
Query a domain's DNS record across a dozen independent public resolvers spread across the US and Europe to see exactly where a change has and hasn't taken effect.
Frequently asked questions
I lowered the TTL. Why isn't the shorter TTL taking effect immediately?
Because resolvers are still holding the previous cached answer, which came bundled with the old (longer) TTL. The new, shorter TTL only starts applying once each resolver's existing cache entry expires and it re-queries.
Why doesn't flushing my own DNS cache fix it for everyone else?
Flushing your local resolver cache only affects your own machine or network. Every other resolver worldwide has its own independent cache that you have no way to flush remotely. They'll update on their own schedule, based on the TTL they cached.
Is a nameserver change different from an ordinary record change?
Yes. Changing an A/TXT/MX/CNAME record is bounded by that record's own TTL. Changing nameservers involves updating the delegation at the registry/parent-zone level, which is typically slower and conventionally quoted at up to 24-48 hours, even though it's frequently faster.
How can I check where a change has and hasn't taken effect?
Query it against a spread of independent public resolvers in different regions rather than just your own. That's the only way to see the actual real-world cache state rather than one resolver's view.