Understanding TTL: DNS Cache and Propagation Times
Learn what DNS TTL means, how caching affects DNS changes, why propagation takes time, and how to plan safer DNS migrations.
Introduction
TTL controls how long DNS resolvers may cache a DNS answer before checking again. It is one of the most important settings to understand when changing A records, MX records, nameservers, CNAME records or other DNS values.
Many users call every delay “DNS propagation,” but most delays are caused by caching. If a resolver recently cached the old DNS value, it may continue using that value until the TTL expires. This is why some users may see the new website while others still reach the old server for a while.
Quick answer
TTL, or Time To Live, tells DNS resolvers how long they can cache a DNS record before asking again. A lower TTL can make future DNS changes update faster, but only if it was lowered before the change. TTL does not instantly clear DNS caches that already stored the old value.
What is DNS TTL?
DNS TTL stands for Time To Live. It is a value, usually measured in seconds, that tells resolvers how long they may keep a DNS answer in cache.
example.com A 192.0.2.10 TTL 3600
In this example, a resolver may cache the A record for up to 3600 seconds, or one hour, before asking for the record again.
TTL is set per DNS record. Different records on the same domain can have different TTL values.
How DNS caching works
DNS caching reduces repeated DNS lookups and helps websites load faster. Instead of asking the authoritative nameserver every time, resolvers can reuse recently received answers until the TTL expires.
- A resolver asks for a DNS record.
- The authoritative nameserver returns the record and its TTL.
- The resolver stores the answer in cache.
- Users using that resolver receive the cached answer.
- When TTL expires, the resolver checks again for a fresh value.
Caching is useful, but it can make DNS changes appear slowly during migrations.
TTL vs DNS propagation
TTL and propagation are related, but they are not the same.
TTL
- A record-level cache timer
- Controls how long resolvers may keep an answer
- Set in the DNS zone
- Helps plan future changes
example.com A TTL 3600
DNS propagation
- The process of updated DNS values becoming visible across resolvers
- Affected by caching, TTL, nameserver changes and resolver behavior
- Can appear different in different locations
- Cannot always be forced instantly
Some resolvers show new IP, others still show old IP
Lowering TTL does not instantly update all resolvers. It helps only after resolvers refresh and receive the lower TTL.
Common TTL values
Different DNS providers and use cases use different TTL values.
300 seconds / 5 minutes
Useful before planned migrations or active troubleshooting.
600 seconds / 10 minutes
Good for records that may change occasionally.
3600 seconds / 1 hour
Common default for stable DNS records.
14400 seconds / 4 hours
Common on some hosting providers for stable records.
86400 seconds / 24 hours
Useful for very stable records, but slower to change.
There is no perfect TTL for every domain. Short TTLs update faster but create more DNS queries. Long TTLs reduce DNS traffic but make changes slower.
When should you lower TTL?
Lower TTL before planned DNS changes, especially when moving important services.
- before moving a website to a new server
- before changing A or AAAA records
- before changing MX records
- before switching CDN or proxy provider
- before changing nameservers
- before launching a new website
- before moving important subdomains
- before major email provider migration
For best results, lower TTL at least one current TTL period before the planned change. For example, if the current TTL is 24 hours, lower it a day before the migration if possible.
When should you increase TTL?
After a migration is stable, you can increase TTL again for records that do not change often.
Examples:
- stable website A records
- MX records for a long-term email provider
- verification records that rarely change
- static subdomains
Do not leave very low TTL values forever unless you have a reason. Low TTLs can increase DNS query volume and make your setup noisier.
Why this matters
TTL matters because it affects how quickly DNS changes become visible. If TTL is high, users may continue seeing old DNS values after you change records. During migrations, this can cause some visitors to reach the old server while others reach the new one.
TTL does not fix incorrect DNS records. It only controls how long DNS answers may be cached.
How to check TTL values
Use DNS Lookup to inspect DNS records and their TTL values. Check the exact record you plan to change, such as A, AAAA, CNAME, MX, TXT or CAA.
When checking TTL, compare
These five areas help you plan migrations and avoid stale cache surprises.
Record type
The specific record you are checking, such as A, MX or TXT.
Current value
The DNS value currently returned.
TTL value
How long resolvers may cache the current answer.
Active nameserver
The DNS provider currently controlling the live zone.
Expected migration timing
Whether the TTL is low enough for the planned change.
Check TTL before the migration, not only after the DNS change. Lowering TTL after a change does not clear caches that already stored the old value.
Check DNS TTL now
Use DNS Lookup to inspect DNS records, values and TTLs for your domain.
Common TTL problems
TTL was lowered too late
MediumThe TTL was reduced after resolvers had already cached the old DNS value.
Next step: Wait for the old TTL to expire and plan future changes earlier.
High TTL causes slow migration
MediumA record with a long TTL may continue resolving to the old value for some users.
Next step: Lower TTL before planned migrations and allow one TTL period before switching.
Different resolvers show different values
LowSome resolvers may have fresh data while others still have cached answers.
Next step: Compare results from multiple resolvers and wait for cache expiry.
Nameserver change appears inconsistent
MediumNameserver changes can involve registry, resolver and zone caching.
Next step: Check NS records from multiple resolvers and verify important records after delegation.
Old website still appears after A record change
MediumSome users may still resolve the old IP until cached A records expire.
Next step: Keep the old server online temporarily during migration.
Email still routes to old provider
HighMX records may be cached, so some senders may still deliver to the old mail provider.
Next step: Keep old mailboxes active during transition and test from external senders.
Negative caching hides newly added records
MediumIf a resolver cached that a record did not exist, it may keep that negative answer temporarily.
Next step: Wait for negative cache TTL and confirm SOA values if needed.
TTL is confused with downtime
LowTTL does not cause downtime by itself; wrong records or incomplete migrations do.
Next step: Verify the DNS value, server readiness and provider configuration.
How to manage TTL safely
-
Identify the records that will change
Decide whether you will change A, AAAA, CNAME, MX, TXT, CAA or nameserver records.
-
Check current TTL values
Use DNS Lookup to see how long current answers may be cached.
-
Lower TTL before the planned change
If possible, reduce TTL to a lower value such as 300 seconds before the migration.
-
Wait one old TTL period
Give resolvers enough time to refresh and receive the lower TTL before making the actual change.
-
Make the DNS change
Update the record only after the lower TTL has had time to spread.
-
Keep old services available temporarily
During migrations, keep the old website server or email provider active until traffic and mail clearly move to the new destination.
-
Verify and restore stable TTL
After the migration is confirmed stable, raise TTL to a normal value if appropriate.
TTL planning examples
Before migration:
example.com. 86400 IN A 192.0.2.10
Lower TTL one day before migration:
example.com. 300 IN A 192.0.2.10
Migration change:
example.com. 300 IN A 192.0.2.20
After stable migration:
example.com. 3600 IN A 192.0.2.20
dig example.com A
dig example.com MX
dig example.com TXT
dig +nocmd example.com A +noall +answer
These are examples only. Replace hostnames, IP addresses and TTLs with values from your DNS and hosting provider.
TTL during website migrations
Before moving a website, lower TTL for records that point visitors to the website, such as A, AAAA or CNAME records. This makes it easier to switch traffic to the new server when the migration is ready.
Before changing the record, make sure:
- the new server has the website files
- the database is migrated
- SSL is ready
- redirects are configured
- www and root domain are both handled
- the old server remains available temporarily
A low TTL helps reduce transition time, but it does not replace proper migration preparation.
TTL during email migrations
Email migrations need careful TTL planning because senders may continue using cached MX records.
Before changing MX records:
- lower TTL in advance
- create mailboxes at the new provider
- copy or configure SPF, DKIM and DMARC
- keep the old mail provider active temporarily
- test inbound and outbound mail
- monitor bounce messages
Changing MX records only affects incoming mail routing. Outgoing email authentication also depends on SPF, DKIM and DMARC.
TTL and negative caching
Negative caching happens when a resolver caches a “record not found” answer. This can happen if a service checks for a TXT, CNAME or verification record before you have added it.
Example:
- A verification service checks for a TXT record.
- The record does not exist yet.
- A resolver caches the negative answer.
- You add the TXT record.
- The service may still not see it until negative cache expires.
Negative cache behavior is often influenced by SOA settings and resolver behavior.
How to verify propagation
To verify DNS propagation, check the same record from multiple resolvers or locations.
Use checklist:
- check the record type you changed
- compare expected value and current value
- check from multiple resolvers
- check active nameservers
- check whether TTL is decreasing
- test the actual service, not only DNS
For example, after changing an A record, confirm that the website loads from the new server. After changing MX records, send test emails from external providers.
Frequently asked questions
What does TTL mean in DNS?
TTL means Time To Live. It tells DNS resolvers how long they may cache a DNS record before checking again.
Does lowering TTL make DNS change instantly?
No. Lowering TTL helps future changes only after resolvers refresh and receive the lower TTL. It does not instantly clear existing caches.
What TTL should I use before migration?
Many migrations use a temporary TTL such as 300 seconds, but the right value depends on your DNS provider and plan. Lower it before the migration, not after.
Why do some users see the old website?
Their resolver may still have the old DNS answer cached, or their network may be using a resolver that has not refreshed yet.
Can TTL affect email delivery?
Yes. Cached MX records can cause some senders to deliver email to the old provider during a transition.
Should I keep TTL low forever?
Not usually. Low TTLs are useful during changes, but stable records can often use higher TTLs.
What is negative caching?
Negative caching is when a resolver caches a “record not found” answer for a period of time.
Is DNS propagation always 24–48 hours?
No. Many DNS changes appear much faster, but timing depends on TTL, caching, nameserver changes and resolver behavior.
Related tools
Use these free tools to verify your configuration after applying changes.
Related guides
Browse all DNS & Domain guides →Need help applying this fix?
Send us your domain, report link or issue details. CheckDomainHealth will review the request and route it to the right technical team if hands-on support is needed.
Was this guide helpful?
Your feedback helps us improve our guides for everyone.
Thanks for your feedback!