Diagnostic suite · live

How DNS propagation actually works

TTLs, resolver caches, and why '24-48 hours' is usually a myth.

Illustration of DNS records propagating across a global network with light trails connecting continents

How DNS propagation actually works

TTLs, resolver caches, and why '24-48 hours' is usually a myth.

9 min read

Short answer: DNS "propagation" is really the slow expiry of cached answers on recursive resolvers around the world. Authoritative changes are instant. Whether your users see the new record in five seconds or five hours is decided almost entirely by the TTL you set before the change — not by any global clock, not by ICANN, and not by your registrar's mood.

The mythology around "24-48 hours" is a holdover from the early 2000s when TTLs of a full day were standard and resolvers weren't nearly as aggressive about respecting them. In 2026 the reality is that a well-planned DNS change moves the majority of the world's traffic in under five minutes, and even the long tail closes inside an hour. This guide unpacks exactly why.

The three actors in every DNS lookup

Every time a browser resolves a hostname, three distinct systems participate. Understanding which one caches what is the difference between confidently shipping a migration and staring at dig output at 2 a.m.

  1. Authoritative nameservers — the source of truth. Your DNS provider (Cloudflare, Route 53, NS1, Google Cloud DNS) hosts these. When you edit a record in the dashboard, the change lands on the authoritative servers within seconds. There is no propagation delay here.
  2. Recursive resolvers — the DNS server your device asks. This might be Google Public DNS (8.8.8.8), Cloudflare (1.1.1.1), Quad9 (9.9.9.9), your ISP's resolver, or your corporate DNS. Recursive resolvers cache answers for the TTL specified by the authoritative response. This is the layer where "propagation" happens.
  3. Stub resolvers — your OS and browser also cache answers, typically for a shorter window than the resolver TTL. Chrome, for example, keeps its own in-process DNS cache separate from the OS cache.

TTL is the only knob that matters

TTL — "time to live" — is a value in seconds attached to every DNS response. It tells recursive resolvers: "you may cache this answer for up to this long before you have to ask me again." That's it. That's the whole mechanism.

If your A record has TTL 3600 (one hour) and a resolver queried it one minute before your change, that resolver will keep the old answer for up to 59 more minutes. If TTL is 60, worst case is 60 seconds. If TTL is 86400, worst case is a full day — and this is where the "24 hours" myth comes from.

The professional playbook is disarmingly simple:

  1. 24 hours before a planned change, drop the TTL to 300 (5 minutes) on the record you'll be changing.
  2. Wait one full TTL cycle so every resolver has picked up the new low TTL.
  3. Make the change. Within one TTL (5 minutes) the worldwide fleet is converged.
  4. After the traffic pattern stabilizes, raise TTL back to 3600 or higher for stability and lower query costs.

This is exactly how large-scale migrations are done. There is no magic, just discipline about the TTL clock.

Why whatsmydns.net shows inconsistent results

People point at global propagation checkers and say "look, DNS is broken in Frankfurt." What they're actually seeing is anycast at work. "Google Public DNS" is not a single server in Mountain View. It's an anycast fleet with independent caches in a hundred-plus locations worldwide. Two queries to 8.8.8.8 from two continents will hit two entirely different physical machines with entirely independent caches. It's completely normal for one PoP to have your new record and another to be serving stale data mid-TTL. Our Propagation Checker queries 20+ real global PoPs in parallel so you can see the true worldwide state at a glance.

Actually testing propagation like a professional

Stop using online checkers as your only source of truth. Learn dig — it takes ten minutes and pays dividends forever.

# Bypass every cache — ask the authoritative server directly
dig @ns1.yourdomain.com yourdomain.com A +short

# What your local resolver sees right now
dig yourdomain.com A +short

# Query a specific public resolver
dig @1.1.1.1 yourdomain.com A +short

# Show the TTL remaining on the cached answer
dig yourdomain.com A

The pattern to watch: if dig @ns1 returns the new value and dig @1.1.1.1 returns the old one, propagation is in progress — the resolver still has the old answer with some TTL left. If both return the new value, you're done at that resolver.

Common gotchas that make DNS look "broken"

  • Browsers cache separately. Chrome and Firefox each maintain their own in-process DNS caches. You can flush Chrome's at chrome://net-internals/#dns.
  • CDNs add another layer. Moving between CDNs isn't just a DNS change — the new CDN has its own edge caches, origin pull behavior, and TLS handshake that all need to warm.
  • Negative caching. NXDOMAIN answers ("this record does not exist") are cached too, per the SOA minimum. If a record didn't exist yesterday, its absence is cached, so a freshly created record can still look missing.
  • Corporate DNS. Enterprise networks often run intercepting resolvers with much longer TTLs than the public defaults. If your office says DNS is stale but your phone on cellular is fine, the corporate resolver is the suspect.
  • DNSSEC validation failures. If a resolver can't validate the chain of trust (broken RRSIG, mismatched DS), it will refuse to return the record at all, which looks identical to "not propagated." See our DNSSEC guide.

Anycast, geo-DNS, and split-horizon

To make things a little more interesting: some DNS providers deliberately return different answers based on where the query comes from. This is called geo-DNS or geo-steering, and it's how CDNs route users to the nearest edge. If you're testing propagation from your laptop in London and comparing against a screenshot from a colleague in Singapore, disagreement doesn't necessarily mean anything is broken — the authoritative server may be doing its job.

The mental model

File "propagation" away as the wrong word entirely. Nothing is being pushed anywhere. Authoritative DNS is a pull system: resolvers ask when they need to, cache the answer for the TTL, and ask again when the cache expires. Your job as an operator is to make sure the TTL is short enough that the drain is fast when you need it to be, and long enough that you're not paying for a query storm the rest of the time.

Related tools: Propagation Checker · DNS Lookup · NS Lookup · SOA Lookup

Frequently asked questions

Almost never in 2026. If your TTL is 300 seconds, most resolvers pick up the change within 5 minutes. The 48-hour figure comes from legacy TTLs of 86400 seconds and worst-case cache behavior. Lower the TTL before the change and 'propagation' is fast.