What is DNS?
The Domain Name System is the directory that turns a name like example.com into the address of a server. MDN describes it as a hierarchical and decentralized naming system that maintains a list of domain names along with the resources, such as IP addresses, associated with them; the lookup is the translation from the name to the address. Your browser does not ask the directory directly. It asks a resolver (usually your ISP’s or a public one), and the resolver asks the chain of servers that are authoritative for the name.
What is propagation?
Propagation is the period during which some resolvers still hold the old answer and some already have the new one. Nothing is being pushed anywhere. When you change the A record for example.com, every resolver that has cached the old record keeps serving it until that cached copy expires. The expiry is set by the record’s TTL, the time to live. Cloudflare’s documentation puts it plainly: the TTL is a field on DNS records that controls how long each record is cached and, as a result, how long it takes for record updates to reach your end users.
So “propagation takes 24 to 48 hours” is a rule of thumb from an era of long TTLs. If your TTL is 86,400 seconds (a day), a resolver that looked up your site just before the change will keep the old answer for up to a day. If your TTL is 300 seconds, the same resolver moves within five minutes. The TTL is the whole story; the rest is cache behaviour on the resolver, which you do not control.
Why does it matter when you change hosts?
Because for the length of the old TTL, two copies of your site are live and visitors are split between them. For a brochure site that is harmless. For a store, a forum or anything that writes to a database, orders and comments placed on the old server during that window are not on the new one. Our migration article covers the sequencing; the DNS part is this:
- A day before the move, lower the TTL on the records you will change to 300 seconds. The change to the TTL itself has to propagate, which is why you do it in advance.
- Move the site and test it on the new server by its IP or with a hosts-file entry, before touching DNS.
- Change the records. Within about five minutes most resolvers will follow; Cloudflare notes that it may take longer than five minutes for you to experience the change because your local cache may take longer to update.
- Leave the old host running, read-only if you can, for at least the length of the old TTL. Then raise the TTL again so lookups are cached longer and your site resolves faster.
Can the host speed it up?
No. Neither the old host nor the new one can reach into resolvers around the world and clear their caches. What a host can do is tell you what TTL your records carry (most panels show it) and let you change it. If a host’s support desk tells you to “wait 48 hours”, what they mean is that they do not know your TTL.
How do you check where a name is pointing?
Ask a resolver directly from a terminal with dig example.com or nslookup example.com, which shows the answer that resolver currently holds and the remaining TTL. Online propagation checkers do the same from many locations at once and are useful for seeing the split. If one location still shows the old address after the TTL has passed, that resolver is ignoring your TTL, which some do; there is nothing to fix on your side.
dig +noall +answer example.com
example.com. 300 IN A 203.0.113.10
The number after the name is the seconds left before that resolver re-asks.