Azure Savings Plans vs Reserved Instances
Microsoft added Savings Plans for compute, an offering that AWS pioneered in 2019. Savings Plans are a novel way within Azure to reduce the rates you pay for various compute-based services. They will augment and, in our opinion, eventually replace many of the Reserved Instances we have been using in the past years.
In the following thousand+ words, we will help you understand what the new Savings Plans bring, how you can benefit from them and where you need to be on the lookout to prevent bad awakenings.
What is an Azure Savings Plan?
Summarising Microsoft's Release Statement, Azure Savings Plans for compute are the next generation of Reserved Instances. You commit to paying an amount of money on an hourly basis for the next 1 or 3 years for the compute services covered by the Azure Savings Plan.
It does not matter where these services sit. One single Azure Savings Plan for compute can span across all your Subscriptions and will cover the following services in all Azure Regions:
Azure Virtual Machines
Azure App Services (Premium v3 only)
Azure Functions premium plan
Azure Container Instances
Azure Dedicated Host
Savings Plans for compute services are much more flexible than Azure Reserved Instances, making them easier to adopt and removing the “mini-game” of exchanging reservations as you use different VM series.
What is an Azure reservation or Reserved Instance?
An Azure reservation or Reserved Instance is a "traditional" way to reduce the costs of Azure compute-based services. By committing to pay a certain amount on an hourly basis for a period of 1 or 3 years, you can receive a discounted rate for the compute services covered by the reservation compared to pay-as-you-go.
These services include Azure Virtual Machines, Azure App Services (Premium v3 only), Azure Functions premium plan, Azure Container Instances, and Azure Dedicated Host, and can span across all your subscriptions and regions.
Should I take this new offer seriously?
We think you should.
Microsoft is positioning the Savings Plan for compute very firmly: you can (for a while) easily convert existing reservations to a plan, but once in, the only way out is through. Azure Savings Plans cannot be exchanged, cancelled, or sold.
The good news is that Microsoft gives you a year to familiarise yourself with their new offer.
Why one year?
Because in 2024, any new Reserved Instances you buy will no longer be convertible. Starting January 1st, the Instance Series (e.g. Dds_v5) you chose with your reservation becomes final. Instance Size Flexibility within the Instance Series will still exist, but you will no longer be able to exchange a reservation for another Instance Series or Region.
So, does this end Reserved Instances?
We do not think so.
While Savings Plans offer convenience, they save you less on compute costs than Reserved Instances on most VM Series. If you know that for the next three years, a significant chunk of your IT will be running on a given Series, Reserved Instances offer you more considerable savings.
However, with vCPU performance being unequal across VM generations, we highly recommend modernising workloads before reserving them.
In summary, we believe that during the next 2-3 years, Savings Plans will assume a dominant position, with Reserved Instances being used for static, well-defined workloads.
Can you mix Savings Plans with Reserved Instances?
We think you can.
Reading all the currently available Savings Plan documentation, we did not find any statement to this effect, so take this with a grain of salt. We are not Microsoft, and we may be wrong.
Savings Plans apply themselves to resources for which you pay the Pay-as-you-Go rate. This happens up to 48 hours after the charges are communicated to Azure's billing system. Since a reservation immediately sets its instances' rate to zero, we think Savings Plans will not consider reserved resources.
Order of priority:
This also means that a 1-year reservation will be used for an eligible resource, even if its rebate is lower than that of a concurrent 3-year Savings Plan, which is fine since both Reserved Instances and Saving Plans are use-it-or-lose-it, and the odds of a Savings Plan finding eligible resources is much higher than that of a reservation.
When are Savings Plans the better choice?
They are a better choice if you would be paying the Pay-as-you-go rates instead.
Using Savings Plans allows you to “swim with the stream” and achieve significant savings with far lower overhead than before when you had to micro-manage Reserved Instances to fit your ever-changing IT workloads in the cloud.
When are Reserved Instances the better choice?
Microsoft writes that rebates from Savings Plans can vary by region and VM Series. We can confirm they indeed do:
West Europe rebates are significantly lower than, for example, those in North Europe or Switzerland North. Here’s an example in Azure’s Pricing Calculator.
Older generations of VMs have a significantly lower rebate than current generations. Here is another example in Azure’s Pricing Calculator.
If you have chosen West Europe as your primary Azure Region, you may have to use more Reserved Instances than you want to. The same is true if, for whatever good reason, you need to run workloads on older VM Series like a Dv2 or Dv3 – no matter the region.
Given that a Savings Plan feels much like a Microsoft Azure Consumption Commitment (MACC) / Commitment to Consume (CtC):
Both are final,
Both cannot be cancelled,
Both will not be refunded,
Both are use-it-or-lose-it,
Both give you preferential rates in Azure.
We recommend that when you contemplate committing to a significant Savings Plan, it’s a good idea to discuss with Microsoft a MACC or a CtC, especially since that MACC or CtC may give you a rebate you have to factor into the Savings Plan if you are shooting for close to 100% coverage and utilisation.
Savings Plans are far more flexible and remove quite some pains associated with Reserved Instances. Their downside is that Microsoft is becoming (even) more prescriptive with their introduction: not only are you penalised for running older systems, but the choice of your primary Azure Region may turn out to be… wrong.
Combined with the stated plan of locking down Reserved Instances even more than AWS Standard Reservations are (when before they were more flexible than AWS Convertible Reservations), we do not find this to be an entirely fair deal.
Sure, many customers will benefit from the easier-to-achieve savings. But the low rebates in the principal European Region leave a very sour taste in our mouths.
What to do?
For now, we recommend sticking with your Reserved Instances. Start using Savings Plans to benefit from reduced rates on systems that were too likely to change for bringing them under reservations or that could not be reserved so far.
Since you can always buy another Savings Plan but never reduce or cancel an existing one, we recommend starting small. If your hourly compute consumption (after reservations) lies between $300 and $500, it’s perfectly safe to book a savings plan for $200. If you are not confident that these workloads will remain in Azure for the long haul, start with a 1-year Savings Plan: a 20% rebate is still better than the PAYG rate.
Goals (KPIs) to aim for are:
Rate reduction coverage of up to 90% (number of vCPUs covered by Reserved Instances and Savings Plans).
Rate reduction utilization of 90% or more (utilization of Reserved Instances and Savings Plans).
If you are only starting with commitments, we recommend you plan to achieve these targets in iterations, starting with smaller but feasible target percentages.
Ask an expert
As always with Microsoft, the actual problem sits in the details. Do not let it bite you. Let us help you.