Reserved Instances or Savings Plans: which should you buy?

How much each option lets your usage change

  • Standard Reserved InstanceFixed instance attributes; can be modified
  • Convertible Reserved InstanceExchangeable, but by hand
  • EC2 Instance Savings PlanAny size or OS within one family
  • Compute Savings PlanAny family, Region, Fargate, Lambda
Illustrative: how much room each commitment leaves for your usage to change, from the least flexible Reserved Instance to the most flexible Savings Plan.

The invoice has a line called “EC2 – Other” that keeps growing, someone in finance has asked whether you can “just get a discount”, and AWS offers two ways to say yes. Reserved Instances and Savings Plans both trade a commitment for a lower price. The choice between them is smaller than the vendor pages make it look, and the choice that matters more is when you commit, not what you commit with.

What each one actually is

A Reserved Instance (RI) is a billing discount, not a physical server. AWS describes RIs as “not physical instances, but rather a billing discount applied to the use of On-Demand Instances in your account”, and those instances “must match certain attributes, such as instance type and Region”. You commit to a configuration for one or three years.

A Savings Plan commits you to a different thing. In AWS’s words, you commit “to a consistent usage amount, measured in USD per hour”, instead of specific instance configurations. The term is also one or three years, and you can pay All upfront, Partial upfront or No upfront.

Neither is a purchase of capacity. Both are a promise to AWS that you will keep spending. That promise is the thing to take seriously.

The AWS recommendation, and why it makes sense

AWS’s own Reserved Instance documentation opens with an unusual line for a product page: “We recommend Savings Plans over Reserved Instances.” The reason given is that Savings Plans are “the easiest and most flexible way to save money on your AWS compute costs and offer lower prices (up to 72% off On-Demand pricing), just like Reserved Instances.”

So the headline discount is the same. What differs is how much you have to keep still. With a Compute Savings Plan, AWS says you can “move a workload from c5 to m5, shift your usage from EU (Ireland) to EU (London), or migrate your application from Amazon EC2 to Amazon ECS using Fargate at any time”, and keep the discounted price. An RI doesn’t follow you like that.

Side by side

AWS publishes the comparison itself. This is the condensed version:

Compute Savings Plans EC2 Instance Savings Plans Convertible RIs Standard RIs
Savings over On-Demand Up to 66% Up to 72% Up to 66% Up to 72%
Commitment is $ per hour $ per hour A configuration A configuration
Any instance family Yes No No No
Any instance size Yes Yes Regional RIs only Regional RIs only
Any Region Yes No No No
Applies to Fargate and Lambda Yes No No No
Term 1 or 3 years 1 or 3 years 1 or 3 years 1 or 3 years

Read the pairs. Compute Savings Plans match Convertible RIs on price and beat them on flexibility, with no exchanges to perform. EC2 Instance Savings Plans match Standard RIs on price (the “up to 72%” figure) while still flexing across sizes, operating systems and tenancy within one instance family in one Region.

The percentages are ceilings (“up to”), not what your bill will do. The actual rate depends on instance family, term and payment option.

When Reserved Instances still make sense

There are fewer cases than there used to be, but they are real.

  • You need reserved capacity. AWS says plainly that Savings Plans don’t provide capacity reservations. If you need guaranteed capacity, you can allocate an On-Demand Capacity Reservation, and your Savings Plans will apply to it.
  • You already own RIs. Savings Plans don’t apply to usage already covered by RIs, so existing ones keep earning until they expire. RIs don’t renew automatically; after expiry you pay On-Demand rates for the same instances.
  • A service has no Savings Plan. AWS now lists four plan types: Compute, EC2 Instance, SageMaker AI (up to 64% off) and Database Savings Plans (up to 35% off, covering Aurora, RDS, DynamoDB, ElastiCache and others). Check AWS’s current list for your specific service before assuming either way.

The part that costs real money: you can’t back out

Both products are commitments, and AWS is direct about the exit. Savings Plans “can’t be cancelled during the term”, and for RIs: “After you purchase a Reserved Instance, you cannot cancel your purchase.”

There is one narrow escape hatch for Savings Plans. A plan with an hourly commitment of $100 or less, bought in the last seven days and in the same calendar month, can be returned for a 100% refund of upfront charges. Once the calendar month ends (UTC), the window closes. Treat that as a safety net for typos, not a strategy. (Standard RIs can be modified, and sometimes sold on the Reserved Instance Marketplace, but that is a way to cope with a mistake, not to avoid one.)

The FinOps Foundation puts it neatly: “commitment discounts are not resources. They are similar to coupons.” A commitment only lowers the cost of matching resources that are running. If none are running, you still pay.

Fix the usage first, then commit

  1. 1Remove wasteIdle and unused resources
  2. 2RightsizeMatch size to measured use
  3. 3Commit to the baseSteady usage only
  4. 4Review coverageAdd or hold, don't guess
A sensible order: remove waste and rightsize first, then commit to the steady base that remains, and keep reviewing.

A commitment bought against a bloated estate locks in the bloat for one to three years. The FinOps Foundation says that “in an ideal world, all usage optimization would be done prior to rate optimization actions.” It also warns: “It is important to avoid waiting for technology use to be fully optimized prior to considering rate optimizations.” Both are true. Clear out the obvious waste, then commit to what is left rather than waiting for perfection.

Practical rules of thumb that follow from the documentation:

  1. Commit to the floor, not the average. Because the commitment is a dollar amount per hour, size it to the spend you are certain will continue, and leave the peaks On-Demand.
  2. Start with Compute Savings Plans unless you have a specific reason for a narrower plan. You give up a little discount ceiling for room to move.
  3. Use AWS’s own tooling. AWS Cost Explorer shows recommended commitment levels and lets you track Savings Plans with performance reporting and budget alerts.
  4. Prefer one year while your estate is changing. A three-year term has the higher ceiling, but a migration or a rewrite is exactly when you will not want to be locked in.

Where Auris fits

Working out the steady base of an AWS estate, after waste and rightsizing, is the awkward part, and it is where commitments tend to go wrong. Auris works with certified FinOps practitioners who handle that sequence for a company’s cloud estate, including the commitment decision last. The FinOps page explains how an engagement runs.

The bottom line

Buy Savings Plans by default, usually Compute Savings Plans, because AWS recommends them over Reserved Instances and you keep your freedom to change instances, Regions and services. Keep RIs for what Savings Plans don’t cover, and commit only to the steady spend that remains after you have removed waste, because neither can be cancelled.

Questions

People also ask.

Can I cancel a Savings Plan or Reserved Instance?

Not during the term. AWS says Savings Plans can't be cancelled, and that you cannot cancel a Reserved Instance purchase. The exception is a purchase error: a Savings Plan with an hourly commitment of $100 or less can be returned within seven days, in the same calendar month, for a 100% refund of upfront charges.

Do Savings Plans reserve capacity like a zonal Reserved Instance?

No. AWS states that Savings Plans don't provide capacity reservations. If you need guaranteed capacity, AWS says you can allocate an On-Demand Capacity Reservation and your Savings Plans will apply to it.

Can I use both Savings Plans and Reserved Instances?

Yes, but they don't stack on the same usage. AWS notes that Savings Plans don't apply to usage already covered by Reserved Instances, so existing RIs keep working while new commitments can be Savings Plans.

Should I optimise usage first or buy a commitment first?

The FinOps Foundation says that ideally all usage optimization happens before rate optimization. It also warns against waiting for usage to be fully optimized before considering commitments, so in practice you do the obvious waste removal first and then commit to what remains.

Sources

  1. AWS Savings Plans User Guide — Compute Savings Plans and Reserved Instances
  2. AWS Savings Plans User Guide — Savings Plans types
  3. AWS Savings Plans User Guide — Returning a purchased Savings Plan
  4. AWS — Reserved Instances for Amazon EC2 overview
  5. FinOps Foundation — Rate Optimization

Questions about your own setup?Ask an engineer.