Reserved Instances vs Savings Plans: Cloud Commitments Explained
How Reserved Instances, Savings Plans and committed use discounts work on AWS, Azure and Google Cloud, and how to size a commitment without overbuying.
Reserved Instances commit you to a specific instance type or family in a region for 1 or 3 years, while Savings Plans commit you to a dollar-per-hour spend that follows your usage across instance types and services. Reserved Instances can give slightly deeper discounts; Savings Plans trade a little discount for flexibility. Commit only to your steady baseline.
Photo: Unsplash
On this page
- The short version: what each commitment actually promises
- How AWS structures Reserved Instances and Savings Plans
- How Azure handles reservations and savings plans
- How Google Cloud handles committed use discounts
- Side-by-side: Reserved Instances vs Savings Plans
- How to size a commitment without overbuying
- Which one should you choose?
- Conclusion
- Sources
You have been running on on-demand pricing for a year, the bill is steady, and someone on the team says you are leaving money on the table. They are probably right. Every major cloud provider gives large discounts if you promise to keep using compute for 1 or 3 years. The hard part is choosing the right kind of promise and the right size, because a commitment you don’t use is money spent on nothing.
This guide explains the 2 main commitment types, Reserved Instances and Savings Plans, shows how AWS, Microsoft Azure and Google Cloud name and structure them, and walks through a sizing method that keeps you from overbuying.
The short version: what each commitment actually promises
A Reserved Instance (RI) is a promise to use a specific kind of resource. On AWS, that means an EC2 instance type or family, in a region, with a given operating system and tenancy, for 1 or 3 years. In return, matching usage is billed at a lower rate.
A Savings Plan is a promise to spend a fixed dollar amount per hour on eligible compute for 1 or 3 years. AWS and Azure both measure the commitment in dollars per hour. Any eligible usage up to that amount gets the discounted rate, and anything above it is billed at on-demand prices.
The difference matters when your infrastructure changes. If you move from one instance family to another, change regions or shift work to containers or serverless, an RI may stop matching your usage. A flexible Savings Plan keeps applying, because it follows spend, not a specific machine.
Key takeaway: Reserved Instances reward you for predicting exactly what you will run. Savings Plans reward you for predicting roughly how much you will spend. The more your architecture changes, the more the flexibility of a Savings Plan is worth.
How AWS structures Reserved Instances and Savings Plans
AWS offers both, and they work side by side. According to the AWS Savings Plans FAQ, Compute Savings Plans correspond to Convertible RIs, and EC2 Instance Savings Plans correspond to Standard RIs.
| AWS option | What you commit to | Maximum discount (AWS figure) | Flexibility |
|---|---|---|---|
| Standard Reserved Instance | Specific instance attributes in a region | Up to 72% | Can change AZ, size (Linux) and network type; can be sold on the RI Marketplace |
| Convertible Reserved Instance | Specific instance attributes, exchangeable | Up to 66% | Exchange for other Convertible RIs of equal or greater value |
| EC2 Instance Savings Plan | $/hour on one instance family in one region | Up to 72% | Any size, OS or tenancy within that family and region |
| Compute Savings Plan | $/hour on EC2, Fargate and Lambda | Up to 66% | Any family, size, region, OS or tenancy |
| Database Savings Plan | $/hour on eligible database services | Up to 35% | Covers services such as Aurora, RDS and DynamoDB; 1-year term |
| SageMaker Savings Plan | $/hour on SageMaker ML usage | Up to 64% | Eligible SageMaker instance usage |
The “up to” figures are best cases from AWS’s own pages. Your actual discount depends on the instance type, region, term and payment option. The EC2 Reserved Instances pricing page also lists average discounts, which are noticeably lower than the maximums, so plan with your own numbers.
A few AWS details catch people out:
- Capacity is a separate question. A zonal RI includes a capacity reservation in one Availability Zone. Regional RIs and Savings Plans do not reserve capacity. If you need guaranteed capacity, AWS suggests pairing a Savings Plan with On-Demand Capacity Reservations.
- Payment options. You can pay All Upfront, Partial Upfront or No Upfront. More upfront usually means a lower rate. Database Savings Plans are no-upfront only.
- Returns are narrow. AWS allows a return of a Savings Plan only if the hourly commitment is $100 or less, it was bought within the past 7 days, and it is still the same calendar month. Otherwise, assume you are locked in.
- Organization sharing. By default, Savings Plan benefits apply across all accounts in an AWS Organization. You can restrict them to the purchasing account if needed.
How Azure handles reservations and savings plans
Microsoft Azure uses the term reservations for its RI-style product and offers a savings plan for compute (plus a newer savings plan for databases). Microsoft’s savings plan overview describes the savings plan as a fixed hourly spend commitment for 1 or 3 years that applies automatically across eligible services and regions, starting with the usage that gets the highest discount. Unused commitment in an hour expires.
Microsoft’s pricing pages state up to 72% savings for Reserved VM Instances and up to 65% for the compute savings plan, each under specific conditions. The compute savings plan covers services such as Virtual Machines, App Service, Azure Functions premium plan, Container Instances, Dedicated Host and Container Apps. It does not cover software, networking or storage charges.
The exit rules differ sharply:
- Savings plans can’t be canceled or refunded, according to Microsoft’s overview.
- Reservations can be exchanged or refunded within limits. Microsoft’s exchange and refund policy caps total canceled commitment at USD 50,000 in a rolling 12-month window per billing profile or enrollment.
- An exchange policy change is scheduled. Microsoft’s documentation says reservations purchased after February 1, 2027, will not be eligible for exchange if the service is covered by savings plans, such as Virtual Machines, App Service and Azure SQL Database. Reservations bought before that date keep one final exchange. Check the policy page before buying, as Microsoft can update these terms.
Azure also lets you trade in eligible reservations for a savings plan, which is useful if your workloads have become less predictable.
How Google Cloud handles committed use discounts
Google Cloud calls its commitments committed use discounts (CUDs). Google’s CUD overview describes 2 main types:
- Resource-based CUDs. You commit to a minimum amount of resources, such as vCPUs, memory or GPUs, in a specific region for 1 or 3 years. Google lists discounts of up to 70% for memory-optimized machine series and up to 55% for others. These are the closest match to Reserved Instances, and Google states they can’t be canceled after purchase.
- Compute flexible CUDs. You commit to a minimum hourly spend on eligible Compute Engine, GKE and Cloud Run usage, applied across projects and regions in the billing account. For many general-purpose series, Google lists 28% for 1 year and 46% for 3 years. These are Google’s Savings Plan equivalent.
If you are choosing between providers in the first place, our AWS vs Azure vs Google Cloud comparison covers the broader trade-offs.
Side-by-side: Reserved Instances vs Savings Plans
| Factor | Reserved Instances (and resource-based CUDs) | Savings Plans (and flexible CUDs) |
|---|---|---|
| Unit of commitment | Specific resource type, family or quantity | Dollars per hour of eligible spend |
| Typical top discount | Slightly higher | Slightly lower |
| Follows architecture changes | Poorly, unless convertible or exchangeable | Well, within the plan’s scope |
| Covers containers and serverless | Usually no | Often yes (for example AWS Fargate and Lambda, Azure Container Apps, Google Cloud Run) |
| Capacity guarantee | Only some types (for example AWS zonal RIs) | No |
| Resale or refund | AWS Standard RIs can be sold; Azure reservations have limited refunds | Very limited or none |
| Best fit | Stable workloads on a known instance type | Steady total spend with changing shapes |
How to size a commitment without overbuying
Overbuying is the most common and most expensive mistake. A commitment is billed every hour whether or not you use it, so unused commitment erases the discount quickly. Use this method.
Step 1: Clean up before you commit
Commit to an efficient footprint, not a wasteful one. Turn off idle resources, right-size oversized instances and schedule dev environments to stop overnight. If you commit first, you lock in the waste for 1 to 3 years. Our FinOps guide covers this cleanup in more depth.
Step 2: Find your baseline, not your average
Pull hourly compute spend for the last 30 to 90 days. Look at the lowest sustained level your usage rarely drops below, not the average or the peak. That floor is your safe commitment zone. Peaks and seasonal spikes should stay on on-demand or spot capacity.
Step 3: Read the provider’s recommendation as a starting point
AWS Cost Explorer, Azure Advisor and Google Cloud’s recommender all suggest a commitment based on recent usage. On AWS you choose a lookback window, such as 7, 30 or 60 days. These tools look backward, so they can overestimate if your recent usage included a temporary spike or a migration in progress.
Step 4: Start at 60% to 80% of the baseline
Many teams commit to part of the baseline first, then add more later. Commitments can be layered, so you don’t need to get it perfect in one purchase. Buying in smaller tranches every quarter also staggers expiry dates, which avoids a single cliff where everything renews at once.
Step 5: Choose term and payment deliberately
A 3-year term gives a deeper discount but assumes your architecture and provider stay the same. If you are considering a migration, a move to containers or even cloud repatriation, the 1-year term is usually safer. Paying upfront lowers the rate but ties up cash.
Step 6: Monitor utilization and coverage monthly
Track 2 numbers: utilization (how much of your commitment you actually use) and coverage (how much of your eligible usage is discounted). Low utilization means you overbought. Low coverage means you have room to buy more.
Which one should you choose?
Use this quick checklist:
- Choose Savings Plans (or flexible CUDs) if you are modernizing, moving toward containers or serverless, changing instance families regularly or running across several regions.
- Choose Reserved Instances (or resource-based CUDs) if a workload has run on the same instance type in the same region for a long time and will keep doing so, such as a database server or licensed application.
- Combine them if you have both kinds of workload. A common pattern is RIs for the most stable systems and a Savings Plan layered on top for the rest.
- Skip commitments for now if your usage is small, new or still changing fast. On-demand plus right-sizing may be the better first move.
If you are running Kubernetes, remember that node pools often change instance types over time, which favors spend-based plans. Our Kubernetes explainer and the guide to how cloud pricing works give useful background, and the glossary defines terms such as on-demand and spot.
Conclusion
Reserved Instances and Savings Plans both cut the cost of steady cloud usage in exchange for a 1- or 3-year promise. RIs can squeeze out a slightly bigger discount when you know exactly what you will run. Savings Plans give up a little of that discount so the commitment follows you as your architecture changes. Whichever you pick, the savings only arrive if you use what you buy, so clean up first, commit to your baseline, buy in layers and check utilization every month.
Sources
- AWS Savings Plans FAQ — Savings Plan types, discounts, terms, payment options, returns and RI equivalence
- Amazon EC2 Reserved Instances pricing — Standard and Convertible RI discounts, zonal capacity reservations, marketplace and exchanges
- Microsoft Learn: What are savings plans? — Azure savings plan mechanics, covered services and no-cancellation policy
- Microsoft Learn: Self-service exchanges and refunds for Azure Reservations — USD 50,000 refund cap and February 1, 2027 exchange policy change
- Azure savings plan for compute pricing — up to 65% savings figure
- Google Cloud: Committed use discounts overview — resource-based and compute flexible CUD types and discount ranges
Frequently asked questions
Are Savings Plans better than Reserved Instances?
Savings Plans are better for most teams whose infrastructure changes, because the discount follows your spend across instance types, regions and some serverless services. Reserved Instances can be better for a single, stable workload where you want the deepest possible discount or, on AWS, a zonal capacity reservation. Many organizations use both: RIs for long-lived, unchanging systems and a Savings Plan for everything else.
Can I cancel a Savings Plan or Reserved Instance?
Usually not. AWS allows a return of a Savings Plan only if the hourly commitment is $100 or less, it was bought in the last 7 days and it is the same calendar month. AWS Standard RIs can be sold on the RI Marketplace. Azure savings plans can't be canceled, while Azure reservations allow refunds up to USD 50,000 in a rolling 12-month window.
How much can I save with Reserved Instances?
AWS lists up to 72% off on-demand for Standard RIs and up to 66% for Convertible RIs. Azure lists up to 72% for Reserved VM Instances. These are best-case figures for specific configurations and 3-year terms. Average savings are lower, so model your own instance types, region, term and payment option before you buy.
What happens if I use less than my Savings Plan commitment?
You still pay the full hourly commitment. Both AWS and Azure measure Savings Plans in dollars per hour, and unused commitment in a given hour is lost, not carried forward. This is why sizing matters: commit to the floor of your usage, not the average or the peak, and keep variable demand on on-demand or spot pricing.
Should I choose a 1-year or 3-year term?
Choose 1 year if you expect to change architecture, migrate workloads or switch providers within 3 years. Choose 3 years only for workloads you are confident will stay put, since the deeper discount disappears if you stop using the capacity. Buying smaller tranches over time lets you mix terms and avoid everything expiring at once.
Do Savings Plans cover Kubernetes and serverless?
Often, yes. AWS Compute Savings Plans cover EC2, Fargate and Lambda, so EKS worker nodes on EC2 or Fargate qualify. Azure's compute savings plan covers services such as Container Apps and Container Instances. Google's compute flexible CUDs cover Compute Engine, GKE and Cloud Run. Check each provider's eligible services list, since coverage varies by service and region.
Does a Savings Plan guarantee capacity?
No. Savings Plans are billing discounts and don't reserve capacity. On AWS, only zonal Reserved Instances include a capacity reservation, and AWS suggests pairing Savings Plans with On-Demand Capacity Reservations when you need guaranteed capacity in a specific Availability Zone. Azure and Google offer separate capacity reservation features as well.
Was this guide useful
No reviews yet. Share your experience and help other readers.