DNS Not Updating? What's Actually Happening

A DNS change that “isn't working” is, almost always, working exactly as designed — it just hasn't reached every resolver yet. The record that matters is whichever one your specific request happens to hit, and different requests can hit different resolvers with different cached values for a while. Here's how to tell normal delay apart from a record that's actually wrong.

The Order That Actually Narrows It Down

  1. DNS Propagation Checker — queries the record against major public resolvers (Google, Cloudflare, Quad9, and more) at once and shows whether they already agree. If they don't yet, you're looking at normal propagation delay, not a broken record.
  2. DNS Lookup — queries the record directly from a neutral server, bypassing your own device and ISP's cache entirely. Use this to confirm what the record actually is right now, independent of what your own browser might still be showing you.

What TTL Actually Controls

TTL (time to live), set in seconds, tells every resolver that caches a record how long it's allowed to keep serving that cached answer before checking again. It's attached to the old record at the moment you change it — a resolver that cached your record with a 24-hour TTL five minutes before you updated it will keep serving the old value for close to 24 more hours, regardless of how quickly the authoritative server itself updated. This is why lowering TTL a day or so before a planned change is the standard advice: it shrinks that unavoidable window for next time, rather than doing anything for the change you just made.

Normal Propagation vs. a Genuinely Wrong Record

  • Normal: some resolvers show the new value, others still show the old one, and the split changes over the following hours as caches expire. This resolves itself.
  • Normal: your own device shows the old value even though a fresh lookup from an external server shows the new one — your OS or browser has its own DNS cache with its own expiry, separate from any public resolver.
  • Not normal: every external resolver, checked fresh, shows a value you never set. Points at an edit made in the wrong zone, a record that failed to save, or the domain being delegated to nameservers you don't control.
  • Not normal: the record has been wrong for well beyond a day with no TTL long enough to explain it — worth reconfirming the change actually reached the authoritative nameservers.

When It's the Nameservers, Not the Record

If a domain was recently migrated to a new registrar or DNS provider, and a record change there never seems to take effect anywhere, check that the domain's nameservers at the registrar actually point at the new provider. A record edited in the wrong place — a DNS provider the domain isn't currently delegated to — will never be visible no matter how long you wait, since resolvers are never told to ask that provider in the first place. A WHOIS lookup shows the domain's current nameservers directly.

Frequently Asked Questions

I changed a DNS record. How long until it actually updates?

It depends entirely on the TTL (time to live) the old record was published with, not the new one. A resolver that cached the old record with a 24-hour TTL can keep serving it for up to 24 hours after your change, even though the authoritative server already has the new value. Most changes are visible everywhere within a few hours; a low-TTL record can update in minutes.

Some resolvers show the new record and some still show the old one. Is that normal?

Yes — this is exactly how DNS caching is supposed to work. Every resolver caches independently and expires the old value on its own schedule, so a transition period where different resolvers disagree is expected, not a sign of a problem. It resolves itself once every resolver's cached TTL expires.

Can I speed up DNS propagation?

Not after the fact — once a resolver has cached a record, you can't force it to drop that cache from the outside. The only real lever is lowering the TTL before you make a change (ideally a day or more in advance), so that when you do change the record, resolvers already have a short cache window and pick up the new value quickly.

It's been days and my DNS still hasn't updated everywhere. What's wrong?

Beyond the normal propagation window (usually under 48 hours even for a high TTL), check three things: that the record was actually saved and published at your DNS provider (not just edited in a draft state), that you're editing the zone at the correct provider (a domain can point at the wrong nameservers entirely after a migration), and that you're not confusing a cached browser/OS DNS entry on your own machine with the record itself.

Why does the domain still resolve to my old host after I switched?

Almost always TTL on the A/AAAA record, same as any other DNS change. The one other common cause after a host migration specifically is the nameservers themselves not having been updated at the registrar — if the domain is still delegated to the old host's nameservers, no record change at the new host will ever be visible, no matter how long you wait.

Run the DNS Propagation Checker to see whether major resolvers already agree, or use DNS Lookup to query a record fresh from a neutral server.