DNS TTL Calculator

The calculator uses two TTL values you enter: the current TTL and the new TTL. For 86400 and 300 the wait before the record change is 24 hours. For 3600 and 60 that wait is 1 hour. When both values are 300, the wait is 5 minutes before the change and 5 minutes before you raise the TTL again.

This calculator does not query a nameserver. It only computes a wait from the two TTL values you enter.

Input data

Typical pairs:

Current TTL is the value already published, from the DNS panel or a dig query. New TTL is the value you set before you change an A, AAAA, CNAME, or MX record. The result appears after you click Calculate or pick a typical pair.

Results

Enter the current TTL and the new TTL, then click Calculate.

How it works

The calculator uses the numbers you enter: the current TTL and the new TTL, both in seconds. The wait before the record change equals the current TTL, because resolvers may keep the old answer until that TTL expires.

For 86400 and 300 the wait before the record change is 86400 seconds, or 24 hours. For 3600 and 60 that wait is 3600 seconds, or 1 hour. When both values are 300, the wait is 300 seconds, or 5 minutes before the change.

The wait before you raise the TTL again equals the new TTL. The full switch window is the sum of both values: 86400 and 300 give 86700 seconds. The calculator does not query a nameserver and does not read a zone.

Publishing 300 in the DNS panel does not flush yesterday’s caches that still hold a 86400 TTL. You publish the new TTL first, wait out the current TTL, and only then change the address on the record. After the change, new queries can get the new address immediately.

Formula

Wait before the record change = current TTL. Wait before you raise the TTL again = new TTL. Full switch window = current TTL + new TTL. Unit: seconds.

How to use

  1. Enter current TTL 86400 and new TTL 300.
  2. Click Calculate. The wait before the record change is 24 hours (86400 s).
  3. The second pair, 3600 and 60, gives 1 hour before the record change.
  4. The third pair, 300 and 300, gives 5 minutes before the change and 5 minutes before you raise the TTL again.
  5. A blank field does not produce a result. Enter whole seconds, not a fraction.

24 hours at 86400 and 300

The wait before the record change equals the current TTL. At 86400 and 300 that wait is 24 hours. This is not a nameserver query.

TTL
Time To Live: how many seconds a resolver may cache an answer.
Current TTL
The value already published. It sets how long old caches can still live.
New TTL
The value you set before you change the record. After the change, caches keep the new answer for this long.

Examples

Example 1

  • current TTL 86400 s
  • new TTL 300 s

24 h (86400 s)

How long before the record change at 86400 and 300? 24 hours. Then wait another 5 minutes before you raise the TTL again.

Example 2

  • current TTL 3600 s
  • new TTL 60 s

1 h (3600 s)

How long do I wait at current TTL 3600 and new TTL 60? 1 hour before the record change, then 1 minute before you raise the TTL again.

Example 3

  • current TTL 300 s
  • new TTL 300 s

5 min (300 s)

How long do I wait when both TTL values are 300? 5 minutes before the change and 5 minutes before you raise the TTL again. The full window is 10 minutes.

Related calculators

Common questions

How long do I wait at current TTL 86400 and new TTL 300?

24 hours (86400 s) before the record change, then 5 minutes before you raise the TTL again. The calculator does not query a nameserver.

How long do I wait at current TTL 3600 and new TTL 60?

1 hour before the record change, then 1 minute before you raise the TTL again.

How long do I wait when both TTL values are 300?

5 minutes before the record change and 5 minutes before you raise the TTL again. The full window is 10 minutes.

Is the new address visible as soon as I change the record?

After you wait out the current TTL and change the record, new queries can get the new answer immediately. The second wait is about raising the TTL, not about the new address appearing.

Does the calculator query a nameserver?

No. The calculator uses only the two TTL values you enter.

Is 24 hours a guaranteed registrar propagation time?

No. It is the upper time a resolver may keep the old answer at the current TTL.

Does this also cover a nameserver change at the registrar?

No. This calculator uses the TTL of the record you edit. A nameserver delegation also has a parent-zone wait that you do not enter here.

Where do I get the current TTL?

From the DNS panel or a nameserver query, for example dig example.com A. The calculator does not read that value for you.

Does a decimal such as 3600.5 work?

No. Enter whole seconds, for example 3600 or 86400.

Is zero accepted?

Yes. A current TTL of 0 gives a 0 s wait before the record change. Some resolvers still enforce a minimum TTL.

Why are there two fields?

Current TTL sets the wait before the record change. New TTL sets the wait before you raise the TTL again.

Knowledge sources

A DNS record TTL is how long an answer may be cached, in seconds. The references below define the field and the cutover practice.

Page updated in 2026.

What TTL controls

TTL (Time To Live) tells a recursive resolver how long it may keep an answer, in seconds. It is not the domain’s registration lifetime, and it is not a registrar “propagation deadline” — only a caching hint. The calculator treats the wait before the record change as the current TTL and the wait before you raise the TTL again as the new TTL. At 86400 and 300 that is 24 hours, then 5 minutes.

Recursive resolver caching

  • A recursive resolver (your ISP, 1.1.1.1, 8.8.8.8) keeps the answer until the TTL expires. Different networks can therefore see the old and new addresses at the same time.
  • Browsers and operating systems cache as well. That is why one person can see the new address while another still sees the old one.
  • NXDOMAIN has its own SOA timings. That can also look like “DNS will not refresh.”

TTL quick-reference table

Common values in seconds. Typical pairs on the form: 86400 → 300, 3600 → 60, 300 → 300.

SecondsMinutesHours / daysTypical use
601Tests, emergency cutover (more DNS queries)
3005Before migrations / failover
60010Short compromise when changes are frequent
3600601 hStable services — common default
144002404 hQuieter DNS traffic, slower change
86400144024 h / 1 dayRarely changed records; risky right before cutover

Migration and delays

  • Before cutover: lower the TTL (for example 86400 → 300), wait at least the old TTL, then change the record. After things stabilize, raise the TTL, for example to 3600.
  • Setting 300 today does not flush yesterday’s caches that still hold a 86400 TTL.
  • If you still see the old address: a different resolver, OS or browser cache, a CDN, or the wrong record or zone. Check with dig @1.1.1.1.

Record change vs nameservers

Changing an A or MX record is not the same as changing nameservers at the registrar. This calculator uses the TTL of the record you edit. A nameserver delegation also has a parent-zone wait — often set by the registry — that you do not enter here. That is why “registrar propagation” can last longer than the result on this page.

A / AAAA / CNAME / MX scenarios

  • A / AAAA — TTL sits directly on the IP. Web server move: short TTL → change IP → observe → longer TTL.
  • CNAME — clients follow the target. Both the CNAME TTL and the target record TTL matter. A short CNAME with a long target A can still hold the old address on the A side. This calculator uses only the one TTL pair you enter.
  • MX — for a mail cutover, lower the MX TTL and the related MX host A/AAAA records in advance. Keep priorities consistent during the switch.
  • Multiple NS / anycast — consistent publication on all NS; TTL will not fix a split zone.

Pre-change checklist

  • Note the current TTL and the new TTL, then compute the wait in the calculator.
  • Lower the TTL to 300 (or 60 in an emergency), wait at least the previous TTL, change the record, and check the answer on two or three resolvers.
  • After things stabilize, raise the TTL, for example to 3600, and write the real timings into the runbook.

Example: Monday 10:00 — 86400300; Tuesday 10:00 — change A; Wednesday — raise to 3600.