DNS Propagation Explained
Quick answer
DNS propagation usually means old answers remain in resolver caches after a record changes. The previous answer’s remaining TTL gives a starting estimate, not a universal deadline. Compare the authoritative nameservers with recursive resolvers to separate unpublished changes from cached data. Lower TTL before a planned migration and keep the old service available during the transition.
On this page
What you'll learn
- Understand how DNS caching drives propagation timing across recursive resolvers
- Learn the relationship between TTL values and propagation speed for different record types
- Use dig and other tools to check propagation status from multiple vantage points
- Apply pre-change TTL reduction strategies to minimize downtime during DNS migrations
DNS propagation is the informal name for the period when caches still hold old DNS answers after an authoritative change. The change is not actively pushed to all DNS servers worldwide; recursive resolvers refresh it when their cached copy expires or is evicted.
If you are starting from the broader term "cache," read What Is Cache first. This guide focuses on how DNS resolver caches make record changes appear gradually across the internet.
Check a DNS Change Now
Open the DNS propagation checker and compare the affected record across its available resolvers. Then query each authoritative nameserver directly to confirm the new value is published.
| What you see | Next step |
|---|---|
| Authoritative servers disagree | Fix publication or zone synchronization before waiting for caches. |
| All authoritative answers are new; some resolvers are old | Check the remaining TTL of the old answer and retain the old endpoint during the transition. |
| Public checks are new; one device is old | Check local DNS, VPN or split-DNS settings, application caching, and existing connections. |
| NXDOMAIN or SERVFAIL | Check negative caching or validation and delegation errors. |
How DNS Propagation Works
DNS is a distributed, heavily cached system. Here's what happens when you change a record:
- You update the A record for
example.comfrom192.0.2.1to198.51.100.1in DNScale - The authoritative nameserver (DNScale) starts serving the new record
- Recursive resolvers (like Google DNS, Cloudflare DNS, ISP resolvers) still have the old record cached
- Each resolver keeps serving the old IP until its cached copy expires based on the TTL
- After the TTL expires, the resolver fetches the new record from the authoritative server
- Gradually, resolvers that previously cached the answer pick up the change
One resolver's 5-minute cache window
The normal cache window follows the remaining TTL of the old answer. Authoritative publication, parent delegation, negative caching, and application behavior can add separate delays.
The Relationship Between TTL and Propagation
TTL (Time to Live) is the single biggest factor controlling propagation speed. Every DNS response includes a TTL value that tells resolvers how long to cache the answer.
If your A record had a TTL of 3600 (1 hour), most resolvers will serve the old record for up to 1 hour after you make a change. If the TTL was 86400 (24 hours), it could take up to a full day. Use the TTL that was in effect before the change to estimate ordinary cache expiry. It is not a guarantee that every client will switch at that deadline.
This is a common point of confusion. If you change a record and set the new TTL to 300 seconds, but the old record had a TTL of 86400, resolvers that cached the old record will still hold it for up to 24 hours. The new TTL only takes effect once resolvers fetch the fresh record.
For detailed TTL strategies, see DNS TTL Best Practices.
What Affects Propagation Time
Resolver Caching Behavior
Not all resolvers respect TTL exactly:
- Some resolvers enforce a minimum TTL (e.g., they won't cache for less than 30 seconds)
- Some enforce a maximum TTL (e.g., capping at 24 hours even if you set 7 days)
- A few resolvers may cache slightly beyond the TTL
Resolvers may also use serve-stale behavior to preserve availability when fresh answers cannot be obtained. That is a separate condition from normal TTL expiry.
ISP DNS Servers
Compare the affected ISP resolver with the authoritative servers and other resolvers. An old result may come from an upstream cache, a stale local answer, split DNS, or inconsistent authoritative servers. Identify the source before attributing the delay to the ISP.
Nameserver Changes
A nameserver change updates the delegation in the parent zone, usually through your registrar. The parent NS and glue TTLs matter alongside the child zone's data. Changing a domain's nameservers does not normally change the root zone. Lowering the child SOA or record TTL does not lower the parent delegation TTL; keep old and new providers serving consistent data through the observed delegation window.
Negative Caching
If a resolver previously queried a record that did not exist, it caches the negative result (NXDOMAIN) using the smaller of the SOA record TTL and SOA.MINIMUM. Creating a new record after a negative cache entry means resolvers may still return "not found" until that negative cache expires.
Typical Propagation Times
| Change Type | Typical Time | Why |
|---|---|---|
| Record update (A, CNAME, MX, etc.) | Minutes to hours | Depends on the previous TTL |
| New record added | After authoritative publication, or after a negative cache expires | A previous NXDOMAIN or NODATA answer may be cached |
| Record deleted | Minutes to hours | Old cached entries must expire |
| Nameserver change | Parent publication plus delegation/cache lifetimes | Inspect parent NS and glue TTLs; allow provider overlap |
| TTL reduction | Up to the old TTL | Resolvers cache at the old, longer TTL first |
How to Check DNS Propagation
Using dig
Query different DNS server types to see what they're returning:
# Query Google DNS
dig example.com @8.8.8.8
# Query Cloudflare DNS
dig example.com @1.1.1.1
# Query your authoritative server directly
dig example.com @ns1.dnscale.eu
# Check only the answer, short format
dig +short example.com @8.8.8.8
# Check the TTL remaining on the cached record
dig example.com @8.8.8.8 | grep -A1 "ANSWER SECTION"If the authoritative server returns the new IP but public resolvers still show the old one, propagation is in progress. The remaining TTL in the resolver's response tells you approximately how long until that resolver refreshes.
Comparing Multiple Resolvers
# Quick propagation check across major resolvers
for ns in 8.8.8.8 1.1.1.1 9.9.9.9 208.67.222.222; do
echo "$ns: $(dig +short example.com @$ns)"
doneChecking Different Record Types
Propagation applies to all record types, not just A records. You can check MX records, TXT records, AAAA records, and others the same way:
# Check MX propagation
dig MX example.com @8.8.8.8 +short
# Check TXT propagation (useful for SPF/DKIM verification)
dig TXT example.com @1.1.1.1 +short
# Check AAAA propagation
dig AAAA example.com @9.9.9.9 +shortOnline Propagation Checkers
Web-based tools like whatsmydns.net query dozens of resolvers worldwide and show results on a map. These are useful for a broad view but should be supplemented with direct dig queries to your authoritative servers for accuracy.
How to Speed Up DNS Propagation
1. Lower TTL Before Making Changes
The most effective technique. Reduce TTL at least one full old-TTL interval before your planned change. Start that interval after the authoritative servers publish the lower value:
# Step 1: Lower TTL to 300 (5 minutes), wait for old TTL to expire
example.com. 300 IN A 192.0.2.1
# Step 2: Make the actual change
example.com. 300 IN A 198.51.100.1
# Step 3: After propagation, restore a longer TTL
example.com. 3600 IN A 198.51.100.1This three-step process is especially important for migrations. If you are switching hosting providers, moving to a CDN, or changing email providers, lowering the TTL in advance prevents extended downtime.
2. Flush Your Local Cache
Flush your DNS cache if your device holds an old answer. Upstream recursive caches remain intact, so the next local lookup may still return cached data. Query the authoritative server directly to verify publication.
3. Use DNScale's Anycast Network
DNScale's anycast DNS network helps authoritative servers respond from geographically distributed points of presence. When a resolver's cache expires, it gets the fresh record from a topologically preferred DNScale node with low latency. This is typically more effective than unicast DNS setups where all queries go to a single location.
Common Propagation Misconceptions
"DNS propagation takes 24-48 hours"
This is a common planning window for nameserver changes, where parent-zone delegation TTLs and resolver caches matter. For regular record changes with short TTLs, most resolvers typically refresh in minutes, but outliers can happen because resolver behavior is not perfectly uniform.
"There's nothing you can do to speed it up"
Lowering the TTL before a change significantly reduces propagation time. With a 5-minute TTL, most resolvers will pick up your change within 5 minutes.
"Propagation means DNS servers are syncing with each other"
Recursive resolvers don't sync with each other. Each resolver independently caches records and fetches updates from authoritative servers when the cache expires. "Propagation" is really just caches expiring at different times.
"My site is down because of DNS propagation"
If your site is unreachable after a DNS change, check whether the issue is actually DNS-related or a web server misconfiguration. Use dig against your authoritative server to confirm the record is correct, then check public resolvers to determine whether it is a caching issue.
DNS Propagation and DNScale
When you update records in DNScale:
- DNScale publishes the change to its authoritative serving infrastructure.
- Verify the new value on the assigned nameservers; do not assume every location updates at exactly the same instant.
- Recursive resolvers obtain the updated answer on a subsequent refresh.
Authoritative publication and recursive cache expiry are separate processes. Anycast improves reachability and query delivery; it cannot invalidate answers already cached by other resolvers.
Propagation and DNSSEC
If your zone is DNSSEC-signed, propagation involves an extra layer. DNSSEC signatures have their own validity periods, and key rollovers require careful timing to ensure that both old and new signatures are available during the transition. Rushing DNSSEC changes can cause validation failures at resolvers that enforce DNS security.
Conclusion
DNS propagation isn't a mysterious process -- it's mostly DNS caches expiring at different times around the world. By understanding TTL and planning changes in advance, you can minimize propagation delays. DNScale's anycast network and edge replication keep the authoritative side of propagation fast, while resolver caches still expire on their own timelines.
References
Frequently asked questions
- How long does DNS propagation take?
- For a normal record update, the remaining TTL of the old cached answer is the starting estimate, not a universal deadline. If the old record had a TTL of 3600 seconds, some resolvers may serve the old answer for up to 60 more minutes after the change. With a TTL of 86400 (24h), it can be a full day. Prepare the lower TTL in advance. Delegation caches, negative caching, serve-stale behavior, and application connections can affect the result.
- Why do different DNS checkers show different results?
- Each public resolver has an independent cache. They learned the old answer at different times, so they expire at different times. A 'propagation checker' that polls many resolvers from many locations is showing you the staggered cache-expiry — not real-time updates from your authoritative server.
- Can I force DNS propagation faster?
- You can't force other resolvers to drop their caches. What you can do: (1) lower TTL well before the change, (2) flush your own resolver cache, (3) verify the authoritative answer directly with
dig @ns1.dnscale.eu example.comto confirm DNScale serves the new answer correctly. The rest is just waiting out cached TTLs. - Does propagation depend on the record type?
- No — TTL applies to every record type. A 300-second TTL on an MX record propagates the same way as a 300-second TTL on an A record. What does vary is who actually queries the record: A-record changes are visible to every browser visit, while MX-record changes are only seen by sending mail servers.
- What's the right TTL strategy for a planned migration?
- Lower TTL to 300 seconds (or another value supported by the provider), then allow at least one previous-TTL interval after authoritative publication before cutover. At cutover, change the records. Once you've confirmed the new setup is healthy and the old TTL window has passed, raise TTL back to a longer value (3600+) to maximise caching efficiency.
Check the answers resolvers return
Compare a DNS record across public resolvers. Each result is a sample of that resolver’s cache.
Check DNS propagation