Skip to content

Coverage

Cosmos DB cost optimisation for MSPs

Provisioned throughput is billed on the RU/s you configure, not the RU/s you use. Capacity sized for peaks, migrations or busy weekdays keeps costing money overnight, at weekends and long after the spike has passed, which is why Microsoft recommends regularly comparing provisioned with consumed throughput.

16

automated finders for Cosmos DB

Read-only, across every connected client tenant, tied to real billing data.

  • Remove unused
  • Rightsizing
  • Off-hours schedules

Where Cosmos DB spend goes to waste

The main cost levers Microsoft documents for Cosmos DB, and the ones an MSP should check across every client.

Match the throughput mode to the workload

Manual RU/s suit steady traffic. Autoscale bills each hour for the highest RU/s it reached, at 1.5 times the manual rate, and Microsoft says it should save money when average hourly peak utilisation is below 66%. Small, low-traffic applications can also consider serverless. [2]

Cut the RU cost of each request

Point reads by item ID and partition key are the cheapest way to fetch data, and RU charges grow with item size, so keep large unqueried content in Blob Storage. Index only the properties queries filter on, and note that strong or bounded staleness reads cost twice the RUs. [3]

Choose partition keys that spread load

A partition key with a wide range of values spreads data and requests evenly. Skewed keys concentrate load and can force you to provision more RU/s than the workload needs overall. [1]

Expire data you don't need

Storage is billed per GB for data and indexes in every region the account replicates to. Time to live at container or item level deletes items automatically, and change feed can move older data to cheaper storage first. [4]

Justify every extra region

Throughput is reserved in every region the account uses, so the provisioned total is the configured RU/s multiplied by the region count, and storage is charged per region too. Confirm a client really needs each region and each write region. [5]

Reserve steady baselines

Reserved capacity gives up to 63% off provisioned throughput for a one- or three-year commitment, but excludes serverless accounts, storage and networking. Discounts are use-it-or-lose-it, so size reservations to steady hourly usage. [6]

How Cerberus Cloud covers Cosmos DB

Cerberus Cloud runs 16 automated finders for Cosmos DB across every connected client tenant. Each one ties a technical signal to real billing data, so findings arrive with an estimated recoverable value, ranked by impact, effort and risk, with evidence and remediation scripts for your engineers to review.

Access is read-only, so nothing changes in a client environment until your team decides it should. See how it works or the multi-tenant portfolio view.

  • Remove unused
  • Rightsizing
  • Off-hours schedules

Frequently asked questions

Does autoscale always save money?
No. Autoscale bills each hour for the highest RU/s reached, at 1.5 times the manual rate. Microsoft's guidance is that it should save money when average hourly peak utilisation is below 66%; steadier workloads are usually cheaper on manual throughput.
Where can we start looking for Cosmos DB waste?
Azure Advisor's cost recommendations flag databases or containers that would be cheaper on autoscale, containers with no activity for 30 days, and reserved capacity worth considering. Cerberus Cloud ranks findings like these across every client tenant. Where Advisor fits for MSPs
Can we cap how much throughput a client's account can provision?
Yes, on provisioned-throughput accounts. Once a total throughput limit is set, creating containers, raising RU/s or adding a region that would breach it is blocked. It is not available on serverless accounts.

See Cosmos DB findings on a sample portfolio

A 15-minute walkthrough: tenant connection, prioritised findings, remediation scripts and savings history.