Cosmos DB has traditionally been quite an expensive service on Azure for running smaller proofs of concept etc. This was alleviated with the release of database level RUs, which allow you to share request units (throughput) across data containers. If you allocate RUs on a container directly, the minimum is 400 RUs. Allocating them on a database allows up to 4 containers to share those 400 RUs. Basically with database-level RUs, at least 100 RUs must be allocated per container in that database.

The Free tier takes this further. A Cosmos DB account at Free tier gets you 400 RUs and 5 GB storage for free in that Cosmos DB account. As a bonus, that 400 RUs can be shared by up to 25 data containers in one database. Keep in mind that only one Free tier Cosmos DB account can be created per subscription. Also, going over 400 RUs or 5 GB of storage will be billed with normal rates from what I understand.

To create a Cosmos DB account at Free tier, choose Apply Free Tier Discount on the first tab:

Cosmos DB account creation blade showing the Apply Free Tier Discount selector with Apply selected

So what can you build with the Free tier? Quite a surprising amount of small applications I think. Most apps don't need many data containers, so you can build multiple small applications that use their own data containers in the same shared database.

I think one of the best parts of Free tier is that there are no limits to the features that are available. That said, things like geo-replication are of course not free. But it allows you to start for free, and expand to use features that cost something if your app grows.

Do you have a cool app that can run on Free tier? The Cosmos DB team wants to hear about it!

Links