How Long Does DNS Propagation Take?
Complete guide to DNS propagation — what it is, why it takes hours and how to check when it's done.
What Is DNS Propagation?
DNS propagation is the process by which a change to a DNS record spreads to all DNS servers worldwide. When you change nameservers, modify an A record or add an MX record, the new value does not appear everywhere at once — it takes time.
Think of DNS as a vast network of "phone books" spread across the globe. Every ISP, company and individual user relies on a different DNS resolver. When you change a record, each resolver needs to learn about the change — but it does not ask immediately. Instead, it uses its cached (stored) value until that cache expires.
How Long Does DNS Propagation Take?
The usual answer is "24 to 48 hours", but the real answer depends on the type of change:
| Change type | Typical duration | Maximum |
|---|---|---|
| A, AAAA, MX, TXT record | 1–4 hours | 24 hours |
| NS (Nameserver) change | 12–24 hours | 72 hours |
| Domain transfer | 24–48 hours | 7 days |
Nameserver changes are the slowest because the TLD root servers (the servers responsible for all .com or .net domains) must also be updated. This is done by your registrar and can take additional time.
Why the Delay? — TTL Explains Everything
The main reason is TTL (Time To Live) — a value in seconds that tells each DNS resolver how long to cache a record before querying the authoritative nameserver again.
If your TTL is 86400 (= 24 hours) and a resolver cached your domain 1 hour before you changed DNS, it will keep using the old value for another 23 hours. Each resolver has a different "cache age", so different users see the change at different times.
How to Speed Up DNS Propagation
If you know in advance that you are going to change DNS, you can dramatically reduce the wait time:
- Lower the TTL early (24–48 hours before)
Change the TTL from86400to300(5 minutes). After most resolvers refresh their cache (around 24 hours), make the actual change. It will then propagate in 5 minutes instead of 24 hours. - Verify the change on the authoritative nameserver first
Before announcing anything, confirm the new value is visible on your domain's nameserver. If the authoritative server doesn't have the change, no resolver will ever see it. - Use a DNS provider with low default TTL
Providers like Cloudflare use TTL 300 by default for many record types, naturally speeding up propagation. - Make changes at night
Fewer users online means fewer affected connections during the transition window.
How to Check if Propagation Is Complete
The most reliable method is to check the new value from multiple resolvers at the same time. If all of them return the new value, propagation is complete. If some still return the old value, propagation is still in progress.
- ✅ All resolvers show new value → complete
- ⚠️ Some show new, others show old → in progress
- ❌ None show new value → check the authoritative nameserver
Check right now whether your DNS change has propagated — across 5 resolvers simultaneously:
→ Check DNS PropagationCommon Problems and Solutions
"The change is visible to me but not to others"
This is normal during propagation. Your resolver (your ISP or the Google/Cloudflare you use) has already refreshed its cache, but other resolvers haven't yet. Try in incognito mode or switch your phone to mobile data (a different network).
"It's been 48 hours and it still hasn't finished"
Check whether the change was applied correctly on the authoritative nameserver. Common mistakes: the change was made in the wrong zone file, the old TTL was very high and wasn't lowered in advance, or your DNS provider has propagation lag.
"I changed nameservers and email stopped working"
When changing nameservers, MX records must exist on the new DNS provider as well. The old provider stops serving DNS queries as soon as the NS records are delegated — if you haven't moved your MX records, mail will be lost.
"How do I check from the command line?"
dig @8.8.8.8 example.com A # Google DNS dig @1.1.1.1 example.com A # Cloudflare dig @9.9.9.9 example.com A # Quad9
Compare the results — if they differ, propagation is still in progress.
Frequently Asked Questions
dig @<nameserver> example.com A. If the authoritative shows the new value but other resolvers don't, it's a caching issue. If the authoritative itself doesn't have the new value, the problem is in your DNS zone configuration.