MongoDB is a popular non-relational database among developers of distributed apps. This Not Only SQL (NoSQL) database system delivers versatility, high scalability, and a flexible querying model. MongoDB is also remarkable for its fault-tolerance, self-healing, and real-time analytics capabilities.
But many companies also decry that MongoDB pricing is expensive and complicated. We’ll share how the MongoDB pricing model works. Afterward, we’ll share how to find out who, when, and why your MongoDB costs change, so you can optimize them before overspending.
Table Of Contents
MongoDB Pricing Explained
MongoDB pricing is pay-as-you-go, which is a usage-based pricing model. But exactly how much you spend depends on which edition of MongoDB you choose:
- MongoDB Community Server is the free and open-source version of the NoSQL database system.
- MongoDB Atlas is the paid and fully managed version of MongoDB that integrates natively with major cloud providers, including Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP).
- MongoDB Serverless Atlas is a serverless version with flexible pricing.
- MongoDB Enterprise Advanced Server is the paid and self-managed edition for large companies that want to deploy the MongoDB platform on-premises or in your private cloud infrastructure.
Something else. In particular, the Community and Enterprise editions of MongoDB are self-managed and support multi-cloud deployment — and so follow a different billing method from the MongoDB Atlas product.
While it offers limited features, the open-source version offers plenty of capabilities and support, including native sharding, flexible schema, automatic failover, built-in replication, and support for ad hoc queries. MongoDB Community Server is free to use under the Server Side Public License (SSPL). This means that you can tweak and use the source code, but you cannot use it for a commercial SaaS product.
Two more quick facts. First, MongoDB Compass is also free to use. Compass provides the graphical user interface (GUI) that queries, analyzes, and manages data in your MongoDB clusters. You can download it for macOS, Windows, and Linux.
Enterprise Advanced Server requires custom pricing. Some of the top features in the MongoDB Enterprise Advanced Server include advanced support, MongoDB Ops Manager, Kubernetes integration, enterprise security tools, and on-demand training.
Here’s a closer look at how MongoDB Atlas billing works.
How Does MongoDB Atlas Billing Work?
Pricing for MongoDB Atlas is usage-based because it charges per hour of cluster usage. However, several factors affect your MongoDB Atlas costs, including your:
- Your cloud provider (AWS vs Azure vs Google Cloud)
- Cluster size
- Cluster region
- Data transfer costs
- Types of services you add on, such as backups and restores, custom storage speed, and advanced training or support plans.
MongoDB Atlas follows a Database-as-a-Service (DaaS) model that enables developers to use a robust document data model with a unified query interface for high availability, scalability, and data protection.
Atlas bills the capabilities based on the cluster tier you choose.
What are the different MongoDB clusters?
The default MongoDB Atlas cluster tiers range from M0 to M700, all of which leverage MongoDB 5.0. Each tier has its own default memory (RAM) and storage capacity, as well as maximum storage speed (queries and read/write operations), all of which make up the cluster’s hourly cost.
- M0 clusters are free for anyone to use although they are ideal for teams that are learning how the MongoDB cloud data platform works with small applications.
- M2 and M5 clusters are shared clusters that provide the same capabilities as M0 clusters but with 2GB and 5GB storage, respectively, data backups, and API access. These are ideal for low-throughput applications in shared environments.
- M10 and M20 cluster tiers are dedicated clusters that support low-traffic use cases. Currently, they support only replica set deployments but otherwise offer full Atlas functionality. Both also run on burstable-performance infrastructure.
- M30 and larger are dedicated MongoDB clusters designed to handle high loads and large datasets. The clusters support full Atlas access, replica set support, and sharded cluster deployments.
- M40, M50, M60, M80, M200, and M400 cluster tiers support Non-Volatile Memory Express Solid State Drives (NVMe SSDs) storage for AWS. These are dedicated clusters and automatically scale up to the next higher tier once 90% of available storage is used. These clusters are available in the Americas, Europe, and Asia Pacific regions. You can’t pause an NVMe cluster.
- M60, M80, M200, M300, M400, and M600 dedicated clusters support NVMe on Microsoft Azure. See the availability zones here and here. You won’t be able to pause an NVMe cluster.
- The Atlas service on Google Cloud does not support NVMe clusters.
The following table summarizes how an M0 cluster differs from an M2 or M5 shared cluster, as well as an M10 or larger dedicated cluster.
MongoDB Atlas features by cluster tiers
MongoDB Atlas enables you to see the costs of different clusters before you can change them. You can see the cost of your preferred configuration (without data transfer fees) within the Cluster Overview box. Billing for a specific cluster starts when you upgrade an M0 free cluster to an M2, M5, or larger cluster tier.
The capabilities discussed above explain MongoDB pricing in terms of what you are paying for. The next question is.
How Much Does MongoDB Cost, Really?
MongoDB Atlas prices these capabilities using a tier system; Free Tier, Shared, Dedicated, and Serverless.
MongoDB pricing tiers
Pricing also varies based on the cloud provider you use. Here’s what all of this looks like:
MongoDB Free Tier
The MongoDB Atlas free tier is available with M0, M2, and M5 cluster tiers within a sandbox environment, and includes up to 5GB storage, 512 MB RAM shared, and shared vCPU. The free tier also supports monitoring and alerting and diagnostics and performance optimization tools.
Security-wise, you get always-on authentication, end-to-end encryption, and client-side field-level encryption. The tier also supports Atlas Search, Chats, and monitoring and alerting integrations.
MongoDB Shared
This free forever tier includes everything the Free Tier offers, plus limited Admin API support, backups (daily snapshots), and API integrations.
MongoDB Dedicated
Dedicated MongoDB clusters start at $0.08 per hour or $57 per month (or $95 per month for dedicated multi-region clusters).
This tier delivers up to 96 vCPUs, 768 GB of RAM, and 4 TB of storage (all per shard). You also get everything in Free Tier and Shared, plus Atlas Data Federation, BI connector, LDAP integration, granular database auditing, private networking, uptime SLA, multi-cloud, multi-region, elastic scalability, and online archive.
In terms of backups, you can get point-in-time recovery and on-demand snapshots. You can set up configurable snapshot and retention policies.
MongoDB Serverless
It charges $0.1 per million reads. You also get up to 1 TB of storage, scalable RAM and vCPU, and backups (two daily snapshots with optional extended retention).
Also expect elastic scalability, monitoring and alerting, Admin API, end-to-end encryption, always-on authentication, public networking (AWS and Azure only), Atlas Charts, and client-side field-level encryption. Limited support is available for diagnostic and performance optimization solutions.
MongoDB pricing on Amazon Web Services (AWS)
MongoDB Atlas pricing on AWS is pay-as-you-go, with a free forever tier available for starters. AWS charges $9 per month (shared instance) or $60 per month (dedicated instance) for MongoDB Atlas usage.
AWS instance type, AWS region, consumption, and other factors, like data transfer and backup policy, will also affect your MongoDB spend on AWS.
Something to note here is that AWS, GCP, and Azure use a credit billing system, where 100 consumption units equal a single Atlas credit (1 credit), which, in turn, equals one dollar ($1).
Your application’s RAM, IOPS, Storage, and other requirements determine the rate at which Consumption Units are used up, and will be charged on top of fees for using GCP, AWS, or Azure services.
Here is the pricing for MongoDB Atlas on AWS by instance type in the US East 1 (North Virginia) region:
Alternatively, you can use a variety of low-CPU instance types but comparable RAM and storage capacities, like these:
Other factors that affect pricing for MongoDB on AWS include:
- Data transfers – Pricing is based on usage for M10 and larger instances. It costs $0.01 per GB for same-region transfers, $0.02 per GB for cross-region transfers, and $0.09 per GB for data you send to the internet.
- Backups – Pricing starts at $0.14 per GB per month, depending on the size of your datafiles on the disk.
Pricing on Azure follows a similar billing model.
MongoDB on Microsoft Azure
MongoDB on Azure pricing is also pay-as-you-go, billed monthly. The MongoDB Free Tier is also available on Azure for starters. Pricing starts at $0.01 per Consumption Unit.
Precisely how much you’ll spend will depend on your cluster configuration (Azure instance types, size, region, vCPU, and RAM), Availability Zone, and usage. Here are the available MongoDB cluster tiers on Azure to give you an idea:
The starred instances/cluster tiers are available as multi-cloud clusters.
MongoDB on Google Cloud (GCP)
Pricing for MongoDB Atlas on Google Cloud is pay-as-you-go per hour, billed monthly at $0.01 per Consumption Unit. Again, your cluster configuration, availability zone, and usage patterns will directly affect how much you actually spend. You can get started with the MongoDB Atlas Free Tier on GCP.
You get the following MongoDB cluster tiers on GCP:
We get it. Figuring out how MongoDB pricing works can be confusing. There’s an easier way to collect, analyze, understand, and optimize your MongoDB costs.
How To View, Control, And Optimize MongoDB Costs With CloudZero
Many companies use MongoDB internally, such as for data analysis and research. Some use cases are external-facing (and so their costs should reflect in margins and COGS). Others use the platform for both, so they incur several different types of costs.
With shared clusters and massive billing data, it’s tough to tell what’s driving your MongoDB costs, so you can optimize them. CloudZero solves this problem.
With CloudZero, you automatically ingest massive amounts of usage and associated insights from MongoDB. CloudZero normalizes the data, analyzes it, and presents it in a visual, contextual, granular, and actionable way, like this:
- Up-to-the-minute MongoDB cost data, including anomaly alerts and cost trends so you can prevent overspending.
- Allocate MongoDB costs proportionally to their actual use. For example, we can distinguish between R&D and production costs, even if you have messy cost allocation tags.
- Accurately apportioning shared MongoDB spend, such as multi-tenant costs.
- Break down your MongoDB spend by cost per individual customer, product, feature, team, cluster, environment, and more business dimensions that you actually care about.
- View your MongoDB spend compared to your AWS, GCP, Azure, Snowflake, New Relic, Databricks, Kubernetes spend, and more.
MongoDB Pricing FAQs
Here are some answers to some frequently asked questions about MongoDB pricing.
Is MongoDB open-source?
MongoDB Community Server is free and open-source to anyone who wants to use it. MongoDB Enterprise Advanced Server is self-service but not open-source. MongoDB Atlas is a fully managed version available through AWS, Azure, and Google Cloud.
Is MongoDB free forever?
With up to 5GB of storage, shared RAM, and shared CPUs for use on M0, M2, and M5 MongoDB cluster tiers, the MongoDB Atlas Free Tier is free forever.
How much does MongoDB cost on AWS?
Shared instances of MongoDB on AWS cost $9 per month while dedicated clusters/instances cost $60 per month.
Costs vary by usage and cluster/instance configuration, and are charged at $0.01 per Consumption Unit ($1). Data backup, data transfer, and data storage speed may also affect your MongoDB costs on AWS.