DynamoDB tables use automatic capacity scaling via on-demand mode or PROVISIONED mode with auto scaling enabled for both read and write capacity units.
Provisioned tables are evaluated for scaling on both dimensions.
Risk
Insufficient capacity scaling causes throttling that degrades availability and increases latency.
Sustained throttling can trigger retry storms, timeouts, and backlogs, risking missed writes or out-of-order processing that impacts data integrity and drives operational costs.
prowler aws --checks dynamodb_table_autoscaling_enabled
Recommendation
Adopt elastic capacity: prefer on-demand for unpredictable traffic, or use PROVISIONED with auto scaling on both reads and writes.
Define safe utilization targets and bounds, monitor consumption, and plan for bursts to maintain availability and resilience over manual fixed throughput.
Remediation
aws dynamodb update-table --table-name <table-name> --billing-mode PAY_PER_REQUEST
- Open the AWS console and go to DynamoDB
- Click Tables and select your table
- Open the Additional settings tab and click Edit in Read/write capacity
- Set Capacity mode to On-demand (PAY_PER_REQUEST)
- Click Save
Source Code
Resource Type
AwsDynamoDbTable