Underutilized Read Capacity on a DynamoDB Table
Service Category
Database
Cloud Provider
AWS
Service Name
AWS DynamoDB
Inefficiency Type
Underutilization
Explanation

Provisioned capacity mode is appropriate for workloads with consistent or predictable throughput. However, when read capacity is significantly over-provisioned relative to actual usage, it results in wasted spend. This inefficiency is especially common in dev/test environments, legacy systems, or workloads that have tapered off over time but were never adjusted.

Relevant Billing Model

In Provisioned Capacity Mode, DynamoDB charges hourly for:

  • Read Capacity Units (RCUs) and Write Capacity Units (WCUs) based on the provisioned level, not actual consumption
  • Additional services such as backups, streams, and global tables also generate usage-based charges

Read and write capacity is billed continuously, regardless of whether it is fully used. Over-provisioning RCUs or WCUs leads to avoidable cost.

Detection
  • Identify DynamoDB tables using Provisioned capacity mode
  • Review utilization history to assess average read throughput
  • Determine whether actual read usage is consistently below the provisioned capacity
  • Check for the absence of throttling or bursty usage patterns that would require excess headroom
  • Evaluate whether Auto Scaling is enabled and if current minimum thresholds are still appropriate
  • Confirm the table's environment (e.g., production vs. test) and business criticality
  • Engage with workload owners to validate whether capacity can be safely reduced or if On-Demand is more appropriate
Remediation

Reduce provisioned read capacity to better match observed usage, either manually or by tuning Auto Scaling settings. For workloads with highly variable or low average usage, consider switching to On-Demand mode, which offers pay-per-request pricing and removes the need to manage throughput provisioning.