Posted on Sep 4, 2026 · Updated Sep 4, 2026 · 12 min read
AWS Savings Plans Explained: Compute vs EC2 Instance (2026)
AWS sells four different Savings Plans, and the discount you actually see — not the headline "up to" number — depends on which type you buy, the term you pick, and how you pay for it. EC2 Instance Savings Plans advertise up to 72% off, six points higher than Compute Savings Plans' up to 66%, but that gap only pays off once utilization crosses roughly 92% — below that, the more flexible Compute plan wins on realized savings despite the lower rate (AWS Savings Plans documentation, 2026).
This guide covers all four Savings Plans types, the term-length and payment-option math that swings your discount by up to 24 percentage points, a worked fleet-cost example, and a decision rule for which plan to actually buy. For how Savings Plans stack up against Spot and On-Demand pricing for workloads that don't fit a commitment, see our Reserved vs Spot vs On-Demand guide, and for the rest of 2026's AWS pricing changes, see our AWS pricing changes roundup.
TL;DR — AWS Savings Plans (2026)
- AWS offers four Savings Plans types: Compute (up to 66% off), EC2 Instance (up to 72%), Database (up to 35%), and SageMaker AI (up to 64%)
- You commit to a fixed $/hour spend for 1 or 3 years; usage above the commitment bills at On-Demand rates automatically — nothing breaks if you exceed it
- Compute Savings Plans apply across any EC2 instance family, size, region, OS, and tenancy, plus Fargate and Lambda — the flexible, safer default
- EC2 Instance Savings Plans lock to one instance family in one region for a higher rate — only worth it above roughly 92% utilization
- Database Savings Plans (up to 35% off) now cover Aurora, RDS, DynamoDB, ElastiCache, DocumentDB, Timestream, Neptune, Keyspaces, DMS, and OpenSearch — the old "you still need RDS Reserved Instances" advice is outdated
- Payment option (No/Partial/All Upfront) swings your realized discount by roughly 2–5 percentage points at the same term; 3-year terms save 12–20 points more than 1-year at the same payment option
Table of contents
How AWS Savings Plans actually work
A Savings Plan is a commitment to spend a fixed amount, measured in $/hour, on eligible usage for a one- or three-year term (AWS Savings Plans documentation, 2026). It is not a commitment to a specific instance type, size, or count — you commit to a dollar figure, and AWS automatically applies the discounted rate to whatever eligible usage you generate, up to that hourly amount. Usage above the commitment simply bills at the regular On-Demand rate; nothing gets throttled or cut off.
The commitment is fixed for the entire term once purchased — you cannot change, cancel, or downsize it. If your usage drops below the committed level, AWS still bills the full committed amount every hour, whether or not you consumed it. That asymmetry — guaranteed billing regardless of usage, but automatic overflow to On-Demand when usage exceeds it — is the single most important thing to understand before buying one.
The four Savings Plans types compared
AWS offers four official Savings Plans products, each covering a different slice of usage with a different maximum discount (AWS Savings Plans types documentation, 2026):
| Plan type | Max discount | Coverage | Flexibility |
|---|---|---|---|
| Compute Savings Plans | Up to 66% | Any EC2 instance family/size/region/OS/tenancy, plus Fargate and Lambda | Full — move workloads freely and keep the discount |
| EC2 Instance Savings Plans | Up to 72% | One instance family in one chosen AWS Region | Size, OS, and tenancy can change within the family/region |
| Database Savings Plans | Up to 35% | Aurora, RDS, DynamoDB, ElastiCache, DocumentDB, Timestream, Neptune, Keyspaces, DMS, OpenSearch | Full — any engine, instance family, size, AZ, or region |
| SageMaker AI Savings Plans | Up to 64% | SageMaker AI instance usage (training, inference, notebooks) | Full — any instance family, size, region, or component |
Source: AWS Savings Plans types documentation, 2026. "Up to" discounts assume a 3-year term paid All Upfront and vary by instance family and region — see the term/payment breakdown below for realistic ranges.
The genuinely useful update here for anyone who last read about Savings Plans a year or two ago: Database Savings Plans now exist. Older guides commonly claim you still need Reserved Instances for RDS or ElastiCache because Savings Plans "only cover compute." That's no longer true — Database Savings Plans apply automatically to Aurora, RDS, DynamoDB, ElastiCache, DocumentDB, Timestream, Neptune, Keyspaces, DMS, and OpenSearch usage, with the same engine/instance-family/region flexibility Compute Savings Plans give EC2.
Compute vs EC2 Instance Savings Plans: which to buy
The choice between the two EC2-covering plans comes down to one question: how confident are you that your instance family and region won't change for the next 1–3 years?
At published rates, an EC2 Instance Savings Plan only delivers more realized savings than a Compute Savings Plan once utilization exceeds roughly 92% — below that threshold, the Compute plan's lower headline discount is offset by the fact that unused Compute-plan commitment can absorb usage from any instance family, region, or service (including Fargate and Lambda), while unused EC2 Instance-plan commitment locked to one family/region has nowhere else to apply. In practice, most teams whose architecture changes at all — instance-family upgrades, new regions, a shift toward Fargate — are better served by Compute Savings Plans as the default, reserving EC2 Instance Savings Plans for a specific, genuinely stable workload (a fixed database-adjacent fleet, a legacy service nobody is touching) where the extra 6 points of discount is close to guaranteed to be realized.
A practical split many teams use: cover a conservative baseline — the usage level you're confident won't drop, verified against 2–3 months of Cost Explorer history — with a Compute Savings Plan, and layer an EC2 Instance Savings Plan only on top of a specific instance family you know isn't moving, for the extra discount on that slice.
Term length and payment option: how much more you save
Beyond plan type, two more choices change your realized discount: the term (1 or 3 years) and the payment option (No Upfront, Partial Upfront, or All Upfront). Longer terms and more upfront cash both push the discount higher, and the gap between the cheapest and most expensive combination is large — roughly 24 percentage points for the same plan type:
| Term | Payment option | Compute SP discount range | EC2 Instance SP discount range |
|---|---|---|---|
| 1 year | No Upfront | 26–46% | 28–48% |
| 1 year | All Upfront | 29–49% | 31–52% |
| 3 years | No Upfront | 38–62% | 44–68% |
| 3 years | All Upfront | 42–66% | 48–72% |
Ranges compiled from AWS list pricing across instance families by usage.ai, 2026. Exact discount depends on instance family and region — confirm current rates in the AWS Cost Explorer Savings Plans purchase flow before committing. Partial Upfront falls between the No Upfront and All Upfront rows shown.
The practical takeaway: All Upfront only buys you 2–5 extra points of discount over No Upfront at the same term, but the jump from a 1-year to a 3-year term is worth 12–20 points — far more valuable, and it's available with zero cash outlay via No Upfront. Unless capital efficiency specifically requires spreading or prepaying the cost, term length matters far more than payment option for the discount you actually realize.
Worked example: a $10/hr fleet, three ways
Assume a steady EC2 fleet running $10/hr in On-Demand-equivalent usage, 24/7 (730 hours/month = $7,300/month on-demand). Comparing a 3-year, No Upfront commitment across plan types, using the mid-range discount from the table above:
| Purchase | Discount (mid-range) | Monthly bill (fully utilized) |
|---|---|---|
| On-Demand | 0% | $7,300 |
| Compute SP, 3yr No Upfront | ~50% (38–62% range) | ~$3,650 |
| EC2 Instance SP, 3yr No Upfront | ~56% (44–68% range) | ~$3,212 |
This is the fully-utilized case — every committed hour gets consumed. Now the over-commitment risk: say you size a Compute Savings Plan at $5/hr (a plausible Cost Explorer recommendation for this fleet), committing to $3,650/month regardless of usage. If real usage falls to a $3/hr on-demand-equivalent one month — a 60% utilization rate against the $5/hr commitment — you still pay the full $3,650, well into the "below 80% utilization means over-committed" zone that AWS Cost Explorer flags as a waste warning. The commitment doesn't shrink with usage; only your on-demand overflow charges do.
Savings Plans vs Reserved Instances vs On-Demand
| On-Demand | Savings Plans | Reserved Instances | |
|---|---|---|---|
| Commitment | None | $/hour spend, 1 or 3yr | Specific instance count/type, 1 or 3yr |
| Max discount | 0% | Up to 72% (EC2 Instance) | Up to ~72% (Standard RI, service-dependent) |
| Flexibility | Full | Compute SP: full; EC2 Instance SP: one family/region | Standard: none; Convertible: family changes, lower discount |
| Best for | Spiky, unpredictable usage | Steady baseline compute/database/ML usage | Guaranteed capacity reservation in a specific AZ |
With Database Savings Plans now covering the same services RDS and ElastiCache Reserved Instances used to be the only option for, Reserved Instances have a narrower remaining case: workloads where you specifically need a guaranteed capacity reservation in a particular Availability Zone (something no Savings Plan provides — only On-Demand Capacity Reservations and zonal RIs do), or services outside the Savings Plans list entirely, like Redshift Reserved Nodes. For everything else — steady EC2, Fargate, Lambda, or database usage — Savings Plans deliver comparable or better discounts with meaningfully more flexibility.
Sizing your commitment without over-committing
AWS Cost Explorer generates Savings Plans recommendations directly from your trailing usage history, and it's the right starting point — but two metrics matter more than the recommendation itself once you're live:
- Utilization — how much of your committed $/hour you're actually consuming each hour. A healthy rate sits at 90% or higher; below 80% signals over-commitment and wasted spend on unused commitment.
- Coverage — what share of your eligible usage is running at the discounted rate versus On-Demand. Low coverage with high utilization means there's room to buy more Savings Plans without adding risk.
The safe pattern for most teams: size the initial commitment against your trailing 30–60-day minimum usage, not the average — covering your seasonal or growth peak invites the over-commitment scenario from the worked example above. Add incremental Savings Plans as usage grows and stabilizes, rather than one large upfront commitment sized to where you expect to be in a year.
Common Savings Plans mistakes
- Buying at peak usage. Committing based on a temporary traffic spike or a one-off migration burst locks in a payment obligation that outlives the usage that justified it.
- Choosing EC2 Instance Savings Plans on an evolving architecture. If instance-family upgrades, region migrations, or a shift toward Fargate/Lambda are likely within the term, the locked-in family/region commitment forfeits the flexibility that would have kept the discount realized.
- Ignoring Database Savings Plans and buying RDS Reserved Instances out of habit. Older internal runbooks and outdated guides still point teams toward database RIs; Database Savings Plans usually deliver the same or better flexibility now.
- Committing at the AWS account level without org-wide visibility. In a multi-account AWS Organization, one team's Savings Plan purchase changes the effective rate for other accounts sharing the commitment pool — buy centrally, with visibility into everyone's usage, not per-team.
- Never revisiting utilization after purchase. A Savings Plan bought against last quarter's usage can drift into the over-commitment zone silently as workloads shift or shrink — Cost Explorer's utilization report needs a recurring review, not a one-time check.
The decision rule
Three questions determine which Savings Plan to buy, in order of importance:
- What kind of usage is it? Steady EC2/Fargate/Lambda → Compute Savings Plans. Steady Aurora/RDS/DynamoDB/ElastiCache/other listed database usage → Database Savings Plans. Steady SageMaker AI usage → SageMaker AI Savings Plans. Genuinely unpredictable usage of any kind → stay On-Demand (or Spot, where interruption-tolerant) until a stable baseline emerges.
- How confident are you the instance family and region won't change? Very confident, for a specific stable fleet → layer an EC2 Instance Savings Plan for the extra discount. Any real uncertainty → Compute Savings Plans stay the safer, still-substantial-discount default.
- How much cash flexibility do you need? Prioritize a 3-year term over the payment option — the term length is worth far more discount than upfront cash. Choose No Upfront by default unless prepaying is specifically advantageous for your finance team.
For modeling exact commitment levels against your own workload before you buy, the AWS price estimator and SpendArk cloud cost calculator let you compare On-Demand, Savings Plans, and Reserved Instance scenarios side by side. And once a commitment is in place, our guide to reading your AWS bill shows exactly where Savings Plans coverage and utilization show up in the Cost Explorer and billing console.
Providers with flat pricing and no commitment plans to manage
If tracking Savings Plans utilization and coverage across four plan types is more overhead than the discount justifies for your scale, these providers skip commitment tiers entirely.
- DigitalOcean — flat, published pricing with no Savings Plans or RI purchase flow to manage.
- Hetzner — dedicated and cloud pricing stays predictable without a multi-year commitment ladder.
- Vultr — on-demand rates that are already low enough that most teams skip commitment discounts entirely.
Some provider links above are affiliate links — we may earn a commission at no extra cost to you. It never affects our pricing data.
Frequently asked questions
What's the difference between Compute and EC2 Instance Savings Plans?
Compute Savings Plans (up to 66% off) apply across any EC2 instance family, size, region, OS, and tenancy, plus Fargate and Lambda. EC2 Instance Savings Plans (up to 72% off) lock the commitment to one instance family in one region for a higher discount, but lose value if your architecture changes. The EC2 Instance plan only beats the Compute plan on realized savings above roughly 92% utilization.
How much can I actually save with AWS Savings Plans?
Realistic ranges run 26–48% on a 1-year term and 38–72% on a 3-year term, depending on plan type and payment option — the "up to 72%" headline figure assumes a 3-year EC2 Instance Savings Plan paid All Upfront on a high-discount instance family, not a typical purchase.
Do Savings Plans cover RDS and other databases?
Yes, via Database Savings Plans (up to 35% off), which cover Aurora, RDS, DynamoDB, ElastiCache, DocumentDB, Timestream, Neptune, Keyspaces, DMS, and OpenSearch automatically, regardless of engine, instance family, or region. This is a newer product than Compute/EC2 Instance Savings Plans, so older guides recommending database Reserved Instances instead are frequently out of date.
What happens if my usage drops below my Savings Plans commitment?
You're still billed the full committed $/hour amount — the commitment can't be reduced or canceled mid-term. Only usage above the commitment adjusts, billing at On-Demand rates. This is why sizing against a conservative trailing-usage floor, not a peak or projected-growth figure, matters.
Should I choose a 1-year or 3-year term, and which payment option?
Term length matters far more than payment option: a 3-year term saves roughly 12–20 percentage points more than a 1-year term at the same payment option, while All Upfront only adds 2–5 points over No Upfront at the same term. Unless cash-flow constraints require otherwise, a 3-year, No Upfront commitment typically gives the best discount-per-dollar-of-risk trade-off.
Want someone to find it for you?
Send us your billing export and we'll send back every waste item we find, each with the dollar amount it costs you per month and the exact change to make. No credentials — you export the data yourself. From $1,500, delivered in 5 business days. If we don't find at least 3× the fee in annualised savings, you pay nothing.