AWS Savings Plans: What you need to knowErik Carlin, Co-Founder and Chief Product Officer
AWS has officially launched a new feature called Savings Plans. We've taken some time to digest, use, and analyze the new feature. As a company specializing in cloud economics and committed to helping you save money, here's our initial take and what you need to know.
Savings Plans are basically a simplified Reserved Instance (RI) commit discount structure. RIs have been around for over 10 years now. While they've evolved over time, they are still complex to plan for and require a lot of on-going management to get right (the vast majority of AWS users have sub-optimized RI portfolios). With this release, AWS is effectively removing that management burden (and reducing the friction of making monetary commitments to AWS).
You can think of a Savings Plan like a combination AWS discount / gift card. You load up the card and when you go shopping at AWS, they automatically apply the amount on the card to whatever things you purchase that are most "on sale". After the card is exhausted, everything else is list price.
The big shift with Savings Plans is the unit of commitment. With RIs, you make instance-specific commitments (e.g. c5.xlarge running Linux with shared tenancy in the us-west-2 region for 1 year), which can be challenging to plan for and manage. With Savings Plans you instead make an aggregate hourly dollar commitment (e.g. $9.57/hr for 3 years), and AWS does the rest.
There are initially two Savings Plans to choose from:
EC2 Instance Savings Plan
- EC2 instances only
- Same discount rates as Standard RIs (i.e. ~40% for a Linux 1 year and ~60% for a Linux 3 year commitment)
- Constrained by region and EC2 instance family (e.g. c5)
- Available in 1 or 3 year commitments that are non-modifiable or cancelable
For example, you might make a $1.00/hr commitment for m5 in us-east-2 for 1 year (with this plan, you specify instance family and region in addition to an hourly dollar commit and term). Then, whether you run five m5.2xlarge instances with Amazon Linux or two m5.4xlarge Windows instances or one m5.12xlarge instance with Windows SQL Server Standard on dedicated tenancy, the Savings Plan commit dollars automatically apply based on the Standard RI discount rates for each instance size, operating system, and tenancy combination in us-east-2.
For those familiar with instance-size flexibility (ISF), you can think of the EC2 Instance Savings Plan like "super ISF." Because licensed operating systems have non-linear price scaling, RIs are size-flexible only for regional RIs with a non-licensed Linux platform on shared tenancy. Since Savings Plans are dollar vs. instance based, they can float across operating system and tenancy in addition to instance size.
As such, they are more flexible than Standard RIs while still offering the same discount.
Compute Savings Plan
- Spans EC2 instances and Fargate
- Same discount rates as Convertible RIs (i.e. ~30% for a Linux 1 year and ~50% for a Linux 3 year commitment)
- Spans regions
- Available in 1 or 3 year commitments that are non-modifiable or cancelable
This Savings Plan is a big step forward! There are 2 very important aspects to understand:
First, in a world where things are increasingly moving to containers and microservices, the Compute Savings Plan allows you to receive a discount while maintaining compute platform optionality. Are you on EC2 now but thinking about moving to ECS with Fargate (Fargate for EKS is also coming)? No problem, you can commit with this Savings Plan, get a discount now, and have that discount automatically transfer to Fargate if and when you move! Note also that there previously hasn't been a way to get a commit discount on Fargate, so this is the first time that's available. Fargate discounts in us-east-1 range from 20% (1 year No Upfront) to 52% (3 year All Upfront).
Second, the Compute Savings Plan spans regions. Because everything in AWS is priced in USD, you can now make one aggregate hourly dollar based commitment that will apply to all EC2 and Fargate usage anywhere in the world (with the exception of China)! This obviously gives you the option value to shift workloads between regions, but is also helpful for making commitments to smaller regional footprints. Often customers have the bulk of their spend in one or two primary regions with smaller deployments in other regions to get closer to end-users. Businesses are generally less likely to make commitments in those regions because there just isn't enough growth or confidence as the scale is small. Now, the spend in those regions can be aggregated, along with larger scale regions, to de-risk the commitment.
Given all this, we believe the Compute Savings Plan will be the most popular choice for the majority of customers.
Here are a few other important aspects of Savings Plans:
- The hourly commitment you make is in "post-discount" dollars. This is a bit tricky because each matching instance has a slightly different discount so you don't know how much of the Savings Plans will actually be consumed as they are applied. Going back to the AWS discount / gift card analogy, how much post-sale dollars do you load on the card when everything you are shopping for has a different sale price? While AWS is making it easier to save, this will likely cause people to be conservative in their commitments.
- AWS applies the post-discount dollars to instances with the highest discount first. This means you will always get the greatest discount for the dollars you commit, even if it is difficult to know the right amount to commit.
- As with RIs, you'll still likely purchase Savings Plans over time as your instance usage changes. For example, if your EC2 and Fargate use is growing, you might buy $1.20/hr for 1 year today, another $2.50/hr for 1 year next month, another $3.00/hr for 3 years the month after that, etc. So you'll end up with different Savings Plans with different overlapping time periods and expiration dates. This new paradigm is not necessarily any worse than what you may experience today, but the act of estimating the right level of commitment to make on any given month and then keeping track of those cumulative commitments over time will still require management.
- There is no upgrade from RIs to Savings Plans. You'll need to wait until your existing RIs expire before purchasing Savings Plans as a replacement (there are a few reasons RIs may still make sense - see Conclusion below for more detail). We suspect AWS' reasoning for this is financial. There is so much sub-optimization in current RI portfolios that AWS would take a massive revenue hit if they made an upgrade path or upgraded everyone automatically. AWS has certainly proven they are playing for the long game, but there is a practical balance.
- Just as with RIs, you can purchase Savings Plans in All, Partial, and No Upfront options. Pre-paying increases your discount slightly.
- Savings Plans are available for purchase in both the AWS Console (in Cost Explorer) and via API.
- Savings Plans are currently for EC2 and Fargate only, but you have to believe AWS will also release Database Savings Plans, Storage Savings Plans, and more over time. As with RIs, the EC2 Compute team is leading the way and other AWS service teams will likely follow.
Here's an at-a-glance summary comparing RIs and Savings Plans:
Savings Plans make it easier to save with less ongoing effort. They are simpler and more flexible than Google Commited Use Discounts, are way ahead of Azure RIs (which were already inferior to AWS RIs), and should be part of almost any cloud savings strategy. Should everyone transition from RIs to Savings Plans? There are still a few solid reasons why you may want to consider RIs or a blend of RIs and Savings Plans:
- Convertible RIs require ongoing work to manage, but offer more control than Savings Plans. For example, you can upgrade from 1 to 3 year, transition from No Upfront to Partial Upfront, exchange when prices drop, upgrade and squash existing RIs while controlling your commitment duration, etc. As with most things, when you opt for simplicity, you give up control. Convertible RIs are more work but may be worth the effort, at least for a portion of your spend coverage.
- To cover temporary, near term usage, you can find shorter term (e.g. 3 month) Standard RIs on the RI Marketplace. Standard RIs are also still the only commitment you make that you are able to transfer by selling on the RI Marketplace (once you make a Savings Plan commitment, you are stuck with it). Of course, this is predicated on the RI Marketplace having liquidity, so it will be interesting to see how that changes now that Savings Plans are available.
At ProsperOps, we're committed to helping our customers conquer cloud economics and will use whatever tools are available to best accomplish that.
We believe the best savings outcomes will be achieved with a blend of Convertible RIs and Savings Plans. Customers get the broader multi-region and Fargate-flexible benefits of Savings Plans while achieving higher coverage from the additional term control of Convertible RIs. Achieving this however requires real-time automation of Convertible RI management (this is part of the ProsperOps platform). If you're looking instead to optimize for simplicity, you are best to stick with Savings Plans.
Bottom line - Savings Plans will help you save more, which is a good thing! We'll be adding support for Savings Plans to our platform, and look forward to sharing updates in future posts.