Table Of Contents
What Does DynamoDB Do? Amazon DynamoDB Use Cases Amazon DynamoDB Costs Explained: How Does DynamoDB Pricing Work? How Much Does DynamoDB Cost? How To Control And Optimize Amazon DynamoDB Costs - The Smarter Way DynamoDB Pricing FAQ 

You’re not alone if you’ve had trouble understanding Amazon DynamoDB pricing. Getting a handle on DynamoDB costs can be complex and tedious. 

But with the right tools and resources, it doesn’t have to be. In this bookmarkable guide, we’ll break it down step-by-step so you can tell what drives DynamoDB costs. 

That’s a big deal because you can then pinpoint where and when to reduce your DynamoDB costs with confidence — without sacrificing performance or any of the DynamoDB features you care about.

First, a quick background.

What Does DynamoDB Do?

Amazon DynamoDB is a modern Database-as-a-Service (DBaaS) offered by Amazon Web Services (AWS). DynamoDB is best known for being a fully managed, NoSQL database service. 

Amazon DynamoDB

This is great because it frees your team from the time-consuming work of provisioning, scaling, and maintaining hardware while also patching software issues.

Here are some key DynamoDB features you get when you subscribe.

  • NoSQL database. Traditional relational databases follow ACID (atomicity, consistency, isolation, durability) principles, and operations are based on well-defined tables. DynamoDB is a Not Only SQL (NoSQL) service; a key-value store (schemaless) that supports various data types, including scalar, set, and document types.   
  • Serverless. DynamoDB is a fully managed, cloud-native, and single-millisecond latency database. You don’t have to set up, scale, and maintain any hardware or patch software.
  • High-performance database service. DynamoDB uses fast Solid State Disks and creates DynamoDB tables that can store and retrieve any amount of data drawn from various data sources.
  • Data security. DynamoDB encrypts all data at rest. You get to choose what type of key to encrypt your table at the creation point.
  • High durability. DynamoDB provides data protection by storing it across three Availability Zones in an AWS Region. You can back up and restore Amazon DynamoDB tables on demand. Point-in-time recovery (up to the last 35 days) helps safeguard your tables from unintended write or delete operations.
  • High scalability. You can also ramp up or scale down your table’s throughput capacity at any time without downtime, automatically scaling to meet demand and reducing unnecessary DynamoDB spend. 
  • Pay-as-You-Go pricing. You pay for only what you use, which we break down below.
The Cloud Cost Playbook

Amazon DynamoDB Use Cases

DynamoDB is an ideal service for high-performance applications as it is fast, NoSQL, and highly available (single-digit millisecond latency). These include use cases that require fast and reliable read/write operations, such as streaming, IoT, gaming leaderboards, and high-traffic e-commerce applications.

Yet, understanding pricing for Amazon DynamoDB can help you assess how well-suited the service is to specific use cases in your business. 

Amazon DynamoDB Costs Explained: How Does DynamoDB Pricing Work?

DynamoDB pricing is based on three main factors; reading (reads), writing (writes), and storing data. These are the core DynamoDB features. There are additional charges for optional features.

DynamoDB optional features include the following:

  • Data transfer out
  • On-demand backup
  • Continuous backup
  • Restore from backup 
  • Global tables
  • DynamoDB Streams
  • Data export to Amazon S3
  • Data import from Amazon S3
  • Change data capture for AWS Glue
  • Change data capture for Amazon Kinesis Data Streams

Here’s the thing, and this is important to note.

How much you pay for DynamoDB is based on the pricing mode you choose; On-Demand Capacity vs Provisioned Capacity. On-Demand Mode allows you to scale DynamoDB tables and operations as your workload changes. This flexibility works a lot like Amazon EC2 On-Demand instances do. 

On the other hand, provisioned mode requires you to specify how many read/write requests per second you need in advance (but can auto-scale to meet changing needs at additional fees, of course). Think of this as you would Amazon EC2 Reservations (cheaper rates for committing to a certain usage level over a given period).

Here’s the kicker. The specific DynamoDB capacity mode you choose also determines how much you pay for each pricing factor we highlighted earlier.

That’s not all. 

Amazon DynamoDB charges are based on billing units, not dollar amounts. This means that each pricing factor has a unique billing unit. And you’ll need to remember each if you want to understand how DynamoDB pricing works. An unnecessary hassle, you say?

Not to worry. Here’s a quick table with the details you’ll want to know.

DynamoDB pricing factor

Description and options

Billing Unit

Read Request

API calls to read data from your tables


Read Types: Transactional, Eventually consistent, and Strongly consistent


Read operation types: Scan, Query, GetItem 

Read Request Units (RRUs) for On-Demand Mode 


Read Capacity Units (RCUs) for Provisioned Mode 

Write Request

API calls to write data to your tables


Types: Standard and 

Transactional

Write Request Units (WRUs) for On-Demand Mode


Write Capacity Units (WCUs) for Provisioned Mode

Data storage 

Store data. Includes indexes (Local secondary index, Global secondary index, none)

Per Gigabytes per month (GB-month)

Backup and restore

  • On-demand backups take snapshots at particular points in time
  • Continuous backups take into consideration the preceding 35 days
  • Restore backups restore tables to a specified point in time or snapshot 

Per Gigabyte per month (GB-month)

Global tables

Data replication to create a multi-active, multi-region table  

Replicated write capacity units (rWCUs) or Replicated write request units (rWRUs)

Change data capture for Amazon Kinesis Data Streams

Capture item-level data modifications on a table. Then replicates them to Kinesis Data Streams

Change data capture units

Change data capture for AWS Glue

Capture item-level data modifications on a table. Then replicates them to AWS Glue

Change data capture units

Data export to Amazon S3

Save or export table backups from a specific point in time to S3 storage

Per Gigabyte (per GB)

Data import from Amazon S3

Upload data from S3 to new DynamoDB tables

Per Gigabyte (per GB)

DynamoDB Streams

Get a time-ordered history of item-level changes on a DynamoDB table

Streams read request units

Data transfer out

Migrate data out to other AWS Regions

Per Gigabyte (per GB)

When you integrate with DynamoDB Accelerator (DAX)

Reduce latency from milliseconds to microseconds

Per node-hour consumed based on the instance type you choose 

Table: A list of DynamoDB pricing factors, what they do, and their billing units.

How Much Does DynamoDB Cost?

As we mentioned moments earlier, DynamoDB charges are based on the type of capacity mode you choose; On-Demand or Provisioned mode.

Here are the basics for calculating and understanding costs for each capacity mode available in DynamoDB.

Pricing for DynamoDB On-Demand Capacity Mode explained

DynamoDB On-Demand capacity mode prices depend on the type of request (read, write, or storage), operation (transactional, eventually consistent, strongly consistent), table class you use (Standard, Standard Infrequent Access), and AWS Region you are based in. 

Prices for DynamoDB On-Demand reads and writes are as follows:

For writes:

  • Each write costs 1 write request unit (WRU) for items up to 1KB (costs more RPUs if it is larger)
  • A transactional write costs 2 WRUs

For reads:

  • Each strongly consistent read costs 1 read request unit (RRU) for items up to 4KBs (larger items require additional RRUs)
  • A transactional read costs 2 RRUs
  • An eventually consistent read costs 0.5 RRU

Quick example: A strong read request for a 2 KB item will consume 1 RRU. A transactional read request for it would consume 2 WCUs while an eventually consistent read request for a similar-size item will cost 1 RRU.

In addition, if you choose the Standard table class in the US East (Ohio) Region, expect to pay $1.25 per million WRUs for writes and $0.25 per million RRUs for reads. And if you pick the Standard Infrequent Access table class, prices start at $1.56 per million WRUs for writes and $0.31 per million RRUs for reads. 

Pricing for data storage in DynamoDB’s On-Demand capacity mode starts at $0.25 per GB-month for the Standard table class and $0.10 for the Standard Infrequent Access tale class

Here’s a neat table that makes it easier to digest the prices.

DynamoDB operation

Description and options

Prices in the US East (Ohio) region

Read Request









Standard table class


Standard Infrequent Access  table class

  • 2 RRUs for each transactional read
  • 0.5 RRU for each eventually consistent read
  • 1RRU for each strongly consistent read

$0.25 per million RRUs

$0.31 per million RRUs

Write Request

Each API call to write data to a table




Standard table class


Standard Infrequent Access  table class

1 WRU up to 1KB

2 WRUs for transactional writes


$1.25 per million WRUs

$1.56 per million WRUs



Data storage 

Standard table class




Standard Infrequent Access  table class

Free for the first 25GB per month

$0.25 per GB-month after that


$0.10 per GB-month

Backup and restore

  • On-demand backups (snapshots at particular points in time)

  • Continuous backups (preceding 35 days)

  • Restore backups (restore tables to a specified point in time or snapshot) 

$0.10 per GB-month for warm backup storage

$0.03 per GB-month for cold backup storage


$0.20 per GB-month



$0.15 per GB for warm backup storage

$0.20 per GB for cold backup storage

Global tables

On-demand data replication to create a multi-active, multi-region table


Standard table class


Standard Infrequent Access  table class





$1.875 per million rWRUs


$2.344 per million rWRUs

Change data capture for Amazon Kinesis Data Streams

Up to a 1KB write

$0.10 per million change data capture for Kinesis Data Streams

Change data capture for AWS Glue

Up to a 1KB write

$0.10 per million change data capture for AWS Glue

Data export to Amazon S3

Point-in-time recovery data from DynamoDB to S3 in Amazon Ion and DynamoDB JSON formats

$0.10 per GB for either a full export or an incremental export to Amazon S3

Data import from Amazon S3

Pricing is based on uncompressed file size in Amazon S3 (DynamoDB JSON, CSV, Amazon Ion formats)

$0.15 per GB

DynamoDB Streams

GetRecords API call (streams read request unit) returns up to 1MB of data from Streams  

$0.02 per 100,000 streams read request units after the first 2.5 million (which are free every month)

Data transfer out

Migrating data out to other AWS Regions, accounts, etc, incurs costs on both ends of the transfer

The first 100 GB is free per month (aggregated across all services and regions) 


$0.10 per GB for the 10TB-month after the free tier


Up to $0.05 per GB for over 150TB-month

When you integrate with DynamoDB Accelerator (DAX)

Pricing is per node-hour consumed based on the instance type you choose 

Starts at $0.04 per hour for dax.t3.small (2vCPU, 2GiB memory) up to $8.59 per hour dax.r4.16xlarge (64vCPU, 488GiB memory)

Table: DynamoDB pricing in dollars.

DynamoDB’s costs vary slightly if you use Provisioned Capacity. Over time, however, these small differences can add up to a lot of savings (or unnecessary bill items) as your workload increases. Consider the following.

Pricing for DynamoDB Provisioned Capacity Mode explained

Here, you specify how many writes and reads your application requires per second. However, actual billing is based on an hourly rate.

Pricing for Provisioned Capacity mode in DynamoDB is calculated based on:

For reads:

  • Each strongly consistent read request per second requires 1 Read Capacity Unit (RCU) for items up to 4KBs
  • 2 eventually consistent read requests per second require 1 RCU for items up to 4KBs
  • Each transactional read request per second requires 2 RCUs for items up to 4KBs

Larger items require more RCUs, which are priced in 4KB increments.

For writes:

  • Each standard write request per second requires 1 WCU for items up to 1KB in size (you’ll need more WCUs for larger items)
  • Each transactional write request per second requires 2 WCUs for items up to 1KB

Quick example: A standard write request for a 2 KB item will consume 2 WCUs while a transactional write request for a 5 KB item would consume 10 WCUs.

Let’s organize all of it into a table.

DynamoDB Operation

Description and options

Prices based on the US East (Ohio) Region

Read Request









Standard table class


Standard Infrequent Access table class



Reserved capacity:


  • For 100 WCUs per month commitment






  • For 100 RCUs per month commitment

2 RCUs for each transactional read per second

1 RCU for 2 eventually consistent reads per second

1RCU for each strongly consistent read per second


$0.00013 per RCU hourly

$0.00016 per RCU hourly



$150 when paid upfront, 1 year commitment and $0.0128 per hour, 1 year commitment


$30 when paid upfront, 1 year commitment or $0.0025 per hour, 1 year commitment

Write request

Each API call to write data to a table




Standard table class


Standard Infrequent Access table class

1 WRU up to 1KB

2 WRUs for transactional writes


$0.00065 per WCU per hour

$0.00081 per WCU per hour



Data storage 

Standard table class




Standard Infrequent Access table class

Free for the first 25GB per month

$0.25 per GB-month after that


$0.10 per GB-month

Backup and restore

  • On-demand backups (snapshots at particular points in time)

  • Continuous backups (preceding 35 days)

  • Restore backups (restore tables to a specified point in time or snapshot) 

$0.10 per GB-month for warm backup storage

$0.03 per GB-month for cold backup storage


$0.20 per GB-month



$0.15 per GB for warm backup storage

$0.20 per GB for cold backup storage

Global tables

On-demand data replication to create a multi-active, multi-region table


Standard table class


Standard Infrequent Access  table class





$0.000975 per rWCU per hour


$0.00121875 per rWCU per hour

Change data capture for Amazon Kinesis Data Streams

Up to a 1KB write

$0.10 per million change data capture for Kinesis Data Streams

Change data capture for AWS Glue

Up to a 1KB write

$0.10 per million change data capture for AWS Glue

Data export to Amazon S3

Point-in-time recovery data from DynamoDB to S3 in Amazon Ion and DynamoDB JSON formats

$0.10 per GB for either a full export or an incremental export to Amazon S3

Data import from Amazon S3

Pricing is based on uncompressed file size in Amazon S3 (DynamoDB JSON, CSV, Amazon Ion formats)

$0.15 per GB

DynamoDB Streams

GetRecords API call (streams read request unit) returns up to 1MB of data from Streams  

$0.02 per 100,000 streams read request units after the first 2.5 million (which are free every month)

Data transfer out

Migrating data out to other AWS Regions, accounts, etc, incurs costs on both ends of the transfer

The first 100 GB is free per month (aggregated across all services and regions) 


$0.10 per GB for the 10TB-month after the free tier


Up to $0.05 per GB for over 150TB-month

When you integrate with DynamoDB Accelerator (DAX)

Pricing is per node-hour consumed based on the instance type you choose 

Starts at $0.04 per hour for dax.t3.small (2vCPU, 2GiB memory) up to $8.59 per hour dax.r4.16xlarge (64vCPU, 488GiB memory)

Table: Prices for DynamoDB’s Provisioned Capacity mode.

If all these manual calculations seem a little too much, that’s because they are. But there is a way to get around them without losing the level of cost intelligence you need to make crucial DynamoDB cost tradeoffs. 

How To Control And Optimize Amazon DynamoDB Costs – The Smarter Way

You may have noticed by now that calculating DynamoDB costs can get a bit confusing.

Despite AWS’s Pricing Calculator for DynamoDB, understanding DynamoDB costs is still a challenge. With all the variables involved, such as the different billing units, it is easy to see why.

Here’s the thing, though. It’s difficult to figure out where to reduce DynamoDB usage without compromising performance while not understanding what factors are driving your DynamoDB costs.

In that case, CloudZero can help. Unlike conventional cost tools, CloudZero captures deep DynamoDB cost data. It then enriches it with insights from your apps and infrastructure. CloudZero then delivers your DynamoDB cost insights in detail without being overwhelming. These details include:

  • You get clear, immediately actionable insights such as cost per customer, cost per project, and cost per feature. No jargon.
    CloudZero

  • Discover potential issues before they become costly problems with real-time DynamoDB cost insights.
  • With timely, noise-free, and contextual cost anomaly alerts, you can address a technical issue before it gets out of hand (aka overspending).
    CloudZero

  • You won’t need countless tags to gather precise cost insights. CloudZero automatically organizes your costs in the context of your business after the initial setup.
  • Our Certified FinOps experts will help you earn your ROI back quickly with ongoing consultations and best practices. Our customers save an average of 22% in the first year, and CloudZero typically pays for itself in three months or less.
  • Single source of truth for all cloud costs. CloudZero allows you to collect, analyze, and optimize costs across AWS, Azure, GCP, Kubernetes, Databricks, MongoDB, Snowflake, Datadog, New Relic, and more.

New Relic, Drift, and Upstart are some of the ambitious brands already using CloudZero. Upstart reduced its cloud costs by $20 million dollars with the help CloudZero!

With CloudZero, Remitly now allocates 50% more costs without tagging. Want to get similar results or better? Here’s your risk-free chance. to experience CloudZero for yourself.

DynamoDB Pricing FAQ 

What does the DynamoDB Free Tier offer?

It offers 25 provisioned Write Capacity Units (WCU) and 25 provisioned Read Capacity Units (RCU). These can handle 200M requests each month. Also, the DynamoDB Free Tier offers 25GB of free storage per month.  

What are the factors that affect Amazon DynamoDB pricing?

You are charged based on your read/write requests, data storage, and data transfers out, as well as optional features, such as backups/restores.

How much does DynamoDB cost per month?

Your DynamoDB spend will depend on the DynamoDB features you choose and how much you use them. You pay only for what you use.

Is DynamoDB worth it?

Yes, depending on your use case. With DynamoDB, you’ll have a reliable, fully managed, NoSQL database at your disposal. With its vast amount of data and flexibility across AWS services, it can also be more affordable than many DynamoDB alternatives.  

Does DynamoDB provide good or reliable long-term storage?

Amazon DynamoDB’s Standard Infrequent Access tables are designed and optimized for long-term data storage while the Standard table class is suitable for rapidly changing data.

The Cloud Cost Playbook

The step-by-step guide to cost maturity

The Cloud Cost Playbook cover