Exponential Backoff with Jitter
The reference retry algorithm for network calls and message redelivery.
Definition
Exponential backoff computes the delay as base × 2^n (n = attempt number), capped by a maximum. Jitter adds randomness to that delay to avoid the thundering herd, where many clients retry in lockstep after an outage and overwhelm the service just as it recovers. Common variants are full jitter and decorrelated jitter.
Origin
Popularized by the AWS Architecture Blog post "Exponential Backoff and Jitter" (Marc Brooker, 2015); the backoff principle derives from the binary exponential backoff algorithm of the IEEE 802.3 standard (CSMA/CD Ethernet).
Example in context
Full jitter:delay = random(0, min(cap, base * 2 ** attempt))
Related terms
- DLQ — destination once backoffs are exhausted.
- Idempotency — prerequisite for safe retries.