Cloud commitments
AWS Savings Plans vs. Reserved Instances vs. Spot
The short answer from nearly every source: don't pick just one. Most AWS accounts should run all three at once — Savings Plans for the stable baseline, Reserved Instances for databases, and Spot for interruptible jobs. Each saves 40–90% versus On-Demand, but picking the wrong one for a workload is as expensive as picking none.
On this page
The three models at a glance
| Model | Discount | Commitment | Best for |
|---|---|---|---|
| Savings Plans | up to ~66–72% | $/hour spend, 1–3 yr | Flexible, evolving compute baseline |
| Reserved Instances | up to ~72% | Specific config, 1–3 yr | Stable workloads, esp. databases |
| Spot | up to ~90% | None (interruptible) | Fault-tolerant, stateless jobs |
Savings Plans — flexibility first
Instead of committing to a specific instance, you commit to a minimum hourly spend in dollars, and AWS applies the discount automatically. The most flexible variant, the Compute Savings Plan, applies across EC2, Fargate, and Lambda regardless of instance family, region, OS, or tenancy — you can move from an m5.large in us-east-1 to a c6g.xlarge in eu-west-1 and keep the rate. The trade-off is a slightly lower ceiling (~66%) than Standard RIs.
The 7-day return window. After purchase you have exactly 7 days to cancel or reduce; beyond that the contract is immutable and non-transferable. Unused Savings Plan spend is lost immediately — accurate forecasting is essential.
Reserved Instances — deepest discount, least flexibility
RIs commit to a specific configuration (instance type, region, OS, tenancy). Standard RIs reach ~72% for a 3-year, all-upfront term but offer zero flexibility — change instance family or region and the discount doesn't follow. Convertible RIs trade some discount (~54%) for the ability to change family, OS, and tenancy mid-term.
The most important — and most overlooked — RI use case is databases. Savings Plans don't cover RDS, Aurora, or ElastiCache; those need RIs. A stable $15K/month database can save $6K–$10K/month with an RI and zero changes.
Utilization below 80%, unmonitored expirations silently flipping to On-Demand, and mismatched Convertible vs. Standard RIs all erode savings.
Spot — cheapest, but interruptible
Spot gives you unused capacity at up to 90% off, but AWS can reclaim it with a two-minute warning. Ideal for stateless, interruptible work: EMR jobs, ML training, rendering, CI/CD runners, and containerized workloads on EKS/ECS. Never use Spot for databases, stateful services, or customer-facing apps that can't tolerate sudden node loss. Key rule: diversify across instance families and Availability Zones so a reclaimed pool doesn't take your workload down.
The recommended layered blueprint
- Baseline → cover it with a Compute Savings Plan.
- Families you're confident won't change → add EC2 Instance Savings Plans for a deeper rate.
- Data tier → Standard RIs for RDS, ElastiCache, and Redshift running continuously.
- Headroom + interruptible work → leave 20–30% On-Demand and layer Spot for batch, ML, and anything that survives interruption.
Don't buy anything before 4+ weeks of stable production data. Unused commitments are non-refundable — the risk sits entirely with you.
Automate this instead of doing it by hand
Managing this ladder by hand — forecasting the baseline, laddering terms, catching expirations — is exactly what automated commitment platforms like ProsperOps, Zesty, and Archera exist to do.
FAQ
Should I use Savings Plans or Reserved Instances?
Both, for different things. Compute Savings Plans cover your flexible baseline (EC2, Fargate, Lambda) with up to ~66% off. Reserved Instances go deeper on stable, specific workloads — most importantly databases like RDS, ElastiCache, and Redshift, which Savings Plans don't cover.
When should I use Spot instances?
For stateless, interruptible workloads: batch jobs, ML training, rendering, CI/CD runners, and containerized workloads that tolerate node loss. Spot is up to 90% off but reclaimable with two minutes' notice — never for databases or stateful customer-facing services. Diversify across families and AZs.
What is the biggest risk with AWS commitments?
Unused commitment. If a Savings Plan goes unused, AWS doesn't reimburse you. Don't buy before 4+ weeks of stable data, and mind the 7-day cancellation window and silent RI expirations that flip workloads back to On-Demand.
Sell a commitment or savings tool?
List it in the independent FinOps Directory — free, self-serve, and a verified backlink from a CFO-facing site.