Error: DynamoDB throttling error

Answered by Rafal Wilinski
Last updated: October 23rd, 2026
Solution
DynamoDB throttling means a table, index, or partition cannot accept the requested throughput, or a configured limit was reached. It affects both provisioned and on-demand tables. Inspect ThrottlingReasons and the resource ARN before deciding which setting to change.
Use the reason, not just the exception name
ProvisionedThroughputExceeded: increase the affected table or GSI’s provisioned capacity, review auto-scaling targets, and account for scaling delay.KeyRangeThroughputExceeded: investigate concentrated access to a partition. More aggregate capacity alone may not fix a hot key; spread keys, reduce concurrency, cache suitable reads, or redesign the access pattern.AccountLimitExceeded: check the applied table or index throughput quota in that Region and request a quota increase if appropriate.MaxOnDemandThroughputExceeded: review the maximum throughput cap configured on the affected on-demand table or GSI. Raising a cap can raise spending.
A reason such as IndexWriteKeyRangeThroughputExceeded identifies an index write bottleneck. A throttled GSI can also cause base-table writes to fail. Check index dimensions in CloudWatch rather than looking only at aggregate table consumption.
Capture useful evidence
try {
await db.send(command); // Existing SDK v3 client and operation.
} catch (error) {
console.error({
name: error.name,
requestId: error.$metadata?.requestId,
reasons: error.ThrottlingReasons
});
throw error;
}Use a current SDK so the modeled reason fields are available. Correlate the exception with the appropriate read or write throttle metric and Contributor Insights. Do not log item contents or credentials as diagnostic context.
Retry without amplifying overload
Keep SDK retries bounded and use exponential backoff with jitter. Limit concurrent work and smooth bursts. For successful batch responses, separately retry UnprocessedItems or UnprocessedKeys. Persistent retries are a signal to fix capacity or access patterns, not an unlimited queue.
Before a planned spike, check warm throughput and pre-warm where appropriate. On-demand mode still has ramp-up behavior, quotas, partition limits, and optional caps. Switching modes is not a universal throttling fix.
See the throttling guide and AWS documentation.
Other Common DynamoDB Errors (with Solutions)
- KMS Key Access Denied Error DynamoDB
- Boto3 DynamoDB KeyError
- AWS DynamoDB errors ResourceNotFoundException
- could not unconvert attribute dynamodb
- DynamoDB string set cannot be empty
- failed to list tables not authorized dynamodb
- DynamoDB Network Error: self signed certificate in chain
- DynamoDB Is Unsupported It Cannot Be Instantiated
- dynamodb cannot read property 'push' of undefined
- DynamoDB parameter validation failed
- dynamodb index not found
- dynamodb query is not null
- could not unmarshal the value dynamodb
- Error retrieving DynamoDB table item validation exception
- DynamoDB error 400
Dynobase is a Professional GUI Client for DynamoDB
Start your 7-day free trial today
Product Features
DynamoDB Tools
- SSH GUI Client
- Chat With Cloud
- MongoDB GUI Client
- AWS Cost Monitoring
- DynamoDB Query Builder
- DynamoDB Code Examples
- DynamoDB Node.js Queries
- DynamoDB JSON Converter
- DynamoDB UUID Generator
- DynamoDB Local Admin GUI
- DynamoDB Pricing Calculator
- DynamoDB Single-Table Design
- Best DynamoDB GUI Clients
- Dynobase vs DynoTable