MongoDB Atlas Pricing: Tiers, Real Costs, and How to Control Them
8 min read
Pricing

Table of Contents
MongoDB Atlas pricing runs from $0 on the free tier to more than $33 per hour on the largest dedicated cluster, billed by the hour. The cluster rate is only part of the story. Most teams get surprised by the backups, data transfer, and add-on services on the same invoice, not the tier they picked.
MongoDB Atlas pricing at a glance
MongoDB Atlas uses a pay-as-you-go model billed hourly, split across three cluster types:
Free tier (M0): $0 forever. 512 MB of storage, shared RAM and vCPU. Built for learning and prototypes.
Flex tier: starts at $0.011 per hour, roughly $8 to $30 per month with a hard monthly cap. Usage-based, good for small or unpredictable workloads.
Dedicated tier (M10 and up): starts at $0.08 per hour, about $58 per month for compute alone, scaling to production-grade clusters across AWS, Azure, or Google Cloud.
The number that matters for budgeting is rarely the sticker rate. Your true bill is the cluster rate plus storage, backups, data transfer, and any add-ons you enable, a base-plus-drivers pattern common across most cloud service pricing models.
MongoDB Atlas pricing tiers explained
MongoDB restructured its lower tiers, so a lot of older guides are now wrong. The legacy M2 and M5 shared clusters and the standalone Serverless instances were retired and folded into the Flex tier, which went generally available and began auto-migrating existing serverless instances onto Free, Flex, or Dedicated clusters based on usage. All figures below are verified against the official MongoDB Atlas pricing page; exact RAM and hourly rates shift slightly by cloud provider and region.
Tier | Price | Storage | RAM / vCPU | Best for |
|---|---|---|---|---|
Free (M0) | $0 | 512 MB | Shared | Learning, prototypes |
Flex | $0.011/hr (~$8-$30/mo, capped) | 5 GB included | Shared | Small apps, spiky traffic |
Dedicated M10 | $0.08/hr (~$58/mo compute) | 10-128 GB | 2 GB / 2 vCPU | Entry production |
Dedicated M20 | ~$0.20/hr | 20-256 GB | 4 GB / 2 vCPU | Small production |
Dedicated M30 | ~$0.54/hr | 40-512 GB | 8 GB / 2 vCPU | Standard production |
Free (M0) is genuinely free forever: 512 MB storage, shared compute, no automated backups. Fine for a proof of concept, useless past 512 MB.
Flex answers years of surprise-serverless-bill complaints. Base of about $8 per month, usage on top by operations per second, capped at $30 per month so a runaway workload cannot produce a shock. Includes 5 GB storage and no data-transfer charge.
Dedicated (M10 through M700) gives fixed reserved RAM and vCPU rather than shared capacity, which production workloads need for predictable latency. M10 starts at $0.08 per hour and prices climb steeply as you move up. The same base-plus-drivers reasoning applies to AWS RDS pricing and other managed databases.
How MongoDB Atlas billing works
Atlas tabulates usage daily and invoices monthly. Dedicated clusters bill by the hour of uptime, so a cluster you spin up for a test and forget to pause keeps charging around the clock. Flex bills by usage tier per hour. Incoming data transfer is free; outgoing is not. No annual commitment is required. The mechanics match any cloud billing cycle: metered usage, daily accrual, monthly invoice, and a long tail of easy-to-miss line items, similar to token-metered API products like Llama API pricing where the headline rate hides the units that accumulate on the bill.
The costs the tier price hides
Backups: Snapshots bill per gigabyte per month: $0.14-$0.19 on AWS, $0.08-$0.12 on Google Cloud, $0.34-$0.65 on Azure. PITR adds more, and a 500 GB database with long retention can add $300-$400 per month. Budgets plan for ~10% of cluster cost; PITR reality is 20-25%.
Data transfer and egress: The single most common cause of bill shock. Incoming data is free, outgoing and cross-region traffic bills per gigabyte, from $0.01 same-region to $0.09-$0.23 for internet egress by provider. Cross-region reads from secondaries are not free either. A widely reported case shows an M40 cluster costing $500 per month with a $1,200 data-transfer bill, more than double the compute. Exactly the hidden cloud cost that never shows up in a capacity graph.
Search, vector search, stream processing: Dedicated Atlas Search Nodes bill per node-hour with a two-node minimum. Atlas Vector Search has no separate charge but runs on your cluster or Search Nodes, so you pay the underlying compute. Atlas Stream Processing bills per instance-hour plus a per-document rate.
Add-on uplifts: Advanced Security adds 15% to your cluster cost; Database Auditing adds 10%. These are percentages of the cluster rate, so they scale up when your cluster does.
Support: Basic is free; paid plans (Developer, Pro, Enterprise) are quote-based and unpublished.
Why your Atlas bill is higher than your usage
Tier jumps are not linear. Moving from M10 to M30 is not three times the cost, it is closer to six to eight times, because each jump bundles more RAM, vCPU, and storage you cannot buy piecemeal. Budgeting as if the next tier is a small step is where projections break, which is why cloud cost forecasting beats guessing.
Legacy usage-based billing burned people. The retired serverless model billed per document read and written, not per query, so importing a CSV or running an unindexed scan could generate millions of billed units. One developer wrote that they were "charged 54 times more than it should" on a nearly empty instance. The Flex cap exists to stop that pattern.
Auto-scaling has a ratchet. Atlas scales the cluster up during a spike to protect uptime, but scale-down lags, so you keep paying for burst capacity after the burst. Without alerts, one spike can raise your baseline for days. A disciplined cloud cost control process catches this before it compounds.
Estimate your true monthly Atlas bill
Use this formula rather than the sticker price:
Examples below use 730 hours per month and AWS us-east-1 rates ($0.30/GB storage, $0.14/GB snapshot backup, $0.09/GB internet egress).
Example 1: Solo developer, side project on Flex
Cluster: Flex base tier at $0.011/hr x 730 hrs = $8.03
Storage: 3 GB used, within the 5 GB Flex allowance = $0
Backup: included at Flex tier = $0
Egress: included at Flex tier = $0
Total: ~$8 per month.
If ops-per-second climbs, the bill rises tier by tier but stops at $30/month, the hard Flex cap. Predictable by design.
Example 2: Entry production on M10 (single-region, small SaaS)
Cluster: 3-node M10 replica set at $0.08/hr x 730 x 3 = $175.20
Storage: 50 GB x $0.30 = $15.00
Backup: 50 GB x $0.14 (standard snapshots, 30-day retention) = $7.00
Egress: 20 GB internet-out x $0.09 = $1.80
Advanced Security add-on (+15% of cluster): $26.28
Total: ~$225 per month.
The cluster is 78% of the bill here, so the biggest lever at this scale is right-sizing, not egress.
Example 3: Standard production on M30 (single-region)
Cluster: 3-node M30 replica set at $0.54/hr x 730 x 3 = $1,182.60
Storage: 200 GB x $0.30 = $60.00
Backup with PITR: 200 GB x ~$1.00 blended = $200.00 (roughly 17% of cluster)
Egress: 1 TB internet-out x $0.09 = $92.16
Total: ~$1,535 per month.
Egress is only 6% here, but a chatty microservice pushing 5 TB out would add $360 and shift the picture. Backup with long retention is the second-biggest line after compute.
Example 4: Same M30 workload, multi-region for resilience
Primary region cluster: $1,182.60
Second-region cluster (3-node M30): $1,182.60
Cross-region replication + secondary reads (1 TB x $0.02): $20.00
Storage + backup across both regions: ~$520.00
Internet egress: $92.16
Total: ~$2,997 per month, roughly 2x the single-region bill.
The multi-region multiplier lives mostly in duplicated compute and backup, not cross-region transfer, which is a common misdiagnosis.
Example 5: The egress-heavy anti-pattern
A 3-node M40 cluster runs about $500 per month in compute. Put a heavy analytics service in a different region pulling 15 TB per month across regions at $0.02/GB and you add $300 in replication egress alone. Push the same 15 TB to the public internet at $0.09/GB and you add $1,350, more than double the compute. Keep the client in-region and the same workload costs a fraction. It is the same trap that inflates multi-cloud costs more broadly.
MongoDB Atlas cost by cloud provider
Atlas runs on AWS, Azure, and Google Cloud, and the underlying provider changes your bill. Cluster hourly rates, backup storage, and data transfer differ by provider and region. Google Cloud tends to have the cheapest backup storage, Azure the most expensive, and AWS us-east-1 is often the lowest-cost compute region.
Keeping the database in the same provider and region as your application avoids the cross-region egress that quietly dominates the bill, a variance that mirrors Snowflake pricing and other cloud-native data platforms.
When Atlas stops being worth it
Atlas trades a premium for managed operations, and that trade is excellent at small scale and questionable at large scale. Practitioners consistently report Atlas costing three to five times an equivalent self-managed setup once data and traffic grow. One team documented cutting its MongoDB bill by roughly 90% after moving a 500 GB database off Atlas, driven mainly by data-transfer charges and a forced tier upgrade (Prosopo migration case study).
Community rule of thumb: under a few hundred a month, operational savings make Atlas worth it; past 100 GB with steady load, self-hosting or a different engine starts to pay off. For bursty workloads, a scale-to-zero option like DynamoDB pricing can undercut a fixed cluster that runs around the clock. Steady, high-volume load flips the logic back toward a reserved cluster. Analytics-heavy teams often weigh Atlas against Databricks pricing instead. The crossover is predictable if you measure it.
How to control and allocate MongoDB Atlas spend
The recurring frustration in every cost-shock thread is the same: the graph shows almost nothing, the bill shows thousands. That is a visibility and allocation problem, not a pricing problem, and it is where a mature FinOps practice earns its keep.
Amnic treats Atlas the way it treats any cloud line item. It ingests the spend and attributes it to the team, product, feature, or customer that drove it, then flags the drift early. Instead of one opaque MongoDB charge, you see which service caused the egress, which environment left a dev cluster running overnight, and which customer your database cost is really serving. That mapping is the foundation of any real cloud cost allocation practice.
Right-sizing recovers the most spend fastest. Clusters running consistently under 45% CPU are over-provisioned, and idle non-production clusters bill compute around the clock until someone pauses them, so right-sizing and scheduled pausing commonly reclaim 30% to 60% of a wasteful bill. Consistent AWS tagging makes idle resources easy to find in the first place.
Attribution comes next. A single Atlas project usually serves many teams, and splitting that shared cost with a clear chargeback vs showback model turns an unowned mystery into a budget someone owns. Once each team sees its share, the incentive to trim egress and pause idle clusters takes care of itself.
Governance keeps the savings from leaking back. Alerts on tier jumps, egress spikes, and backup growth stop the auto-scaling ratchet before it resets your baseline, which is cloud cost governance applied to a database. Fold that into a broader cloud cost optimization program and Atlas stops being a line item you fear.
MongoDB Atlas is not overpriced for what it does. It is under-instrumented by default. Teams that stay ahead of the bill measure and allocate before they optimize.
Frequently asked questions
How much does MongoDB Atlas cost per month?
It ranges from $0 on the free M0 tier to $8-$30 on Flex and roughly $58 per month upward for a dedicated M10, before storage, backups, and data transfer. A standard production M30 replica set commonly lands between $1,500 and $2,200 per month.
Is MongoDB Atlas free?
Yes. The M0 free tier costs $0 forever and includes 512 MB of storage with shared compute. It has no automated backups and is meant for learning and prototypes, not production.
Why is my MongoDB Atlas bill so high?
Usually data transfer, backups, add-on services, or an over-provisioned or unpaused cluster, not the base rate. Egress and cross-region traffic in particular can exceed the cluster fee itself.
What replaced the MongoDB Atlas Serverless and M2/M5 tiers?
The Flex tier replaced both the legacy M2/M5 shared clusters and standalone serverless instances. Flex bills $8-$30 per month with a hard cap, and existing serverless instances were auto-migrated.
Is MongoDB Atlas cheaper on AWS, Azure, or GCP?
Rates vary by provider and region. Google Cloud usually has the cheapest backup storage, Azure the most expensive, and AWS often the lowest-cost compute region. Keeping the database with your app avoids cross-region egress.
How do I reduce MongoDB Atlas costs?
Right-size clusters running under 45% CPU, pause idle non-production clusters, keep data in one region to cut egress, tune backup retention, and allocate spend per team so owners can see and act on their share.
Better visibility and management into AI Tokens?
Start with a 30 day trial
Connect leading LLMs
24 hour time to value
Stay ahead of AI Spend

Make AI spend visible, controllable, and accountable.
Gain insights into your AI token costs at a team, customer, business unit and individual user level to measure and manage AI utilization.
Recommended Articles

Llama API Pricing: What Llama Actually Costs Per Token by Provider
Read More

Azure VM Pricing: What Actually Drives the Bill and How to Cut It
Read More

Cursor Pricing Explained: Plans, Credits, and What You Will Actually Pay
Read More

Amazon SageMaker Pricing: What It Costs and How to Cut It
Read More

Snowflake Pricing Explained: Credits, Storage, and What You Actually Pay
Read More

Databricks Pricing Explained: DBUs, Tiers, and Real Costs
Read More






