When you change a DNS record — nameservers, an A record, an MX record — the change doesn't happen instantly everywhere. It "propagates" across the internet over a period of hours. This article explains why, how long it takes, and how to check the status from your end.

The short version: DNS changes usually appear within 30 minutes to a few hours, but can take up to 24–48 hours in rare cases. During that window, some visitors see the new value and some still see the old one. There's no way to force it faster — DNS is designed around caching.

Why propagation takes time

DNS is heavily cached. When a DNS server anywhere in the world looks up a record for your domain, it stores the answer for a period of time (the TTL, or "time to live") and returns that cached copy to every other client that asks, rather than re-querying the authoritative source. This caching is what makes the internet fast.

The trade-off: when you change a record, every DNS resolver with a cached copy of the old value will keep returning that old value until its cache expires. There are tens of thousands of DNS resolvers worldwide (every ISP, every public DNS service, every corporate network), and they each have independent caches.

In practice, "propagation" is just the time it takes for enough of these caches to expire that the change appears to be live everywhere.

How long it actually takes

  • Most places: 30 minutes to a few hours. Major public resolvers (Google DNS, Cloudflare DNS) typically refresh within this window.
  • Worst case: 24–48 hours. A small number of caches hold onto records for longer, especially corporate networks with their own internal DNS.
  • Nameserver changes (not individual records — the NS change itself) can be slower than record changes, because they're cached at the TLD registry level for up to 48 hours.

The main factor is the TTL on the old record. If the record had a TTL of 3600 (1 hour), caches will expire within an hour. If it was set to 86400 (24 hours), it can take up to a full day.

How to check propagation

Option 1: whatsmydns.net

The easiest visual check. Enter your domain, pick the record type (A, MX, NS, TXT, etc.), and click Search. The site queries DNS servers around the world and shows you the answer each one is currently giving:

  • Green pins — that resolver is returning the new value.
  • Red pins — that resolver is still returning the old value (or no value).

When most of the pins go green, propagation is mostly complete.

Option 2: dig from a terminal

If you're on Mac or Linux, open a terminal and run:

dig yourdomain.com A +short
dig yourdomain.com NS +short
dig yourdomain.com MX +short

This returns the current value from your local DNS resolver. To check a different resolver:

dig @8.8.8.8 yourdomain.com A +short     # Google DNS
dig @1.1.1.1 yourdomain.com A +short     # Cloudflare DNS

If Google and Cloudflare DNS both return the new value, propagation is well underway — most visitors around the world will see the new value too.

Option 3: nslookup on Windows

On Windows, open Command Prompt or PowerShell and run:

nslookup yourdomain.com
nslookup -type=MX yourdomain.com
nslookup -type=NS yourdomain.com

I updated my record but I still see the old version

This is normal if only a short time has passed. The most common reasons your specific browser/device is still seeing the old value:

  • Your browser's DNS cache. Chrome caches DNS for a few minutes. Try closing all browser windows and reopening, or visit chrome://net-internals/#dns and click "Clear host cache."
  • Your operating system's DNS cache.
    • Windows: ipconfig /flushdns
    • macOS: sudo killall -HUP mDNSResponder
    • Linux (systemd): sudo systemd-resolve --flush-caches
  • Your router's DNS cache. Reboot the router or wait it out — usually under an hour.
  • Your ISP's DNS cache. Nothing you can do except wait, or temporarily switch your device to public DNS (Google: 8.8.8.8 / Cloudflare: 1.1.1.1).

Can propagation be sped up?

Not really. The caching is baked into how DNS works, and there's no "push update" mechanism to invalidate caches around the world. What you can do, before you make a planned change:

  • Lower the TTL ahead of time. Drop the TTL of the record you're going to change to 300 (5 minutes) a day or two before the change. That way, when you make the actual change, it propagates within 5 minutes almost everywhere. After the change is live and stable, raise the TTL back to its normal value.

This works well for A records, MX records, and CNAMEs. It doesn't help for nameserver changes, because those are cached at the registry level with TTLs you don't control.

Avoiding downtime during a migration

If you're moving a site from one host to another, the trick to zero downtime is to set up the new host first, test it with a hosts file or --resolve flag (see How to preview your site before updating DNS), and only change DNS when you've verified the new host works. During propagation, some visitors hit the old host and some hit the new — both serve the site, so no one sees an outage.

Related articles

Still stuck? Open a support ticket

War diese Antwort hilfreich? 0 Benutzer fanden dies hilfreich (0 Stimmen)