Webhook delivery handling

Size webhook processing for bursts and redelivery

Average event rate hides the load after an outage. Keep receipt available while workers catch up within the limits of downstream services.

In this article

Separate receiver and worker capacity

The receiver performs bounded verification and durable acceptance. Workers perform the potentially slow business action. Measure each path independently.

A fast receiver can still fail if its storage cannot sustain the burst. A large worker pool can still be limited by an external API or shared database.

Include payload size and signature work in receiver measurements, not only request count.

Estimate net catch-up rate

Compare incoming events with completed processing. If an illustrative backlog contains 30,000 events, new traffic arrives at 50 per second and workers complete 100 per second, the net drain rate is 50 per second. Catch-up takes about ten minutes before interruptions and retries.

Do not divide backlog by total worker throughput while ignoring new arrivals. That understates recovery time.

Use measured downstream limits to choose safe concurrency and preserve fairness across account scopes.

Account for duplicate work

Redeliveries should avoid repeating business effects, but they still consume verification, lookup and storage resources. Measure duplicate receipt rate and its cause.

An endpoint that often times out after durable acceptance can trigger avoidable retries. Fixing acknowledgement latency may reduce load more effectively than adding workers.

Keep deduplication retention aligned with the recovery model so old replays do not unexpectedly become new effects.

Bound retention and failed work

Store the payload or reference needed for recovery under a deliberate retention policy. Large dead-letter collections can become both a cost and data-exposure problem.

Assign owners to failed event categories and remove resolved temporary copies appropriately. Do not delete unresolved evidence solely to reduce storage without a recovery decision.

The capacity plan should preserve durable receipt and make predictable progress on outcomes. High request throughput is not useful if accepted events accumulate faster than the business processing path can complete them.

Primary sources

GitHub: webhook best practices

References checked 11 September 2026.