Fast NoSQL database with open APIs for any scale
Quickly and easily develop apps at any scale with Azure Cosmos DB, a fully managed and serverless distributed database supporting NoSQL and relational workloads. Get guaranteed speed and availability for NoSQL data, automatic and instant scalability, and support for open source PostgreSQL, MongoDB, and Cassandra. Azure Cosmos DB offers cost-effective pricing models for apps of any size, from dev/test to production.
Explore pricing options
Apply filters to customize pricing options to your needs.
Prices are estimates only and are not intended as actual price quotes. Actual pricing may vary depending on the type of agreement entered with Microsoft and the currency exchange rate. Prices are calculated based on US dollars and converted using Thomson Reuters benchmark rates refreshed on the first day of each calendar month. Sign in to the Azure pricing calculator to see pricing based on your current programme/offer with Microsoft. Contact an Azure sales specialist for more information on pricing or to request a price quote. See frequently asked questions about Azure pricing.
US government entities are eligible to purchase Azure Government services from a licensing solution provider with no upfront financial commitment or directly through a pay-as-you-go online subscription.
Important—The price in R$ is merely a reference; this is an international transaction and the final price is subject to exchange rates and the inclusion of IOF taxes. An eNF will not be issued.
US government entities are eligible to purchase Azure Government services from a licensing solution provider with no upfront financial commitment or directly through a pay-as-you-go online subscription.
Important—The price in R$ is merely a reference; this is an international transaction and the final price is subject to exchange rates and the inclusion of IOF taxes. An eNF will not be issued.
Azure Cosmos DB pricing model
Azure Cosmos DB bills for database operations, consumed storage and optional dedicated gateways, across all selected Azure regions enabled on your Azure Cosmos DB account.Database Operations
The cost of all database operations is normalised and expressed as either request units (RU) or vCore (compute and memory). Azure Cosmos DB offers three database operations models:
- Provisioned Throughput offers pre-selected database operations capacity, measured in request units per second (RU/s) and billed per hour across all selected Azure regions enabled on the account. It offers single-digit millisecond reads and writes and 99.999-percent availability worldwide, backed by SLAs. It is ideal for large, critical workloads requiring guaranteed low-latency and high-availability. You can choose between two capacity management options: Standard Provisioned Throughput and Autoscale Provisioned Throughput. You can estimate your provisioned throughput needs by using the Azure Cosmos DB capacity planner (RU calculator).
- Serverless offers on-demand database operations and bills for the request units (RU) used for each database operation. Serverless makes it easy to run spiky workloads that do not have sustained traffic. It can handle traffic bursts on demand, without resource planning or management.
- vCores/Nodes are available for Azure Cosmos DB for PostgreSQL and Azure Cosmos DB for MongoDB vCore. This model enables horizontal scale-out capability to hundreds of nodes.
Consumed Storage
Transactional and analytical storage for NoSQL data are billed as GBs consumed by data and index across all the Azure regions your database is distributed to.
Back up storage of NoSQL data is either periodic or continuous:
- Continuous back up is available free with a 7-day retention period, or with a 30-day retention period billed as GBs stored across all Azure regions your database is distributed to. Point-in-time restore from the database back up is billed as GBs of data restored to one Azure region. Continuous back up can be enabled on accounts using Azure Cosmos DB for NoSQL or Azure Cosmos DB for MongoDB.
- Periodic back up is enabled by default, with two back up copies provided free, and additional copies billed as total GBs of data stored across two Azure regions.
Storage per Node is available for PostgreSQL data. There is no additional charge for back up storage for up to 100% of your total provisioned storage on a given node.
Dedicated Gateway
Dedicated gateways are billed hourly for set, dedicated compute resources based on the selected number of cores and memory. A dedicated gateway routes requests to the backend partitions in your Azure Cosmos DB account and can be enabled to support an integrated cache with Core (SQL) API.
Regional data distribution
Azure Cosmos DB supports data replication and distribution across any or all Azure regions for provisioned throughput. You can add and remove regions to your Azure Cosmos DB account at any time. With multi-region distribution enabled, provisioned throughput, consumed storage, and dedicated gateway are billed across every region associated with the account.
Optionally, accounts can be enabled for multi-region writes. When configured this way, accounts are billed at a multi-region rate.
Azure Cosmos DB for MongoDB vCore provides horizontal scale-out capability and is best for high performance workloads that require:
- Familiar architecture
- High-capacity vertical and horizontal scaling
- Ideal for long-running queries and complex aggregation pipelines
Learn more about Azure Cosmos DB for MongoDB vCore.
Node (compute and memory)
Each Azure Cosmos DB for MongoDB vCore cluster has one or more nodes. As the performance needs of your workload grow, you can vertically scale by upgrading your cluster tier to larger nodes with more compute and memory or horizontally scale by adding additional nodes to your cluster.
Cluster Tier | vCores per Node | Memory in GBs per Node | Price per Node |
---|---|---|---|
M30 | 2 | 8 | $-/hour |
M40 | 4 | 16 | $-/hour |
M50 | 8 | 32 | $-/hour |
M60 | 16 | 64 | $-/hour |
M80 | 32 | 128 | $-/hour |
M200 | 64 | 256 | $-/hour |
M300 | 96 | 384 | $-/hour |
Storage per node – General purpose storage
You can configure storage for Azure Cosmos DB for MongoDB nodes. General purpose storage is charged per GB of storage you provision and is redundant.
Price | |
---|---|
128 GB | $-/month |
256 GB | $-/month |
512 GB | $-/month |
1,024 GB | $-/month |
2,048 GB | $-/month |
High availability
High availability (HA) avoids database downtime by maintaining standby replicas of every node in a cluster. If a node goes down, Azure Cosmos DB for MongoDB vCore switches incoming connections from the failed node to its standby. If a failover occurs, promoted nodes always have fresh data through synchronous streaming replication and the same connection string. Enabling HA for your cluster creates another set of nodes and thus doubles the cluster price.
Backup storage is available as either periodic or continuous:
Back up storage is the storage associated with automated backups of your Azure Cosmos DB for MongoDB vCore cluster. There is no additional charge for backup storage during the preview.
Consumed Storage
Azure Cosmos DB offers unlimited transactional and analytical storage (Azure Synapse Link), billed as GBs of SSD-backed logical storage used by data and indexes across all regions selected for geo-replication. For example, if you replicate an Azure Cosmos DB account across three regions, you will pay for the total storage cost in each of those three regions.
Your data is managed in two distinct storage tiers, transactional and analytical, with workloads operating on the same logical data without interfering with each other. While transactional storage is always enabled by default, you must explicitly enable analytical storage on your Azure Cosmos DB container to use Azure Synapse Link to run analytics over data in Azure Cosmos DB using Azure Cosmos DB for NoSQL or Azure Cosmos DB for MongoDB.
Provisioned throughput (RU/s) scales relative to the amount of transactional storage at a rate of 10 RU/s for every 1 GB storage. To estimate your storage requirement, use the capacity planner tool and ensure you’ve provisioned enough throughput to meet your storage needs.
Consumed Storage | Total GB | Price |
---|---|---|
Transactional storage (row-oriented) | 1 GB x N regions | $-/month |
Analytical storage (column-oriented) | 1 GB x N regions | $-/month |
Backup storage
Accounts can select either periodic or continuous back up for NoSQL data. By default, periodic back up is activated on all accounts and two back up copies of your data are stored free of charge. Periodic data backups can be configured to be geo, local, or zone resilient. Please see technical documentation for details.
Periodic backup storage | Total GB | Price per GB |
---|---|---|
Stored periodic backup data (2 copies) | GBs per copy | Free/month |
Stored periodic backup data (>2 copies) | GBs per copy | $-/month |
Continuous back up can be activated instead of periodic backups on provisioned throughput accounts using either Azure Cosmos DB for NoSQL or Azure Cosmos DB for MongoDB. Once activated, backups are charged monthly based on the total amount of data stored across all selected Azure regions. Point-in-time restoration from the continuous backup data is billed as total GBs of data restored to the primary write region.
Continuous backup storage | Total GB | Price per GB |
---|---|---|
Continuous back up data – 7-day retention* | GBs x N regions | Free/month |
Continuous backup data – 30-day retention | GBs x N regions | $-/month |
Point-in-time restore | GBs | $- |
*Continuous back up with 7-day retention will be free of charge until June 30 2024.
Analytical storage (Azure Synapse Link) transactions
IO (input/output) transactions for analytical storage are billed by quantity of operations.
Transactions | Operations | Price |
---|---|---|
Write Operations - analytical storage | 10,000 | $- |
Read Operations - analytical storage | 10,000 | $- |
For a more detailed estimate of analytical storage (Azure Synapse Link) operations for your workload please use the capacity planner tool and refer to the Azure Cosmos DB analytical store pricing documentation for additional detail.
Note: Transactional storage pricing is not impacted by analytical storage usage.
Dedicated Gateway
A dedicated gateway routes requests to the backend partitions in your Azure Cosmos DB account. Once enabled, compute resources will be created in all regions associated with your account.
Integrated cache
Once a dedicated gateway cluster is created, an Azure Cosmos DB integrated cache is automatically enabled at no additional cost and can be used to further improve read performance. Integrated cache is available for Azure Cosmos DB for NoSQL.
Materialised View
Materialised view with Azure Cosmos DB for Apache Cassandra provides the ability to create views on top of a base table to access the table information using different unique identifiers or keys (not restricted to only the primary key) on the server side, automatically in the background, and with a single write to the base table.
Name | vCPU | Memory | Cost (per instance, varies by region) |
---|---|---|---|
Dedicated Gateway - General Purpose - D4 | 4 | 16 GB | $- per hour |
Dedicated Gateway - General Purpose - D8 | 8 | 32 GB | $- per hour |
Dedicated Gateway - General Purpose - D16 | 16 | 64 GB | $- per hour |
Availability zones
You can enable availability zones when selecting regions to associate with your Azure Cosmos DB account in the Azure portal. This provides additional redundancy within a given region by replicating data across multiple zones in that region. The Azure regions eligible to be availability zones are: UK South, Southeast Asia, East US, East US 2, Central US, West Europe, West US 2, Japan East, North Europe, France Central, and Australia East.
The billing impact is:
- For single-region write accounts using standard provisioned throughput, request units per second (RU/s) are multiplied by a factor of 1.25 in each region designated as an Availability Zone
- For single-region serverless accounts, request units (RU) are multiplied by a factor of 1.25
- For multi-region write (formerly “multi-master”) accounts using provisioned throughput, there is no billing impact
Try Azure Cosmos DB for free
There are a variety of ways for you to get started free with Azure Cosmos DB.
30 days free. Run a non-production Azure Cosmos DB database for a limited time. | Get Started: Enjoy a time-limited Azure Cosmos DB experience free of charge and without an Azure subscription. You can renew any number of times. |
Azure Cosmos DB free tier. Develop and test applications or run small production workloads, free within the Azure environment. | Get Started: Enable free tier on a new account to receive 1,000 RU/s provisioned throughput and 25 GBs storage free each month for the life of one Azure Cosmos DB account per Azure subscription. |
Azure free account. New to Azure? Develop and test a pre-production application with Azure Cosmos DB and other Azure services. | Get Started: Try Azure Cosmos DB and other Azure services as a part of a 12-month Azure free account. Get $200 credit for 30 days and enjoy 400 RU/s of provisioned throughput and 25 GBs of storage per month free. New Azure free accounts can also enable the Azure Cosmos DB free tier to gain additional free provisioned throughput and storage. |
Azure Cosmos DB local emulator. Test applications from your local machine without creating an Azure subscription or incurring any cost. | Get Started: Download the free Azure Cosmos DB emulator from your local Windows or Linux machine. Once you are satisfied with your database, you can deploy it by pointing to an Azure Cosmos DB instance in the cloud. |
Azure pricing and purchasing options

Connect with us directly
Get a walkthrough of Azure pricing. Understand pricing for your cloud solution, learn about cost optimisation and request a custom proposal.
Talk to a sales specialistSee ways to purchase
Purchase Azure services through the Azure website, a Microsoft representative or an Azure partner.
Explore your optionsAdditional resources
Azure Cosmos DB
Learn more about Azure Cosmos DB features and capabilities.
Pricing calculator
Estimate your expected monthly costs for using any combination of Azure products.
SLA
Review the Service Level Agreement for Azure Cosmos DB.
Documentation
Review technical tutorials, videos and more Azure Cosmos DB resources.
Frequently asked questions
-
Request units are the currency for database operations in Azure Cosmos DB. Each operation - writes, updates, reads and queries - consumes CPU, memory and IOPs resources. These resources incur charges which are expressed in request units (RU). Provisioned throughput is the total throughput capacity for database operations and is set as request units per second (RU/s). To learn more please visit request units in Azure Cosmos DB page.
-
You are billed by the hour for the provisioned throughput, expressed in request units per second (U/s), that you set for your database or container.
Standard provisioned throughput for an individual container:
If you create an Azure Cosmos DB database account in East US 2 with two containers with standard provisioned throughput of 500 RU/s and 700 RU/s, respectively, you would have a total provisioned throughput of 1,200 RU/s. You would thus be charged 12 x $- = $-/hour.
If your throughput needs changed and you have increased each container’s capacity by 500 RU/s while also creating a new container using 20,000 RU/s, your overall provisioned capacity would be 22,200 RU/s (1000 RU/s + 1200 RU/s + 20,000RU/s). Your bill would then change to: $- x 222 = $-/hour.
In a month of 720 hours, if for 500 hours provisioned throughput was 1,200 RU/s and for the remaining 220 hours provisioned throughput was 22,200 RU/s, your monthly bill will show: 500 x $-/hour + 220 x $-/hour = $-/month.
Provisioned throughput for a database (a set of containers):
If you create an account in East US 2 with two Cosmos DB databases (with a set of collections under each) with provisioned throughput of 50K RU/s and 70K RU/s, respectively, you would have a total provisioned throughput of 120K RU/s. You would thus be charged 1200 x $- = $-/hour.
If your throughput needs changed and you increased each database’s provisioned throughput by 10K RU/s each, your overall provisioned capacity would be 140K RU/s (60K RU/s + 80K RU/s). Your bill would then change to: 1400 * $- = $-/hour.
In a month of 720 hours, if for 500 hours provisioned throughput was 120K RU/s and for the remaining 220 hours provisioned throughput was 140K RU/s, your monthly bill will show: 500 x $-/hour + 220 x $-/hour = $- + $- = $-/month.
-
With autoscale (previously "autopilot"), you set a maximum provisioned throughput limit in RU/s that your database or container can scale to. You are then billed by the hour for RU/s of provisioned throughput used, starting at 400 request units per second (RU/s) or 10% of your maximum. For example, if you set a maximum of 8,000 RU/s Azure Cosmos DB will automatically scale between 800 - 8,000 RU/s based on actual usage.
-
When enabled on a new Azure Cosmos DB account, free tier gives the first 1,000 RU/s and 25 GB of storage for free for the lifetime of the account. Additionally, when using shared throughput databases, you can create up to 25 containers that share 1,000 RU/s at the database level (max. 5 shared databases per free tier account). You can have a maximum of one free tier account per Azure subscription and must opt in when creating the account.
-
In free tier accounts, you will receive the first 400 RU/s provisioned throughput and 5 GB of storage free each month. Any provisioned throughput and storage beyond 400 RU/s and 5 GB will be billed at the regular Azure Cosmos DB rates. The 400 RU/s applies to standard provisioned throughput, autoscale provisioned throughput and multi-region writes (multi-master). Free tier is not applicable to serverless.
The free tier discount is applied at the account level. For example, if in one month, an account had a total of 400 RU/s and three regions, with 5 GB in each region, the account would be billed for 800 RU/s (400 RU/s x 3 regions – 400 RU/s) and 10 GB of storage (5 GB x 3 regions – 5 GB) for each hour in the month. If the regions have different rates for RU/s and storage, the discount will reflect the rates of the region the account was created in.
-
When you choose to make an Azure Cosmos DB account (with databases and containers) span across geographic regions, you are billed for the throughput and storage for each container in every region and the data transfer between regions. As an example, let us assume you have a container in West US provisioned with throughput 10K RU/s and store 1TB of data this month. Let us assume you add 3 regions: East US, North Europe and East Asia, each with the same storage and throughput. Your total monthly bill will be (assuming 31 days in a month):
Item Usage (Month) Rate Monthly Cost Throughput bill for container in West US 10K RU/s * 24 * 31 $- per 100 RU/s per hour $- Throughput bill for 3 additional regions - East US, North Europe and East Asia 3 * 10K RU/s * 24 * 31 $- per 100 RU/s per hour $- Storage bill for container in West US 1 TB $-/GB $- Storage bill for 3 additional regions - East US, North Europe and East Asia 3 * 1TB $-/GB $- Total $- Let us also assume that you egress 100GB of data every month from the container in West US to replicate data into East US, North Europe and East Asia. You are billed for egress as per data transfer rates.
-
When you choose to operate containers that span across multiple geographic regions, you are billed for the provisioned throughput and storage for each container in every region and the data transfer between regions. You will be billed for the provisioned throughput.
-
Storage capacity is billed in units of the maximum hourly amount of data stored, in GB, over a monthly period. For example, if you utilised 100 GB of storage for half of the month and 50 GB for the second half of the month, you would be billed for an equivalent of 75 GB of storage during that month.
-
You are billed for each hour the container or database exists, regardless of usage or if the container or database is active for less than an hour. For example, if you create a container or database and delete it 5 minutes later, your bill will reflect a 1 hour.
-
You are charged for the maximum provisioned throughput for any given hour.
For instance, if you increase provisioned throughput at 9:30 AM from 400 RU/s to 1000 RU/s and then lower provisioned throughput at 10:45 AM back to 400 RU/s, you will be charged for two hours of 1000 RU/s.
If you increase provisioned throughput for a container or a set of containers at 9:30 AM from 100K RU/s to 200K RU/s and then lower provisioned throughput at 10:45 AM back to 100K RU/s, you will be charged for two hours of 200K RU/s.
-
You can scale up or scale down the provisioned throughput (i.e., Request Units per second) for each container or a database by using the Azure Portal, one of the supported SDKs, ARM template, PowerShell, Azure CLI or the REST API.
-
Azure Cosmos DB reserved capacity helps you save money by offering a discount if you prepay for one year or three years of provisioned throughput. Reserved capacity provides a billing discount and does not affect the runtime state of your resources. You can buy a reserved capacity for Azure Cosmos DB in the Azure portal. To learn more about reserved capacity, read the Azure Cosmos DB documentation.
Talk to a sales specialist for a walk-through of Azure pricing. Understand pricing for your cloud solution.
Get free cloud services and a $200 credit to explore Azure for 30 days.