DynamoDB charges for reading, writing, and storing data in your DynamoDB tables, along with any optional features you choose to enable. DynamoDB has two capacity modes, which come with specific billing options for processing reads and writes on your tables: on-demand and provisioned.
Pricing options
There are two pricing options available for Amazon DynamoDB: on-demand capacity mode and provisioned capacity mode. With two pricing models, DynamoDB allows you to choose the best pricing option for your workload.
Pricing for on-demand capacity mode
DynamoDB on-demand mode is a serverless option with pay-per-request pricing and automatic scaling, without the need to plan, provision, and manage capacity. You are billed per read or write request consumed, making it easy to balance costs and performance.
On-demand mode is recommended in most scenarios including if you:
- Have new or existing workloads and you do not want to manage capacity
- Want a serverless database that automatically scales
- Prefer the ease of paying for only what you use
Pricing for provisioned capacity mode
With provisioned capacity mode, you must specify the number of reads and writes per second that you expect your application to require. You’ll be charged based on the hourly read and write capacity you have provisioned, and not how much your application has consumed.
Provisioned capacity mode may be better if you:
- Have existing applications with steady and predictable throughput patterns
- Can forecast capacity requirements to control costs
How to calculate costs
The best way to calculate the monthly cost of DynamoDB is to utilize the AWS Pricing Calculator. This simple, interactive tool provides the ability to estimate monthly costs based on read and write throughput along with chargeable options, including change data capture, data import and export to Amazon S3, and backup and restore. Easily calculate your DynamoDB monthly costs with the AWS Pricing Calculator that allows you to input your application requirements such as table class and data storage along with read and write throughput. Include popular options like backup and restore and select between on-demand and provisioned capacity billing models.
Not sure where to start? AWS specialists are standing by to provide you with a personalized quote.
Cost optimization
Optimize storage cost by choosing the right table class for your DynamoDB table
Using the DynamoDB Standard-IA table class can reduce costs for tables that store data you don’t access frequently. That said, be aware that DynamoDB reads and writes for this table class are priced higher than for standard tables. Learn more about DynamoDB cost optimization »
Use cost allocation tags for DynamoDB
Tagging for DynamoDB provides granular visibility into your DynamoDB bill. You can assign tags to your tables and see the cost breakouts per table to help with cost optimization by usage. Learn more about cost allocation tags for DynamoDB »
Usage and pricing scenarios
Scenario 1: On-demand capacity pricing
Pricing can be calculated for on-demand usage, particularly if your usage fluctuates or you're unsure what your traffic patterns will be. Read the full detailed Amazon DynamoDB on-demand pricing example here.
Scenario 2: Provisioned capacity pricing
Pricing is calculated for an auto-scaling-enabled table with the provisioned capacity mode. Auto scaling continuously sets provisioned capacity in response to actual consumed capacity—so that actual utilization stays near target utilization. Read the full detailed Amazon DynamoDB provisioned pricing example here.
FAQs
Is AWS DynamoDB more cost-effective than other solutions for storing data?
DynamoDB is a true serverless non-relational database. Compared to other databases that charge on various metrics, like storage, DynamoDB can scale-to-zero, meaning when customers utilize on-demand mode they only pay for active resources consumed.
When should I use DynamoDB on-demand vs provisioned capacity mode, and how does the pricing compare?
Simply put, on-demand is better suited to customers who prefer to only pay for what they use or have unpredictable workloads. Provisioned capacity is popular with customers with applications that demonstrate consistent or predictable traffic and prefer to forecast capacity requirements to control costs.
What are the billing units for DynamoDB serverless on-demand?
DynamoDB is unique in that it is a serverless database that provides customers with the option of only paying for the resources they consume—while scaling to zero when not in use with on-demand pricing. When the database is in-use, write request units and read request units are used to calculate charges.
What are the extra cost options available for DynamoDB?
DynamoDB includes a broad set of options that can be added to the service. A partial list includes:
- On-demand backup which takes snapshot backups at specified points in time
- Global tables for multi-region, multi-active replication
- DynamoDB Accelerator (DAX), an Amazon DynamoDB-compatible caching service, reduces latency through in-memory cache
- DynamoDB streams for time-ordered sequences of item-level changes to a table
Does DynamoDB offer a free tier?
Yes, the free tier for DynamoDB provides 25GB of storage, along with 25 provisioned Write and 25 provisioned Read Capacity Units (WCU, RCU) which is enough to handle 200M requests per month.
Get started building with Amazon DynamoDB on the AWS Management Console.