What Is DNS Propagation and How Long Does It Take?

You've just updated a DNS record β€” pointed a domain at a new server, changed your MX record, or added a CNAME. But the change doesn't seem to be working. You can see it on some computers but not others. Your phone shows the old IP. Your colleague in another country gets the new one. What's happening?

This is DNS propagation, and understanding it removes a significant source of confusion for anyone who manages websites, domains, or email.

Check DNS Propagation Free β€” No Signup

What Is DNS?

Before explaining propagation, a quick grounding in DNS itself. The Domain Name System is the internet's phonebook. When you type example.com into your browser, your computer doesn't inherently know where to find it. DNS translates that human-readable name into an IP address β€” like 93.184.216.34 β€” which is the actual address where the server lives.

This translation is handled by DNS resolvers: servers that your device queries whenever you visit a new domain. Most people use the resolvers provided automatically by their internet service provider, though many use public resolvers like Google's 8.8.8.8 or Cloudflare's 1.1.1.1.

What Is DNS Propagation?

DNS propagation is the process by which a change to a DNS record spreads across the global network of DNS resolvers. When you update a record β€” say, changing your domain's A record to point to a new server β€” that update doesn't instantly appear everywhere. Instead, it spreads gradually as each resolver becomes aware of the new information.

The reason for this delay is caching. DNS resolvers don't query the authoritative nameserver (the server that holds the original record) for every single lookup. That would be too slow and create enormous load. Instead, they cache the records they've retrieved and serve those cached versions to subsequent queries until the cache expires.

How long the cache persists is determined by the TTL (Time To Live) value on the record β€” a number, in seconds, that tells resolvers how long they're allowed to keep that record cached before they must fetch a fresh copy.

Why Different People See Different Results

If your DNS change is visible on your laptop but not on your phone, or working for a colleague in London but not one in Tokyo, the explanation is almost always resolver caching. Each resolver caches records independently. Some may have fetched your new record already; others are still serving the old cached version.

Resolvers refresh their cache when the TTL expires. A record with a TTL of 3600 (one hour) will be cached for up to an hour at each resolver that has queried it. Until that cache expires, those resolvers will continue to return the old IP address regardless of what the authoritative nameserver now says.

How Long Does DNS Propagation Take?

The honest answer is: it depends on the TTL. Propagation is essentially the process of waiting for cached records to expire across thousands of resolvers worldwide. The practical timeline:

  • TTL of 300 seconds (5 minutes): Propagation is typically complete within 15–30 minutes for most resolvers.
  • TTL of 3600 seconds (1 hour): Most resolvers update within 1–2 hours.
  • TTL of 86400 seconds (24 hours): This is the default on many registrars. Propagation can take up to 24–48 hours.

The commonly cited "48 hours" for DNS propagation refers to this worst case: a record with a 24-hour TTL that was cached by a resolver moments before you made the change. That resolver will continue serving the stale record for up to 24 hours, and if another resolver queried it during that window (rather than the authoritative server), the stale record could persist even longer.

In practice, most major public resolvers like Google DNS and Cloudflare tend to propagate changes faster because they follow TTL strictly and have efficient infrastructure. ISP-run resolvers vary considerably β€” some update quickly, others are less reliable about TTL compliance.

What Affects DNS Propagation Speed?

1. TTL Value

This is the single biggest factor. A low TTL means resolvers discard their cached copy quickly and must fetch a fresh one soon. A high TTL means the old record persists in caches for longer. If you're planning a DNS change β€” migrating a website, switching email providers, changing nameservers β€” the best practice is to lower the TTL to 300 or 600 seconds a day or two before the change. This limits how long the old record can survive in caches after you update it.

2. Whether Resolvers Follow TTL

Not all resolvers strictly respect TTL values. Some ISP resolvers cache records longer than their TTL specifies, a behavior called "TTL violation." This is technically incorrect behavior but it happens, and it means some users may see stale DNS records even after the TTL should have expired. There is nothing you can do about this other than wait.

3. Negative TTL (NXDOMAIN Caching)

When a resolver queries a domain and gets a "no record found" response, it can also cache that negative result. The duration is set by the SOA record's minimum TTL value. If you're creating a new DNS record for a domain that previously had none, resolvers that recently received an NXDOMAIN response may serve the cached negative result for a while, making the new record appear not to exist.

4. Resolver Cache Size and Eviction Policies

Large resolvers like Google (8.8.8.8) and Cloudflare (1.1.1.1) have enormous cache capacity and will typically hold popular domain records for their full TTL. Smaller resolvers may evict cache entries early due to memory pressure, causing them to fetch records more frequently than expected β€” which can actually work in your favor during propagation.

The Difference Between Propagation and Nameserver Delegation

Changing the DNS records on your current nameservers (like updating the A record) is different from changing the nameservers themselves (the NS records at your domain registrar). When you migrate a domain to a new DNS provider, you're changing the nameservers β€” the servers that are authoritative for your domain. This change propagates through the root DNS servers and the top-level domain (TLD) registries, which is a different (and sometimes slower) process than ordinary DNS propagation.

Nameserver changes can take longer because they involve the registrar, the TLD registry, and the root servers β€” multiple layers of infrastructure with their own caching and update cycles. In practice, most nameserver changes propagate within 24 hours, but the TTL on the existing NS records can extend this.

How to Check If Your DNS Has Propagated

The most useful check is whether the major public resolvers β€” Google, Cloudflare, Quad9, and OpenDNS β€” have picked up your new record. These four resolvers handle the DNS lookups of the majority of internet users worldwide. If your record is live on all four, it's effectively propagated for most visitors.

Check DNS Propagation Across Google, Cloudflare, Quad9 & OpenDNS

You can also check from the command line using dig (on Linux/Mac) or nslookup (on Windows), specifying the resolver you want to query:

# Check what Google DNS returns for example.com
dig @8.8.8.8 example.com A

# Check what Cloudflare DNS returns
dig @1.1.1.1 example.com A

# Check what your domain's authoritative nameserver says
dig @ns1.yourregistrar.com example.com A

Comparing the output of these commands tells you immediately whether different resolvers are returning consistent results, and how the resolver's answer compares to the authoritative nameserver's current value.

Best Practices Before Making DNS Changes

  1. Lower your TTL first. Set the TTL on the records you plan to change to 300–600 seconds at least 24 hours (or 1Γ— the current TTL) before making the change.
  2. Keep the old server running. During migration, keep the old server accepting traffic until propagation is complete. Some users will reach the old IP for hours or days.
  3. Make changes at a low-traffic time. Even with a low TTL, some users will see the old record during propagation. Plan your DNS changes for periods of low activity to minimise impact.
  4. Verify at the authoritative nameserver first. Before checking propagation, confirm that the change is actually live at your authoritative nameserver. Propagation of a wrong change is worse than no propagation at all.
  5. Raise the TTL after propagation is complete. Once you've confirmed the change has propagated, raise the TTL back to a sensible value (3600 or higher). Low TTLs increase the query load on your nameservers and slow down DNS lookups slightly.

Summary

DNS propagation is the gradual spread of a DNS record change across the internet's caching resolver infrastructure. The primary determinant of propagation speed is the TTL value on your record β€” how long resolvers are permitted to cache the old version before fetching a new one. With a TTL of 300 seconds, propagation to the major public resolvers typically completes in 15–30 minutes. With a TTL of 86400 seconds, it can take up to 48 hours.

The simplest way to check propagation is to query the major public resolvers directly. Our DNS Checker does this automatically β€” querying Google, Cloudflare, Quad9 and OpenDNS in parallel and showing you whether they all return the same record.

Check DNS Propagation Now β€” Free