Azure Cosmos DB Pricing

Globally distributed, multi-model database service

Azure Cosmos DB is Microsoft’s globally distributed multi-model database. Azure Cosmos DB was built from the ground up with global distribution and horizontal scale at its core. It offers turnkey global distribution across any number of Azure regions by transparently scaling and replicating your data wherever your users are. Elastically scale throughput and storage worldwide, and only pay for the throughput and storage you need. Azure Cosmos DB guarantees single-digit-millisecond latencies in the 99th percentile anywhere in the world, offers multiple well-defined consistency models to fine-tune performance and guarantees high availability with multi-homing capabilities – all backed by industry leading service level agreements (SLAs).

Azure Cosmos DB is truly schema-agnostic; it automatically indexes all the data without requiring you to deal with schema and index management. It’s also multi-model, natively supporting document, key-value, graph and column-family data models. With Azure Cosmos DB, you can access your data using APIs of your choice, as DocumentDB SQL (document), MongoDB (document), Azure Table Storage (key-value) and Gremlin (graph) are all natively supported.

Pricing details

Provisioned throughput

At any scale, you can store data and provision throughput capacity. Each collection is billed hourly based on the amount of data stored (in GBs) and throughput reserved in units of 100 RUs/second, with a minimum of 400 RUs/second.

During public preview, there is no additional charge for using the Gremlin API.

Unit Price
SSD Storage (per GB) $- GB/month
Reserved RUs/second (per 100 RUs, 400 RUs minimum) $-
Standard data transfer rates apply. Monthly price estimates are based on 744 hours per month.

Add-on provisioning: request units per minute (preview)

You can now complement your provisioned throughput with an opt-in provisioned request units per minute feature. Provisioned request units per minute lets you consume a bucket of requests on a per minute basis (UTC). Request units per minute are capped at 1,000 request units per minute for every 100 provisioned throughput units per second. The price below reflects a 50% preview discount.

Unit Price
Reserved request unit per minute (per 1,000 RUs) $-

Scaling collections

For high-throughput and high-storage workloads, you can create partitioned collections by defining a partition key at collection creation. A partitioned collection will seamlessly scale out as the quantity of stored data grows and reserved throughput increases.

Azure Cosmos DB Emulator (Free)

Download the free Azure Cosmos DB Emulator to develop and test applications using Azure Cosmos DB from your local machine. Once you’re satisfied with how your application works, you can deploy it by just changing your configuration to point to an Azure Cosmos DB instance.

Planet scale with geo-replication

Azure Cosmos DB collections can be globally distributed to help you easily build apps with planet scale which means all your data is automatically replicated to the regions you specify. Your app continues to work with one logical endpoint, while your data is automatically served from the region closest to your users with an intuitive programming model for data consistency and 99.99 availability. Globally distributed collections are billed based on the storage consumed in each region and throughput reserved for each Azure Cosmos DB collection multiplied by the number of regions associated with an Azure Cosmos DB database account. Standard data transfer rates apply for replication data transfer between regions. As an example, say you have a database account spanning three Azure regions and two collections provisioned with 1 million RUs and 2 million RUs respectively. The total RUs provisioned for the first collection will be 3 million RUs (1 million RUs x 3 regions) and the second one will be 6 million RUs (2 million RUs x 3 regions).

High throughput and low-latency queries

With Azure Cosmos DB, you can write a sustained volume of data and it will be synchronously indexed to serve consistent SQL queries using a write-optimised, latch-free database engine designed for solid-state drives (SSDs) and low latency access. Read and write requests are always served from your local region, while data is distributed globally. You can further optimise performance by customising automatic index behaviour.

Collections with pre-defined performance and size

Until 1 August 2017, current customers on S1-, S2- or S3-sized collections can continue using them with a pre-defined 10 GB of storage and throughput quantities that vary with the instance size: an S1 instance provides 250 RU/sec. and is billed at $-/hr; an S2 instance provides 1000 RU/sec. and is billed at $-/hr; an S3 instance provides 2500 RU/sec. and is billed at $-/hr. If you want to reconfigure throughput for these collections, see Changing performance levels using the Azure Portal. If you want to take advantage of partitioned collections, you need to convert your previously created S1, S2 or S3 collections to use the limitless throughput and storage scale described above, as described in Partitioning and scaling in Azure Cosmos DB.

Support and SLA

  • We provide technical support for all Azure services released to General Availability, including Azure Cosmos DB, through Azure Support, starting at $29.0/month. Billing and subscription management support is provided at no cost.
  • SLA: We guarantee that at least 99.99% of the time we will successfully process requests to perform operations against Azure Cosmos DB Resources. To learn more about our SLA, please visit the SLA page.




Estimate your monthly costs for Azure services

Frequently Asked Questions

Purchase FAQs

Review Azure pricing frequently asked questions

Product Details

Product details

Learn more about Azure Cosmos DB



Review technical tutorials, videos and more resources

Sign up now and get $200 in Azure credits

Start today