AWS offers two main ways to reduce compute costs through commitment: Reserved Instances (RIs) and Savings Plans. Both can save 35-60% vs on-demand pricing, but they work differently and are suited to different situations.
Reserved Instances (RIs) — Overview
Reserved Instances commit you to a specific instance type, region, and operating system in exchange for a discount. Three types:
- Standard RIs: Deepest discount (up to 72%), least flexible. Can sell on the RI Marketplace if no longer needed.
- Convertible RIs: Can exchange for different instance types within a family. 54% max discount — less than Standard but more flexible.
- Scheduled RIs: Reserve capacity for specific recurring time windows. Less common.
Savings Plans — Overview
Savings Plans commit to a dollar amount of compute spend per hour (e.g., $10/hr), not a specific instance. Three types:
- Compute Savings Plans: Most flexible — applies to EC2, Lambda, and Fargate across any instance family, region, and OS. Up to 66% discount.
- EC2 Instance Savings Plans: Applies to a specific instance family in a region (e.g., M-family in us-east-1). Up to 72% — same as Standard RIs but more flexible within the family.
- SageMaker Savings Plans: Specific to SageMaker instances.
Savings Comparison — Real Numbers
For m7i.2xlarge (8 vCPU, 32GB) in us-east-1, Linux:
- On-demand: $0.4032/hr ($295/month)
- Standard RI 1yr No Upfront: $0.258/hr ($188/month) — 36% off
- Standard RI 3yr All Upfront: $0.167/hr ($122/month) — 59% off
- EC2 Instance Savings Plan 1yr: $0.258/hr — same as Standard RI
- Compute Savings Plan 1yr: $0.270/hr — slightly less discount, much more flexibility
When to Use Reserved Instances
- You have stable, predictable workloads on specific instance types
- You want maximum discount (Standard RI = deepest discount available)
- Your architecture is mature and unlikely to change significantly
- After Azure expanded RI flexibility in March 2026 — now safer to commit as you can exchange within family
When to Use Savings Plans
- Your workloads shift between instance families (e.g., some compute-intensive, some memory-intensive)
- You're using Lambda or Fargate in addition to EC2
- You want simplicity — Savings Plans are easier to manage than individual RIs
- You're not sure which instance types you'll use in 12 months
The Optimal Strategy: Stack Both
For maximum saving, use both:
- Cover your stable baseline workloads with EC2 Instance Savings Plans (maximum discount for known families)
- Cover variable/uncertain compute with Compute Savings Plans (flexibility for Lambda, Fargate, cross-family)
- Use on-demand or Spot for truly variable peak capacity
Use the TCOIQ ROI Calculator to model how much you can save by moving on-demand workloads to reserved pricing.