Burst detection and volume smoothing
Why it matters
Campaigns that dispatch thousands of messages within minutes create volume spikes that look identical to spam runs from the perspective of receiving mail servers. ISPs score sending behavior partly on burst patterns — a sudden jump from zero to 10,000 messages per hour is a reputation signal regardless of content quality. Volume smoothing distributes the same total campaign volume over hours instead of minutes, keeping the per-minute send rate below ISP thresholds and avoiding the spike-and-throttle pattern that damages reputation cumulatively over multiple campaigns.
Severity rationale
Low because a single burst event typically results in temporary deferral rather than permanent blocking, but repeated burst patterns train ISP filters to treat the sending IP as a high-risk sender.
Remediation
Use Bottleneck (or equivalent token-bucket library) with nested global and per-ISP limiters. The outer global limiter caps total system throughput; inner per-ISP limiters enforce provider-specific limits:
import Bottleneck from 'bottleneck'
const globalLimiter = new Bottleneck({
reservoir: 100, // 100 sends per second
reservoirRefreshAmount: 100,
reservoirRefreshInterval: 1_000,
maxConcurrent: 20
})
const ispLimiters = new Map<string, Bottleneck>()
function getIspLimiter(domain: string): Bottleneck {
if (!ispLimiters.has(domain)) {
const { maxPerHour, maxConcurrent } = getIspLimit(domain)
ispLimiters.set(domain, globalLimiter.chain(new Bottleneck({
reservoir: Math.floor(maxPerHour / 60),
reservoirRefreshAmount: Math.floor(maxPerHour / 60),
reservoirRefreshInterval: 60_000,
maxConcurrent
})))
}
return ispLimiters.get(domain)!
}
Route all outgoing email through limiter.schedule(() => sendEmail(job)) — never dispatch directly to the transport.
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the Deliverability Engineering Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
External references
- iso-25010:2011 · performance-efficiency — ISO 25010 Performance Efficiency characteristic
Taxons
History
- 2026-04-18·v1.0.0·Initial import from deliverability-engineering·automated