# Excessive Lambda retries (retry storms) | Cloud Efficiency Hub

Canonical: https://www.pointfive.co/efficiency-hub/inefficiencies/excessive-lambda-retries-retry-storms

Retry storms occur when a function fails and is automatically retried repeatedly by the service that invoked it: asynchronous invocations (e.g.,...

By: Liam Greenamyre

Updated: 2026-09-28

[Cloud Efficiency Hub](https://www.pointfive.co/efficiency-hub) 

# Excessive Lambda Retries (Retry Storms)

The short version

Retry storms occur when a function fails and is automatically retried repeatedly by the service that invoked it: asynchronous invocations (e.g., EventBridge, SNS, S3) are retried twice by default after function errors, SQS event source mappings return a failed message to the queue after each visibility timeout until the queue's redrive policy (maxReceiveCount) moves it to a dead-letter queue or the message expires, and stream event source mappings (Kinesis, DynamoDB Streams) retry the entire batch until the records expire unless a retry limit is set.

[Liam Greenamyre](https://www.linkedin.com/in/liam-greenamyre-01606310/)

Principal Product Manager (Technical - External Services) @ Amazon Web Services (AWS)

AWS service

[AWS Lambda](https://www.pointfive.co/efficiency-hub/cloud-services/aws-lambda)

Category

[Compute](https://www.pointfive.co/efficiency-hub/service-category/compute)

Reference

CER-0213

Type

Inefficient Configuration

## Explanation

Why the waste happens and who it affects.

If the error is persistent and unhandled, retries can accumulate rapidly - often invisibly - creating a large volume of billable executions with no successful outcome. This is especially costly when functions run for extended durations or have high memory allocation.

## Billing model

The pricing dimensions that drive this cost.

- Each retry counts as a separate request

- Billed per millisecond of execution time for each retry

- Retries from failed invocations can exponentially increase cost if not controlled

## How to detect

5 checks to find it in your estate.

- Check for high error-to-success ratios in CloudWatch Metrics

- Investigate spikes in invocation count after initial failure events

- Correlate retries with common payloads and error messages

- Review configurations for MaximumRetryAttempts and DLQs

- Assess the presence of throttling, downstream timeouts, or missing exception handling

## How to fix

6 ways to remove the waste.

- Configure DLQs to isolate and inspect failed invocations

- Implement exponential backoff or circuit breaker patterns in retry logic

- Set appropriate retry limits for each source: MaximumRetryAttempts and MaximumRecordAgeInSeconds on stream event source mappings (Kinesis, DynamoDB Streams), MaximumRetryAttempts (0-2) and maximum event age on asynchronous invocation settings, and a redrive policy with maxReceiveCount and a dead-letter queue on SQS source queues

- Improve exception handling and idempotency in function code

- Utilize anomaly detection software to alert on abnormal retry patterns

- Monitor CloudWatch for retry-specific metrics and alarms

## Documentation

Vendor references for pricing and configuration.

- [Understanding retry behavior in Lambda - AWS Lambda  docs.aws.amazon.com](https://docs.aws.amazon.com/lambda/latest/dg/invocation-retries.html)

- [Capturing records of Lambda asynchronous invocations - AWS Lambda  docs.aws.amazon.com](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html)

- [How Lambda processes records from stream and queue-based event sources - AWS Lambda  docs.aws.amazon.com](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventsourcemapping.html)

- [Handling errors for an SQS event source in Lambda - AWS Lambda  docs.aws.amazon.com](https://docs.aws.amazon.com/lambda/latest/dg/services-sqs-errorhandling.html)

- [AWS Lambda Pricing  aws.amazon.com](https://aws.amazon.com/lambda/pricing/)

## Related inefficiencies

[Browse the library](https://www.pointfive.co/efficiency-hub)

- AWS Lambda  CER-0204

### [Inefficient SnapStart Configuration in Lambda](https://www.pointfive.co/efficiency-hub/inefficiencies/inefficient-snapstart-configuration-in-lambda)

SnapStart reduces cold-start latency, but when configured inefficiently, it can increase costs. For Python and .NET functions, high-traffic workloads can trigger frequent snapshot restorations, multiplying costs. Slow initialization code...

Compute

- AWS Lambda  CER-0230

### [Excessive Lambda Duration from Synchronous Waiting](https://www.pointfive.co/efficiency-hub/inefficiencies/excessive-lambda-duration-from-synchronous-waiting)

Some Lambda functions perform synchronous calls to other services, APIs, or internal microservices and wait for the response before proceeding. During this time, the Lambda is idle from a compute perspective but still fully billed. This...

Compute

- AWS Lambda  CER-0218

### [Suboptimal Architecture Selection in AWS Lambda](https://www.pointfive.co/efficiency-hub/inefficiencies/suboptimal-architecture-selection-in-aws-lambda)

Lambda functions default to the x86\_64 architecture, which is more expensive than Arm64. For many workloads, especially those written in interpreted languages (e.g., Python, Node.js) or compiled to architecture-neutral bytecode (e.g.,...

Compute

---
Source: the public page above. Product screenshots and illustrative interfaces are examples, not live customer data.

