<!-- llms-explorer concept facts · https://llms-explorer.com/tree/automated-cluster-scaling-decision-matrix/ · pack 2026-10-15 · ~5391 tokens -->

# Automated Cluster Scaling Decision Matrix

> Depth-first rabbithole dossier for Automated Cluster Scaling Decision Matrix; source-anchored research pack.

Parent: [Atlas Triage Workflows](https://llms-explorer.com/tree/atlas-triage-workflows/) · 6 facets · 48 facts · page: https://llms-explorer.com/tree/automated-cluster-scaling-decision-matrix/

## Definitions

- [low] If the cluster is not at the configured maximum tier, Atlas raises the minimum cluster tier to the current cluster tier to prevent scaling down to unsupported configurations. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] IWM is the overload protection system applied to all Dedicated clusters running MongoDB 9.0 or later, but is not available on Free or Flex clusters. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`

## How it works

- [low] Atlas avoids scaling up to the next tier if an M10 or M20 cluster was scaled up in the past 20 minutes or one hour (depending on thresholds), an M30+ cluster was scaled up in the past 10 minutes or one hour (depending on thresholds), or, for the Queued or Rejected Operations criterion, the cluster was scaled up in the past 10 minutes. Separately, the Queued or Rejected Operations criterion triggers scale-up when the rate stays above zero for every sample in the past 10 minutes. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] After disk auto-scaling triggers, subsequent disk auto-scaling and manual disk scaling may be unavailable for a few hours. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] If reactive auto-scaling is enabled, Atlas uses the rate of queued operations and the rate of operations rejected by Load Shedding to determine when to scale the cluster up. Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] When used on Flex clusters, the upgradeSharedCluster, createServerlessInstance, and updateServerlessInstance API endpoints accept user-set values but do not toggle Continuous Backup because it is unavailable for Flex clusters. Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#tools`
- [low] Atlas does not trigger cluster tier auto-scaling during a simulated regional outage. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`

## Measurements and reference values

- [low] Scaling down requires that Atlas has not scaled the cluster down in the past 24 hours and that the average Normalized System CPU is below 45% of available resources over the last 10 minutes and 4 hours. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas may increase the cluster tier even if Cluster Tier Scaling is disabled if the current tier lacks required storage capacity, and the maximum storage capacity for an M30 cluster is 480 GB. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] If an M30 cluster with maximum storage reaches 90% disk usage, Atlas scales the tier up to M40 to support the required 600 GB storage capacity, and disables automatic scaling down when the maximum tier is overridden. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas caps Relative System CPU Utilization at 100%, and a combined value above zero indicates the cluster is under overload. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] For M10 and M20 clusters, Atlas scales up if average normalized Absolute System CPU exceeds 90% for 20 minutes, Relative System CPU exceeds 75% for one hour, or System Memory Utilization exceeds 90% for 10 minutes or 75% for one hour. For M30+ clusters, it scales up if average Normalized System CPU exceeds 90% for 10 minutes or 75% for one hour, or System Memory Utilization exceeds 90% for 10 minutes or 75% for one hour. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [medium] Atlas automatically increases cluster storage when disk space used reaches 90% for any node, and this auto-scaling is enabled by default but only scales storage up. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md, https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`

## Problems, failure modes and limitations

- [low] Atlas does not scale a cluster down if the target tier cannot support current disk capacity or provisioned IOPS, and if the cluster is at the configured maximum tier, automatic scaling down is disabled. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas Infinite clusters manage storage independently with no storage auto-scaling configuration, while users set a maximum storage size to control costs, and Atlas blocks writes when this limit is reached. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas selects the lowest common denominator across the three cloud providers for multi-cloud clusters, and you cannot adjust IOPS for multi-cloud clusters. Sources: https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas disables disk auto-scaling with an error message if different cluster tier classes are specified for base and analytics nodes. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`
- [low] During public preview, Atlas might throttle writes before the cluster reaches the set storage limit to preserve system availability. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`
- [low] For Azure clusters supporting Extended Storage/IOPS, you can make up to four disk IOPS/throughput changes within 24 hours, and if this limit is reached, Atlas replaces the virtual machine to bypass the limitation. Sources: https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`

## Comparisons and alternatives

- [low] When memory runs low, the cluster slows down in a controlled way instead of running out of memory or repeatedly clearing necessary data. Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas CloudFormation and CDK support Flex clusters using the MongoDB::Atlas::Cluster or CfnCluster resources instead of FlexCluster resources, with general support for M2/M5 clusters ending on January 22, 2026. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#tools`

## Facts and statements

- [low] Atlas scales clusters to another tier within the same class, such as scaling General clusters to other General classes but not to Low-CPU classes. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] By default, Atlas sets the minimum oplog retention window to 24 hours. For storage auto-scaling to complete, Atlas requires the minimum oplog retention window (oplogMinRetentionHours) to be up to (60 seconds) * (GB of disk space configured). On an Atlas Core cluster, Atlas delays an auto-scaling event until the oplog window covers the estimated scaling time. Sources: https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [medium] For dedicated Atlas Core clusters, restoring a snapshot larger than the destination cluster's storage capacity prevents automatic scaling. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md, https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`
- [low] Scaling up to a greater cluster tier requires time to prepare backing resources, so automatic scaling may not occur during bursts of activity such as bulk inserts. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`
- [low] If a cluster receives a burst of high-speed write activity, automatic scaling might not occur due to a temporary spike in disk storage capacity. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`
- [low] As of February 2025, users can create Flex clusters but can no longer create M2, M5, or Serverless instances via the Atlas UI, CLI, Administration API, Kubernetes Operator, HashiCorp Terraform, or CloudFormation Resources. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] As of January 22, 2026, Atlas no longer supports M2 and M5 clusters or Serverless instances, having migrated all existing M2 and M5 clusters to Flex clusters. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas migrated Serverless instances to Free, Flex, or Dedicated clusters based on usage patterns. Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [medium] Cluster tier auto-scaling works on General and Low-CPU class tiers but not on Local NVMe SSD class clusters, and is available for all dedicated Atlas Core cluster tiers in these classes as well as Atlas Infinite clusters. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md, https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas will not scale a cluster tier if the new tier falls outside the specified Minimum and Maximum Cluster Size range. Sources: https://www.mongodb.com/docs/atlas/cluster-autoscaling-compute-core.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Load Shedding is available only on M30+ replica set clusters running MongoDB 9.0 or later, with the default setting set to Atlas Managed, which disables Load Shedding on MongoDB 9.0. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Write blocking and memory tuning are active on M10+ clusters running MongoDB 8.0 or later, while cache eviction is active on M10+ clusters running MongoDB 8.3.3 or later, or 8.0.28 or later. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Connection rate limiting is active on M10 and M20 clusters running specific MongoDB versions. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] On Atlas Core clusters, Atlas blocks write operations on the replica set if the primary node runs critically low on free disk space, continuing to serve reads while including delete operations in blocked writes. Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] On sharded clusters, Atlas blocks only writes routed to the affected shard. Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Atlas Infinite manages storage independently from compute, so storage configuration options apply to Atlas Core clusters, where storage performance scales with capacity, whereas on Atlas Infinite, the cluster tier determines storage IOPS and throughput. Sources: https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] M10+ clusters provide the ability to customize storage capacity. Sources: https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] For new clusters, Atlas automatically enables cluster tier auto-scaling and storage auto-scaling. Sources: https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] Instance sizes M10 to M40 have a disk capacity to system memory ratio of 60:1, while sizes greater than M40 have a ratio of 120:1, and Atlas has disk capacity limits on single replica sets scaling up to 4 TB for higher tiers. Sources: https://www.mongodb.com/docs/atlas/customize-storage.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] As of 2023, the reactive auto-scaling algorithm scaled up after a few minutes of overload and scaled down after a few hours of underload, and it only scaled between adjacent tiers, such as scaling an M60 replica set down to M50 but not directly to any smaller tier. Sources: https://www.mongodb.com/company/blog/engineering/mongodb-predictive-auto-scaling-an-experiment — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#core`
- [low] API endpoints previously compatible with M2/M5 clusters managed Flex clusters as of January 2025 and reached End of Life on January 22, 2026. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#tools`
- [low] API endpoints for Serverless Instances managed Flex clusters as of January 2025, and Serverless instances are no longer supported as of March 2025, with these endpoints now supporting only Flex clusters. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#tools`
- [low] The HashiCorp Terraform Provider, Atlas Go SDK, and Atlas CLI support Flex clusters, while general support for M2/M5 clusters and Serverless instances ended on January 22, 2026. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#tools`
- [low] Managing Flex clusters requires Atlas Kubernetes Operator 2.12.0 or later, which is free of serverless dependencies, and uses the spec.flexSpec field in the AtlasDeployment Custom Resource. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/flex-migration.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#tools`
- [low] Auto-scaling events, including reactive and predictive actions, are logged in the Activity Feed, where users can filter to distinguish between scaling triggered by current resource usage and forecasted cyclical demand. Sources: https://www.mongodb.com/docs/atlas/architecture/current/monitoring-alerts.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#tools`
- [low] In dev and test environments, configuring alerts for clusters inactive for seven or more days helps identify clusters that can be shut down to save costs. Sources: https://www.mongodb.com/docs/atlas/architecture/current/monitoring-alerts.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#methodology`
- [low] For clusters with FCV 9.0 or later, logs return a MongoServerError indicating replica set writes are blocked due to insufficient disk space, while earlier FCV versions report user writes blocked due to disk use threshold exceeded. (verified as of 2026-10-15) Sources: https://www.mongodb.com/docs/atlas/intelligent-workload-management.md — source: `~/.global-ai-hub/research/.pipeline/mongodb-2026-10-14/frb/automated-cluster-scaling-decision-matrix-bbf263d76b/rabbithole-synthesis.md#troubleshooting`

## Related concepts

- Cluster — is a part of Automated Cluster Scaling Decision Matrix
- Scaling — is a part of Automated Cluster Scaling Decision Matrix
