Amazon DynamoDB Pricing Features , Cost , Calculator
Amazon DynamoDB is a fully managed, serverless, key-value NoSQL database designed to run high-performance applications at any scale.
Developers can use DynamoDB to build modern, serverless applications that can start small and scale globally to support petabytes of data and tens of millions of read and write requests per second. DynamoDB is designed to run high-performance, internet-scale applications that would overburden traditional relational databases.
It has the following features
Amazon dynamodb pricing , cost
DynamoDB charges for reading, writing, and storing data in your DynamoDB tables, along with any optional features you choose to enable. Following
Feature | What it does | Billing Unit |
Write request | Writes data to your table | Write request unit |
Read request | Reads data from your table | Read request unit |
Continuous backup | Takes continuous backups for the preceding 35 days | GB-month |
On-demand backup | Takes snapshot backups at specified points in time | GB-month |
Restore from backup | Restores a table to a specific snapshot or time | GB |
Global tables | Replicates data to create a multi-Region, multi-active table | Replicated write request unit |
Change data capture for Amazon Kinesis Data Streams | Captures item-level data changes on a table and replicates them to Kinesis Data Streams | Change data capture unit |
Change data capture for AWS Glue Elastic Views | Captures item-level data changes on a table and replicates them to AWS Glue Elastic Views | Change data capture unit |
Data export to Amazon S3 | Exports DynamoDB table backups from a specific point in time to Amazon S3 | GB |
DynamoDB Accelerator (DAX) | Reduces latency through in-memory cache | Node-hour |
DynamoDB Streams | Provides a time-ordered sequence of item-level changes on a table | Streams read request unit |
Data transfer out | Transfers data to other AWS Regions | GB |
DynamoDB Pricing varies based on capacity modes : on-demand and provisioned
Amazon DynamoDB On-Demand mode Pricing
Feature | On-Demand Pricing Criteria | On-Demand Pricing |
Write Request Units (WRU) | charges one write request unit for each write (up to 1 KB) and two write request units for transactional writes | $1.25 per million write request units (Standard) $1.56 per million write request units (Standard-IA) |
Read Request Units (RRU) | charges one read request unit for each strongly consistent read (up to 4 KB), two read request units for each transactional read, and one-half read request unit for each eventually consistent read | $0.25 per million read request units (Standard) $0.31 per million read request units (Standard-IA) |
Data Storage | You do not need to provision storage: DynamoDB monitors the size of your tables continuously to determine your storage charges. | $0.25 per GB-month (Standard) $0.10 per GB-month (Standard-IA) |
Continuous backups (PITR) | DynamoDB charges for Continuous backups with point-in-time recovery (PITR) based on the size of each DynamoDB table (table data and local secondary indexes) on which it is enabled. | $0.20 per GB-month |
On-demand backup | DynamoDB charges for on-demand backups based on the storage size of the table (table data and local secondary indexes). | $0.10 per GB-month |
Restore from backup | Restoring a table from on-demand backups or PITR is charged based on the total size of data restored (table data, local secondary indexes, and global secondary indexes) for each request. | $0.15 per GB |
Global tables (Replicated write request unit) | you pay only for the resources your application uses on each replica table | $1.875 per million replicated write request units (Standard) $2.344 per million replicated write request units (Standard-IA) |
Change data capture for Amazon Kinesis Data Streams | DynamoDB charges one change data capture unit for each write (up to 1 KB). | $0.10 per million change data capture units |
Change data capture for AWS Glue Elastic Views | DynamoDB charges one change data capture unit for each write (up to 1 KB). | $0.10 per million change data capture units |
Data export to Amazon S3 | DynamoDB charges for data you export based on the size of each DynamoDB table (table data and local secondary indexes) at the specified point in time when the backup was created. | $0.10 per GB |
DynamoDB Accelerator (DAX) | DynamoDB charges for DAX capacity by the hour and your DAX instances run with no long-term commitments. Pricing is per node-hour consumed and is dependent on the instance type you select. | Node-hour |
DynamoDB Streams | DynamoDB charges for reading data from DynamoDB Streams in read request units. Each GetRecords API call is billed as a streams read request unit and returns up to 1 MB of data from DynamoDB Streams. | first 2,500,000 DynamoDB Streams read request units are free $0.02 per 100,000 DynamoDB Streams read request units thereafter |
Data transfer out | DynamoDB does not charge for inbound data transfer, data transfer with other AWS services in same region. | Varies from $0.09 per GB to $0.05 per GB per TB |
Amazon DynamoDB Provisioned mode Pricing
Feature | Provisioned Mode Criteria | Provisioned Mode Pricing |
Write capacity unit (WCU) | charges one WCU for each write per second (up to 1 KB) and two WCUs for each transactional write per second | $0.00065 per WCU (Standard) $0.00081 per WCU (Standard-IA) |
Read capacity unit (RCU) | charges one RCU for each strongly consistent read per second, two RCUs for each transactional read per second, and one-half of an RCU for each eventually consistent read per second (up to 4 KB) | $0.00013 per RCU (Standard) $0.00016 per RCU (Standard-IA) |
Data Storage | You do not need to provision storage: DynamoDB monitors the size of your tables continuously to determine your storage charges. | $0.25 per GB-month (Standard) $0.10 per GB-month (Standard-IA) |
Continuous backups (PITR) | DynamoDB charges for Continuous backups with point-in-time recovery (PITR) based on the size of each DynamoDB table (table data and local secondary indexes) on which it is enabled. | $0.20 per GB-month |
On-demand backup | DynamoDB charges for on-demand backups based on the storage size of the table (table data and local secondary indexes). | $0.10 per GB-month |
Restore from backup | Restoring a table from on-demand backups or PITR is charged based on the total size of data restored (table data, local secondary indexes, and global secondary indexes) for each request. | $0.15 per GB |
Global tables (Replicated write capacity unit (rWCU)) | you pay only for the resources your application uses on each replica table | $0.000975 per rWCU per hour (Standard) $0.001219 per rWCU per hour (Standard-IA) |
Change data capture for Amazon Kinesis Data Streams | DynamoDB charges one change data capture unit for each write (up to 1 KB). | $0.10 per million change data capture units |
Change data capture for AWS Glue Elastic Views | DynamoDB charges one change data capture unit for each write (up to 1 KB). | $0.10 per million change data capture units |
Data export to Amazon S3 | DynamoDB charges for data you export based on the size of each DynamoDB table (table data and local secondary indexes) at the specified point in time when the backup was created. | $0.10 per GB |
DynamoDB Accelerator (DAX) | DynamoDB charges for DAX capacity by the hour and your DAX instances run with no long-term commitments. Pricing is per node-hour consumed and is dependent on the instance type you select. | Node-hour |
DynamoDB Streams | DynamoDB charges for reading data from DynamoDB Streams in read request units. Each GetRecords API call is billed as a streams read request unit and returns up to 1 MB of data from DynamoDB Streams. | first 2,500,000 DynamoDB Streams read request units are free $0.02 per 100,000 DynamoDB Streams read request units thereafter |
Data transfer out | DynamoDB does not charge for inbound data transfer, data transfer with other AWS services in same region. | Varies from $0.09 per GB to $0.05 per GB per TB |
Amazon dynamodb streams pricing
DynamoDB charges for reading data from DynamoDB Streams in read request units. Each GetRecords API call is billed as a streams read request unit and returns up to 1 MB of data from DynamoDB Streams. Streams read request units are unique from read requests on your DynamoDB table. You are not charged for GetRecords API calls invoked by AWS Lambda as part of DynamoDB triggers. You also are not charged for GetRecords API calls invoked by DynamoDB global tables.
- Every month, the first 2,500,000 DynamoDB Streams read request units are free
- $0.02 per 100,000 DynamoDB Streams read request units thereafter
Amazon dynamodb free tier
The following DynamoDB benefits are included as part of the AWS Free Tier. Each benefit is calculated monthly on a per-Region, per-payer account basis.
On-Demand Mode
- 25 GB of data storage for tables using the DynamoDB Standard table class
- 2.5 million stream read requests from DynamoDB Streams
- 1 GB of data transfer out, aggregated across AWS services
Provisioned Mode
- 25 WCUs and 25 RCUs of provisioned capacity for tables using the DynamoDB Standard table class
- 25 GB of data storage for tables using the DynamoDB Standard table class
- 25 rWCUs for global tables using the DynamoDB Standard table class deployed in two AWS Regions
- 2.5 million stream read requests from DynamoDB Streams
- 1 GB of data transfer out (15 GB for your first 12 months), aggregated across AWS services
Amazon dynamodb Pricing, cost calculator
This example demonstrates how DynamoDB charges using on-demand capacity mode.
Assume you create a new DynamoDB Standard table in the US East (N. Virginia) Region. For simplicity, assume that each time a user interacts with your application, 1 write of 1 KB and 1 strongly consistent read of 1 KB are performed. Your application will have 100,000 reads and 100,000 writes during first 5 days of month and 20,000 reads, 20,000 writes for remaining days of the month.
Timeframe (Day of Month) | Total Writes | Total Reads |
1–5 | 500,000 writes (100,000 writes x 5 days) | 500,000 reads (100,000 reads x 5 days) |
6-30 | 500,000 writes (20,000 writes x 25 days) | 500,000 reads (20,000 reads x 25 days) |
Monthly total | 1,00,000 writes | 1,00,000 reads |
Monthly bill | $1.25 ($1.25 per million writes x 1 million writes) | $0.25 ($0.25 per million reads x 1 million reads) |
Thanks for your blog, nice to read. Do not stop.