Email retry schedule calculator: how long does a server keep retrying deferred mail?
In short: Enter the first retry wait, the longest wait and the queue lifetime. The calculator lists each retry time and when the message would be returned as a bounce. Limit: It uses a simple doubling model and does not copy any one server's scheduler.
Enter the first retry wait, the longest wait between retries and how long the server keeps a message. The calculator doubles the wait after each failed try until it reaches the longest wait, lists every retry time, counts the tries, and shows when the server would give up and send a bounce back.
Price: this tool is free. Checking a whole email list is from $9/mo, and the first 100 checks are free with Google, no card. Check your list free nowSee pricing
The numbers below are examples. Replace them with your own server's settings.
Postfix: minimal_backoff_time.
Postfix: maximal_backoff_time.
Postfix: maximal_queue_lifetime.
- Retries
- 110
- Last retry at
- 4 d 23 h 1 min
- Returned after
- 5 d
1
- Wait before it
- 5 min
- Time since first failure
- 5 min
2
- Wait before it
- 10 min
- Time since first failure
- 15 min
3
- Wait before it
- 20 min
- Time since first failure
- 35 min
4
- Wait before it
- 40 min
- Time since first failure
- 1 h 15 min
5
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 h 21 min
6
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 h 28 min
7
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 h 35 min
8
- Wait before it
- 1 h 6 min
- Time since first failure
- 5 h 41 min
9
- Wait before it
- 1 h 6 min
- Time since first failure
- 6 h 48 min
10
- Wait before it
- 1 h 6 min
- Time since first failure
- 7 h 55 min
11
- Wait before it
- 1 h 6 min
- Time since first failure
- 9 h 1 min
12
- Wait before it
- 1 h 6 min
- Time since first failure
- 10 h 8 min
13
- Wait before it
- 1 h 6 min
- Time since first failure
- 11 h 15 min
14
- Wait before it
- 1 h 6 min
- Time since first failure
- 12 h 21 min
15
- Wait before it
- 1 h 6 min
- Time since first failure
- 13 h 28 min
16
- Wait before it
- 1 h 6 min
- Time since first failure
- 14 h 35 min
17
- Wait before it
- 1 h 6 min
- Time since first failure
- 15 h 41 min
18
- Wait before it
- 1 h 6 min
- Time since first failure
- 16 h 48 min
19
- Wait before it
- 1 h 6 min
- Time since first failure
- 17 h 55 min
20
- Wait before it
- 1 h 6 min
- Time since first failure
- 19 h 1 min
21
- Wait before it
- 1 h 6 min
- Time since first failure
- 20 h 8 min
22
- Wait before it
- 1 h 6 min
- Time since first failure
- 21 h 15 min
23
- Wait before it
- 1 h 6 min
- Time since first failure
- 22 h 21 min
24
- Wait before it
- 1 h 6 min
- Time since first failure
- 23 h 28 min
25
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 35 min
26
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 1 h 41 min
27
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 2 h 48 min
28
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 3 h 55 min
29
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 5 h 1 min
30
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 6 h 8 min
31
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 7 h 15 min
32
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 8 h 21 min
33
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 9 h 28 min
34
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 10 h 35 min
35
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 11 h 41 min
36
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 12 h 48 min
37
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 13 h 55 min
38
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 15 h 1 min
39
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 16 h 8 min
40
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 17 h 15 min
41
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 18 h 21 min
42
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 19 h 28 min
43
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 20 h 35 min
44
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 21 h 41 min
45
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 22 h 48 min
46
- Wait before it
- 1 h 6 min
- Time since first failure
- 1 d 23 h 55 min
47
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 1 h 1 min
48
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 2 h 8 min
49
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 3 h 15 min
50
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 4 h 21 min
51
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 5 h 28 min
52
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 6 h 35 min
53
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 7 h 41 min
54
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 8 h 48 min
55
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 9 h 55 min
56
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 11 h 1 min
57
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 12 h 8 min
58
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 13 h 15 min
59
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 14 h 21 min
60
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 15 h 28 min
61
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 16 h 35 min
62
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 17 h 41 min
63
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 18 h 48 min
64
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 19 h 55 min
65
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 21 h 1 min
66
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 22 h 8 min
67
- Wait before it
- 1 h 6 min
- Time since first failure
- 2 d 23 h 15 min
68
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 21 min
69
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 1 h 28 min
70
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 2 h 35 min
71
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 3 h 41 min
72
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 4 h 48 min
73
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 5 h 55 min
74
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 7 h 1 min
75
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 8 h 8 min
76
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 9 h 15 min
77
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 10 h 21 min
78
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 11 h 28 min
79
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 12 h 35 min
80
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 13 h 41 min
81
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 14 h 48 min
82
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 15 h 55 min
83
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 17 h 1 min
84
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 18 h 8 min
85
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 19 h 15 min
86
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 20 h 21 min
87
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 21 h 28 min
88
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 22 h 35 min
89
- Wait before it
- 1 h 6 min
- Time since first failure
- 3 d 23 h 41 min
90
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 48 min
91
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 1 h 55 min
92
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 3 h 1 min
93
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 4 h 8 min
94
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 5 h 15 min
95
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 6 h 21 min
96
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 7 h 28 min
97
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 8 h 35 min
98
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 9 h 41 min
99
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 10 h 48 min
100
- Wait before it
- 1 h 6 min
- Time since first failure
- 4 d 11 h 55 min
| Retry | Wait before it | Time since first failure |
|---|---|---|
| 1 | 5 min | 5 min |
| 2 | 10 min | 15 min |
| 3 | 20 min | 35 min |
| 4 | 40 min | 1 h 15 min |
| 5 | 1 h 6 min | 2 h 21 min |
| 6 | 1 h 6 min | 3 h 28 min |
| 7 | 1 h 6 min | 4 h 35 min |
| 8 | 1 h 6 min | 5 h 41 min |
| 9 | 1 h 6 min | 6 h 48 min |
| 10 | 1 h 6 min | 7 h 55 min |
| 11 | 1 h 6 min | 9 h 1 min |
| 12 | 1 h 6 min | 10 h 8 min |
| 13 | 1 h 6 min | 11 h 15 min |
| 14 | 1 h 6 min | 12 h 21 min |
| 15 | 1 h 6 min | 13 h 28 min |
| 16 | 1 h 6 min | 14 h 35 min |
| 17 | 1 h 6 min | 15 h 41 min |
| 18 | 1 h 6 min | 16 h 48 min |
| 19 | 1 h 6 min | 17 h 55 min |
| 20 | 1 h 6 min | 19 h 1 min |
| 21 | 1 h 6 min | 20 h 8 min |
| 22 | 1 h 6 min | 21 h 15 min |
| 23 | 1 h 6 min | 22 h 21 min |
| 24 | 1 h 6 min | 23 h 28 min |
| 25 | 1 h 6 min | 1 d 35 min |
| 26 | 1 h 6 min | 1 d 1 h 41 min |
| 27 | 1 h 6 min | 1 d 2 h 48 min |
| 28 | 1 h 6 min | 1 d 3 h 55 min |
| 29 | 1 h 6 min | 1 d 5 h 1 min |
| 30 | 1 h 6 min | 1 d 6 h 8 min |
| 31 | 1 h 6 min | 1 d 7 h 15 min |
| 32 | 1 h 6 min | 1 d 8 h 21 min |
| 33 | 1 h 6 min | 1 d 9 h 28 min |
| 34 | 1 h 6 min | 1 d 10 h 35 min |
| 35 | 1 h 6 min | 1 d 11 h 41 min |
| 36 | 1 h 6 min | 1 d 12 h 48 min |
| 37 | 1 h 6 min | 1 d 13 h 55 min |
| 38 | 1 h 6 min | 1 d 15 h 1 min |
| 39 | 1 h 6 min | 1 d 16 h 8 min |
| 40 | 1 h 6 min | 1 d 17 h 15 min |
| 41 | 1 h 6 min | 1 d 18 h 21 min |
| 42 | 1 h 6 min | 1 d 19 h 28 min |
| 43 | 1 h 6 min | 1 d 20 h 35 min |
| 44 | 1 h 6 min | 1 d 21 h 41 min |
| 45 | 1 h 6 min | 1 d 22 h 48 min |
| 46 | 1 h 6 min | 1 d 23 h 55 min |
| 47 | 1 h 6 min | 2 d 1 h 1 min |
| 48 | 1 h 6 min | 2 d 2 h 8 min |
| 49 | 1 h 6 min | 2 d 3 h 15 min |
| 50 | 1 h 6 min | 2 d 4 h 21 min |
| 51 | 1 h 6 min | 2 d 5 h 28 min |
| 52 | 1 h 6 min | 2 d 6 h 35 min |
| 53 | 1 h 6 min | 2 d 7 h 41 min |
| 54 | 1 h 6 min | 2 d 8 h 48 min |
| 55 | 1 h 6 min | 2 d 9 h 55 min |
| 56 | 1 h 6 min | 2 d 11 h 1 min |
| 57 | 1 h 6 min | 2 d 12 h 8 min |
| 58 | 1 h 6 min | 2 d 13 h 15 min |
| 59 | 1 h 6 min | 2 d 14 h 21 min |
| 60 | 1 h 6 min | 2 d 15 h 28 min |
| 61 | 1 h 6 min | 2 d 16 h 35 min |
| 62 | 1 h 6 min | 2 d 17 h 41 min |
| 63 | 1 h 6 min | 2 d 18 h 48 min |
| 64 | 1 h 6 min | 2 d 19 h 55 min |
| 65 | 1 h 6 min | 2 d 21 h 1 min |
| 66 | 1 h 6 min | 2 d 22 h 8 min |
| 67 | 1 h 6 min | 2 d 23 h 15 min |
| 68 | 1 h 6 min | 3 d 21 min |
| 69 | 1 h 6 min | 3 d 1 h 28 min |
| 70 | 1 h 6 min | 3 d 2 h 35 min |
| 71 | 1 h 6 min | 3 d 3 h 41 min |
| 72 | 1 h 6 min | 3 d 4 h 48 min |
| 73 | 1 h 6 min | 3 d 5 h 55 min |
| 74 | 1 h 6 min | 3 d 7 h 1 min |
| 75 | 1 h 6 min | 3 d 8 h 8 min |
| 76 | 1 h 6 min | 3 d 9 h 15 min |
| 77 | 1 h 6 min | 3 d 10 h 21 min |
| 78 | 1 h 6 min | 3 d 11 h 28 min |
| 79 | 1 h 6 min | 3 d 12 h 35 min |
| 80 | 1 h 6 min | 3 d 13 h 41 min |
| 81 | 1 h 6 min | 3 d 14 h 48 min |
| 82 | 1 h 6 min | 3 d 15 h 55 min |
| 83 | 1 h 6 min | 3 d 17 h 1 min |
| 84 | 1 h 6 min | 3 d 18 h 8 min |
| 85 | 1 h 6 min | 3 d 19 h 15 min |
| 86 | 1 h 6 min | 3 d 20 h 21 min |
| 87 | 1 h 6 min | 3 d 21 h 28 min |
| 88 | 1 h 6 min | 3 d 22 h 35 min |
| 89 | 1 h 6 min | 3 d 23 h 41 min |
| 90 | 1 h 6 min | 4 d 48 min |
| 91 | 1 h 6 min | 4 d 1 h 55 min |
| 92 | 1 h 6 min | 4 d 3 h 1 min |
| 93 | 1 h 6 min | 4 d 4 h 8 min |
| 94 | 1 h 6 min | 4 d 5 h 15 min |
| 95 | 1 h 6 min | 4 d 6 h 21 min |
| 96 | 1 h 6 min | 4 d 7 h 28 min |
| 97 | 1 h 6 min | 4 d 8 h 35 min |
| 98 | 1 h 6 min | 4 d 9 h 41 min |
| 99 | 1 h 6 min | 4 d 10 h 48 min |
| 100 | 1 h 6 min | 4 d 11 h 55 min |
Showing the first 100 of 110 rows. The download has all of them.
Formula: wait n = the smaller of the longest wait and (first wait × 2^(n−1)). Retries stop when the next wait would pass the queue lifetime. Real servers add their own spreading.
Sample result
With a 5 minute first wait, a 4,000 second longest wait and 5 days in the queue, a server retries 110 times.
- Retries
- 110
- First retry
- 5 min
- Last retry
- 4 d 23 h 1 min
What this means for you
Retries only help temporary failures; a dead address never succeeds, however often it is tried.
- Wait doubles up to a cap
- Every retry time
- When the bounce is sent
- Schedule as a CSV
- Retries
- Deferred
- Calculator
By SimpleVerifier Team · Last updated · Runs in your browser; nothing you paste is sent to us
Retries are for temporary failures only.
- Dead addresses never succeed on a retry, so check the list instead.
- Upload or paste it at /verify. Every address gets a live mailbox check, and the first 100 email checks are free with a Google sign-in, no card.
How do I work out when a deferred email will be retried?
- Enter the first wait in seconds. Postfix's setting for it is minimal_backoff_time.
- Enter the longest wait in seconds (maximal_backoff_time) and the queue lifetime in days (maximal_queue_lifetime).
- Read the list of retry times and the time the message would be returned.
- Compare it to the delay you saw in your own log or bounce notice.
Example
- You enter
- Example settings: first wait 300 seconds, longest wait 4,000 seconds, queue lifetime 5 days.
- You get
- 110 retries. The first four come 5 min, 15 min, 35 min and 1 h 15 min after the first failure; the last is at 4 d 23 h 1 min, and the message is returned 58 min 20 s later at 5 days.
- Limits
- Runs in your browser. It uses a simple doubling model and does not copy any one server's scheduler.
How does the schedule work?
A deferred message waits, tries again, and waits longer after each failure. This calculator uses a simple model: wait number n is the smaller of the longest wait and the first wait times 2 to the power of n minus 1. The times add up from the first failure until the next wait would pass the queue lifetime.
Real servers differ. Postfix, for example, also spreads retries by queue load, so use the output as a guide to the shape of the schedule, not as a promise of exact times.
Why does a message bounce days later?
A temporary failure, such as a full mailbox or a server that is down, is retried until the queue lifetime ends, and only then does the sender get a bounce notice. See message expired bounces for that case, and soft bounce for what the status means.
What about greylisting?
A greylisting server answers the first try with a temporary failure on purpose and accepts a later retry. The first wait in this calculator is how soon your server comes back. To read your own log, use the Postfix log summarizer; for the code behind a deferral, the bounce message analyzer.
Who uses this tool, and for what?
- Sysadmins
- Check how long a deferred message stays queued with your settings.
- Cold emailers
- Understand why a bounce notice arrives days after the send.
- Support teams
- Explain to a customer when their message will be returned if it never goes through.
What can’t this tool tell you?
- It uses a simple doubling model and does not copy any one server's scheduler.
- Some servers randomise or space retries by queue load.
- It cannot tell you why the message was deferred.
- Permanent failures are not retried, so none of this applies to a bad address.
Common questions
- Do these times match every mail server?
- No. They follow a simple doubling model. Check your own server's settings and logs for exact times.
- What are Postfix's default values?
- Check your own configuration with postconf. Settings with these names are minimal_backoff_time, maximal_backoff_time and maximal_queue_lifetime.
- Does a retry fix a bad address?
- No. A mailbox that does not exist returns a permanent failure at once and is not retried.
- What does a deferred message mean?
- The receiving server said try again later. It is a temporary failure, not a bounce yet.
- Why is the last gap shorter than the others?
- The next full wait would run past the queue lifetime, so the server stops and returns the message at the end.
- Is anything uploaded?
- No. The schedule is worked out in your browser.
A tidy list can still be full of dead addresses.
Extracting, deduplicating and syntax checks all work on the text of an address. None of them can tell whether the mailbox exists. Only the server that hosts it can answer that, through an SMTP check, and that is what the paid product does.
- Upload the cleaned file as it is: CSVs up to 100,000 rows
- A real SMTP mailbox check on every row, with catch-all detection
- Small list? Starter at $9/mo covers 2,500 emails a month, cancel anytime
Plans from $9 a month, cancel anytime, no contract. Sign in with Google and your first 100 email checks are free, no card. The free tools stay free either way.