DynamoDB Capacity Calculator
Convert a DynamoDB read and write workload into RCUs and WCUs, then compare provisioned capacity against on-demand pricing.
About DynamoDB Capacity Calculator
DynamoDB rounds every operation up to a whole capacity unit before charging, so a 6 KB item costs two read units and a 1.2 KB item costs two write units — item size shaping is a real lever. Provisioned mode bills reserved units per hour whether used or not, while on-demand bills the units actually consumed, which is why the crossover sits at roughly 15–20% sustained utilisation of a provisioned table. All four prices are editable inputs with realistic us-east-1 defaults, so confirm current DynamoDB pricing with AWS for your region. The two modes can differ by an order of magnitude in either direction: on-demand wins on spiky or unknown traffic, provisioned with autoscaling wins on steady traffic, and the only way to know which is yours is to price both.
Formula
DynamoDB Capacity
RCU = reads/s × ceil(item KB ÷ 4) × consistency factor (0.5 eventual, 1 strong, 2 transactional); WCU = writes/s × ceil(item KB) × (2 if transactional).
- RCU
- One strongly consistent 4 KB read per second, or two eventually consistent
- WCU
- One 1 KB write per second
- consistency factor
- Halves the cost for eventual reads, doubles it for transactions
- 2,628,000
- Seconds in a 730-hour month, used to convert a rate into request units
Worked example
With the default values below, DynamoDB Capacity Calculator returns Provisioned Monthly Cost of $249.75. Change any input above and every figure here is recalculated in your browser.
Inputs used
- Read operationsaccepts 0–5,000,000 reads/s
- 500 reads/s
- Average item size readaccepts 0.1–400 KB
- 6 KB
- Read consistencyone of Eventually consistent — half an RCU per 4 KB, Strongly consistent — one RCU per 4 KB, Transactional — two RCUs per 4 KB
- Eventually consistent — half an RCU per 4 KB
- Write operationsaccepts 0–5,000,000 writes/s
- 200 writes/s
- Average item size writtenaccepts 0.1–400 KB
- 2 KB
- Write typeone of Standard write — one WCU per 1 KB, Transactional write — two WCUs per 1 KB
- Standard write — one WCU per 1 KB
- Provisioned read capacity priceminimum 0 $/RCU-hour
- 0.00013 $/RCU-hour
- Provisioned write capacity priceminimum 0 $/WCU-hour
- 0.00065 $/WCU-hour
- Billed hours per monthaccepts 0–744 hours
- 730 hours
- Table storageaccepts 0–1,000,000 GB
- 50 GB
- Storage priceminimum 0 $/GB-month
- 0.25 $/GB-month
- On-demand read priceminimum 0 $/million read units
- 0.125 $/million read units
- On-demand write priceminimum 0 $/million write units
- 0.625 $/million write units
Results
- Provisioned Monthly Cost
- $249.75
- Read Capacity Units
- 500 RCU
- Write Capacity Units
- 400 WCU
- Storage
- $12.50
- On-demand Monthly Cost
- $833.75
- Cheaper Capacity Mode
- Provisioned capacity is cheaper for this traffic shape
Step by step
- 1Values used
- 2DynamoDB Capacity
- 3Provisioned Monthly Cost= 249.75
- 4Read Capacity Units= 500 RCU
- 5Write Capacity Units= 400 WCU
- 6Storage= 12.50
- 7On-demand Monthly Cost= 833.75
- 8Cheaper Capacity Mode= Provisioned capacity is cheaper for this traffic shape
Assumptions and limits
- The result is derived only from the 13 inputs listed above. Anything not among them is not part of the calculation.
- In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
- Figures are rounded for display to 2 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.
How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.
Frequently Asked Questions
How is DynamoDB Capacity calculated?
RCU = reads/s × ceil(item KB ÷ 4) × consistency factor (0.5 eventual, 1 strong, 2 transactional); WCU = writes/s × ceil(item KB) × (2 if transactional). DynamoDB rounds every operation up to a whole capacity unit before charging, so a 6 KB item costs two read units and a 1.2 KB item costs two write units — item size shaping is a real lever. Provisioned mode bills reserved units per hour whether used or not, while on-demand bills the units actually consumed, which is why the crossover sits at roughly 15–20% sustained utilisation of a provisioned table. All four prices are editable inputs with realistic us-east-1 defaults, so confirm current DynamoDB pricing with AWS for your region.
Why does DynamoDB Capacity matter?
The two modes can differ by an order of magnitude in either direction: on-demand wins on spiky or unknown traffic, provisioned with autoscaling wins on steady traffic, and the only way to know which is yours is to price both.
What values do I need to enter?
This calculator takes 13 inputs: Read operations, Average item size read, Read consistency, Write operations, Average item size written, Write type, Provisioned read capacity price, Provisioned write capacity price, Billed hours per month, Table storage, Storage price, On-demand read price, On-demand write price. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.
Why do transactions cost double?
A transactional read or write is executed as a two-phase operation — prepare then commit — so DynamoDB charges two capacity units for every unit of data. Reserve TransactGetItems and TransactWriteItems for the operations that genuinely need atomicity.
Are these prices current?
They are realistic us-east-1 standard-table defaults. Prices differ by region and for Standard-Infrequent Access tables, so confirm them on the DynamoDB pricing page before budgeting.
