MongoDB Atlas Flex and Serverless Tiers

MongoDB Atlas Flex Clusters and Serverless Instances

Overview

MongoDB Atlas Flex tier (GA: February 6, 2025) is the successor to both the shared tier (M2/M5) and the serverless tier. As of January 22, 2026, M2/M5 clusters and Serverless instances are end-of-life and no longer supported — all existing instances were automatically migrated. Flex is now the entry-level paid cluster in Atlas.

Tier Landscape (2025–2026)

Tier Cost Storage Connections Network Use Case
M0 (Free) $0 512 MB 500 Public IP only Exploration
Flex $8–$30/mo 5 GB (hard cap) 500 Public IP only Dev, staging, MVP
M10 Dedicated ~$57/mo 10 GB+ 1,500 VPC Peering + PrivateLink Production

Flex Pricing Model

Ops-per-second tiered hourly model capped monthly — no per-document billing:

Billed hourly, prorated. Burst to 500 ops/sec for 1 hour does not cost $30.

Key differences from Serverless: Fixed-price cap (no unbounded billing), no cold starts, always warm.

Flex Technical Limits

Resource Limit
Max connections 500
Max ops/sec 500 (read + write combined)
Max storage 5 GB (hard cap, cannot configure)
Max collections 500 total
Sort in-memory 32 MB
Aggregation stages 50 max
MongoDB version Minimum 8.0; auto-upgrade only

Unsupported Features on Flex

Supported Features on Flex (Added vs. old M2/M5)

Vector Search caveat: mongod and mongot share the same node on Flex. Resource contention causes higher query latency. Upgrade to M10+ with dedicated Search Nodes before production.

Flex vs. Dedicated Decision Matrix

Stay on Flex if ALL true:

Move to Dedicated (M10+) when ANY trigger:

Cost break-even: Flex max = $30/mo; M10 = ~$57/mo. For light workloads (<100 ops/sec, <1 GB): Flex saves 85%+ vs. M10.

EOL Timeline

Date Event
February 2025 Flex GA; new M2/M5 and Serverless creation disabled
March 2025 Atlas auto-migrated Serverless instances
January 22, 2026 EOL: M2/M5 and Serverless fully deprecated

Tooling Migration

Atlas CLI

atlas clusters create my-flex-cluster --provider AWS --region US_EAST_1 --tier FLEX
atlas clusters upgrade my-flex-cluster --tier M10  # one-way upgrade

Terraform

resource "mongodbatlas_flex_cluster" "example" {
  project_id = var.project_id
  name       = "my-flex-cluster"
  provider_settings = {
    backing_provider_name = "AWS"
    region_name           = "US_EAST_1"
  }
}

Note: Do NOT use MongoDB::Atlas::FlexCluster in CloudFormation — use MongoDB::Atlas::Cluster instead.

Kubernetes Operator

Upgrade to AKO 2.12.0+. Use spec.flexSpec in AtlasDeployment CRD. To upgrade Flex → Dedicated: spec.upgradeToDedicated: true.

Migration Path: Flex → Dedicated

Serverless History (Deprecated)

Serverless used RPU (Read Processing Unit) / WPU (Write Processing Unit) per-document billing. Caused runaway charges for unindexed queries. Cold starts after ~5 minutes idle (30-60 second reconnect delay). Replaced by Flex due to unpredictable billing, cold start latency, and feature gaps.

Anti-Patterns

Free Tier (M0) vs. Flex

M0 auto-pauses after 30 days idle (cold start on resume). Flex never pauses — more suitable for always-on dev/staging environments.

References

  1. MongoDB Atlas Flex Tier Blog
  2. Atlas Flex Cluster Limitations
  3. Migrate from M2/M5/Serverless to Flex