Skip to main content
The bucket has capacity limit. Each allowed request adds 1. The bucket leaks at limit / duration. If adding this request would overflow, it’s rejected. Unlike token bucket, you don’t get an instant burst of limit from a full (empty) start — you fill from zero.

When to use it

Traffic shaping. You want bursty clients to become a smooth stream, and you want to reject anything above that stream.

vs token bucket

Shape

number
Space left in the bucket after this request.
number
Allowed: when the bucket will be empty. Rejected: when there will be space for one more request.