Skip to main content

What is a good retry schedule (e.g., increasing intervals)?

A good retry schedule balances persistence with efficiency:

Exponential backoff pattern:

Retry 1: 5 minutes. Retry 2: 15 minutes. Retry 3: 30 minutes. Retry 4: 1 hour. Retry 5: 2 hours. Retry 6: 4 hours. Retry 7: 8 hours. Retry 8+: Every 12 hours.

Why exponential backoff:

Quick retries catch brief outages. Longer gaps give time for resolution. Reduces load on receiving server. Efficient use of queue resources.

Total window:

48-72 hours is standard. Beyond this, issues are likely permanent. Time-sensitive messages may use shorter windows.

Adaptive scheduling:

Some systems adjust based on error type. Greylisting may warrant faster first retry. Server errors may need longer delays.

Exponential backoff is patient but not infinite. Give issues time to resolve without wasting resources.