DNS propagation is the time it takes for a change you make to your domain's DNS records (like a new IP address or nameserver) to spread across all the DNS servers around the world that cache that information. It usually takes anywhere from a few minutes to 48 hours, and the reason it isn't instant comes down to caching and a setting called TTL. So if you just updated a record and it's not working everywhere yet, that's completely normal.
Content Table
What DNS Propagation Actually Means
The Domain Name System (DNS) is like the phone book of the internet. When you type
example.com, DNS translates that name into an IP address like
93.184.216.34 so your browser knows which server to reach.
When you change something in that phone book (point your domain to a new host, switch nameservers, or update a mail server) that change starts at your authoritative DNS servers. But thousands of resolvers worldwide have already saved a copy of your old records to answer requests faster. "Propagation" is the slightly misleading name people use for the period while those cached copies expire and get refreshed with your new values.
Why DNS Changes Aren't Instant
If every device asked the authoritative server for an answer every single time, DNS would be painfully slow and servers would collapse under the load. To avoid that, resolvers cache answers. Here's the chain a typical lookup follows:
- Your device checks its own local cache first.
- Your recursive resolver (often your ISP or a public one like Google's 8.8.8.8) checks its cache.
- If nothing is cached, the resolver walks up to the authoritative nameservers for your domain and stores the answer.
Each of these layers holds the record for however long the TTL says. Until that timer runs out, they keep serving the old answer, which is exactly why a fresh change can appear to work in one country and fail in another at the same moment.
How Long Does DNS Propagation Take
There's no single fixed number, but here's what to realistically expect based on the type of change:
| Type of change | Typical time | Worst case |
|---|---|---|
| A / AAAA record (IP change) | 5 min to 1 hour | Up to 24 hours |
| CNAME record | 5 min to 1 hour | Up to 24 hours |
| MX record (email) | 1 to 4 hours | Up to 48 hours |
| Nameserver change (NS) | 2 to 24 hours | Up to 48 hours |
| TXT record (SPF, DKIM) | 5 min to 1 hour | Up to 24 hours |
The old "48 hours" advice you see everywhere is a safe upper bound, not the norm. Most domain propagation finishes far faster now. Nameserver propagation tends to be the slowest because it involves the top-level domain (TLD) registry updating which servers are authoritative for your domain, and those records often have longer TTLs.
How TTL Controls the Speed
TTL stands for Time to Live, and it's the single biggest factor in how fast your changes appear. It's a number, in seconds, attached to every DNS record that tells resolvers how long to keep the cached copy before checking again.
-
300= 5 minutes (changes appear fast) -
3600= 1 hour (a common default) -
86400= 24 hours (slow to update, but efficient)
The catch is that the TTL that matters is the one that was already cached before you made your change. If your record had a 24-hour TTL, resolvers that grabbed it an hour ago will keep the old value for another 23 hours no matter what you set now.
Why Your DNS Propagation Is Slow
If a change is taking longer than expected, one of these is usually the culprit:
- High TTL on the old record. The most common reason. Nothing to do but wait it out.
- ISP resolvers ignoring TTL. Some providers cache records longer than instructed to reduce traffic, which causes uneven results across regions.
- Local device caching. Your own computer and browser cache DNS too, so the site may look "broken" to you while it works for everyone else.
- Registry delays on nameserver changes. Switching nameservers depends on the TLD registry, which adds its own timing.
- Multiple records not fully updated. If you changed several records, some may lag behind others.
Because different resolvers around the world update at different times, it's normal for a site to load fine on your phone's mobile data but not on your home Wi-Fi during this window.
How to Speed Up and Check Propagation
You can't force the whole internet to refresh, but you can clear your own side and verify what's really live. To flush your local DNS cache:
Windows: ipconfig /flushdns
macOS: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Linux: sudo systemd-resolve --flush-caches
To check what's actually being served right now, query the public DNS directly instead of trusting your cached view. You can inspect any record type (A, MX, NS, TXT and more) with a DNS Lookup tool that pulls current values straight from resolvers like Google and Cloudflare. Comparing the TTL shown there tells you roughly how much longer the old value might linger.
If you want to confirm which resolver your machine is even using before you flush anything, our guide on how to find your DNS server address walks you through it on every major OS. And once your new IP is live, you can double-check the destination itself with a quick ping test on the website to make sure the server responds.
For the technically curious, DNS caching behavior is defined in the IETF standards, including RFC 1035 and clarified in RFC 2181, which spell out exactly how TTL values should be treated.
See if your DNS propagation is done
Instead of guessing how long DNS propagation takes, check the live A, MX, NS, and TXT records for your domain and read the current TTL straight from Google and Cloudflare resolvers.
Check your DNS records →
Not really for other people. The old record stays cached until its original TTL expires, and you can't shorten that after the fact. You can flush your own local cache to see the change sooner, but the wider internet has to wait out the timer that was set before your update.
Your phone and computer often use different DNS resolvers, and each caches records independently. During propagation one may still hold the old IP while the other has already refreshed. Flushing your computer's DNS cache usually fixes the mismatch on your end.
Usually yes. Nameserver changes involve the TLD registry updating which servers are authoritative for your domain, and those NS records often carry longer TTLs. Expect anywhere from 2 to 24 hours, and up to 48 hours in the worst case before it fully settles worldwide.
Lower it to 300 seconds (5 minutes) a day or two before the migration. That way any cached copies expire quickly and your new IP takes effect almost immediately when you switch. After everything is stable, raise the TTL back to 3600 or higher to reduce lookup traffic.
Query the record directly against public resolvers rather than trusting your local view. A DNS lookup tool shows the current value and TTL served by Google and Cloudflare. If the new value appears with a low remaining TTL across resolvers, propagation is essentially complete.