Committing to an AWS Savings Plan is like walking a tightrope in your cost optimization efforts. Every hour that your team uses fewer cloud resources than the contracted amount is an hour of lost value. And if you approach it carefully and end up undercommitting, you’ll wind up paying for the resources your team needs at the highest AWS price tier.
Luckily, automated rightsizing and cloud optimization offer a way out.
Keep reading to find out how you could eliminate the effort around Savings Plans and reduce your cloud bill even more.
What is an AWS Savings Plan?
AWS Savings Plan is a pricing strategy that provides lower costs on regular on-demand instances in exchange for committing to one or three years of consumption. A Plan necessitates a one-year commitment of an aggregate per dollar per hour commitment.
You choose your own hourly spending limit. Up to that commitment, all compute consumption is accessible at a discounted cost. When you surpass your allotted threshold, AWS charges you the standard on-demand fee.
For example, if you continue to run workloads after your Plan has ended and you have not renewed it, the additional consumption will be charged at the usual on-demand pricing.
AWS Savings Plans vs. Reserved Instances
What is the difference between compute Savings Plans and another quite similar product, Reserved Instances?
Companies choose Reserved Instances because they come with substantial discounts compared to pay-as-you-go On-Demand pricing. All it takes is to commit to a specified cloud capacity for a specified period of time. In AWS, it’s one year or three years. In some cases, you also get a guarantee that certain resources will be available to you in a given hosting region.
How do Reserved Instances work?
It’s all just like regular instance purchases. Select an instance type, size, platform, and region – and you’re done! It’s like getting a voucher you can use to get a discount any time during your chosen reservation period, often sharing it among teams.
And the larger your upfront payment, the larger the discount.
How much can you save with Reserved Instances?
According to AWS, the EC2 Reserved Instances offer discounts of up to 75% compared to On-Demand pricing.
But there’s a catch. A Reserved Instance operates on a “use it or lose it” basis. Every hour that your instance goes unused is an hour lost (together with any financial benefits). To make the most of your Reserved Instance, you need to maximize your use of it. This means that you need to know exactly what your team will need in advance.
Reserving capacity in advance to get the instances you use all the time at a discount seems like a smart move. After all, you’ll keep on using these cloud resources. But it comes at a price many teams aren’t aware of.
Here’s what you risk with AWS Reserved Instances
1. You will pay a steep price for changing requirements
When you commit to given resources or levels of usage, you’re basically assuming that your requirements aren’t going to change while the contract is running.
But in the cloud world, a year of commitment is an eternity. Not even tech giants with entire departments dedicated to cost optimization are capable of making accurate forecasts.
Take Pinterest as an example. During one holiday season, its users spent so much time on the platform that the company’s cloud bill went flying over the initial estimates. At that point, Pinterest had already committed to paying $170 million to AWS. And then it had to get some extra capacity and ended up spending $20 million more than forecasted.
2. You will get locked in with AWS
By entering into this type of contract with AWS, you’re running the risk of vendor lock-in. This means that you’ll become dependent on AWS for one or three years. Using the products and services of another provider won’t make any sense when you’ve already paid for services upfront. It would also generate substantial switching costs.
But what if AWS doesn’t have a solution for a challenge your team is going to face in 10 months from the moment you sign the contract?
3. You will lose all flexibility
Your requirements might change in the future. When was the last time you had to deal with a requirement that stayed static for a year or two?
When facing a new challenge, your team might have to commit to even more or get stuck with unused capacity that you’ve already paid for. Either way, you’re on the losing side. You’ll have no flexibility of scaling or the ability to configure multi-region/zone distribution easily.
4. Setting up AWS Reserved Instances is super difficult
Selecting the optimal Reserved Instance that will meet your application’s workload needs is very complicated, to say the least. Keeping pace with the latest AWS offerings and choosing from nearly 400 EC2 instance types is already a challenge. Add to it the need to analyze your application’s needs and workload patterns.
Manual methods are time-consuming and imprecise, making the entire endeavor quite risky.
Using solutions for cloud bill analysis to determine your Reserved Instances or compute Savings Plans requirements is a bad idea. The insights they provide might lead you to reserving capacity based on the instance you’re using now, even if they’re the wrong type and size.
When you reserve the wrong instances, you’ll end up overprovisioning your application and wasting a lot of money in the long run.
3 types of AWS Savings Plan
1. EC2 Instance Savings Plan
If you’re planning to use Amazon Elastic Compute Cloud (EC2) instances, the EC2 Instance Savings Plan offers some pretty good price reductions (the same as Standard Reserved Instances).
The benefit is that this plan can be changed in terms of size, operating system, and tenancy. You can pay for a dedicated tenant if you have unique licensing, security, and performance needs.
An EC2 Instance Savings Plan also allows you to change the size and operating system of your instance, while Reserved Instances forbid any meddling of this kind.
However, EC2 Instance Savings Plans are only available inside a specific instance family in a given area. For example, you can switch from a machine running Windows to the same type and size, only running Linux. But you won’t be able to transition between instance families.
2. Amazon SageMaker Savings Plans
These instances include:
- SageMaker Studio Note,
- Data Wrangler,
- On-Demand Notebook,
- Batch Transform,
- Real-time Inference in Amazon SageMaker.
SageMaker Savings Plans can save you up to 64% in the best-case scenario. But note that they’re relatively less popular than the other two savings plans covered in this section.
3. Compute Savings Plans
AWS also offers Compute Savings Plans, which provide approximately the same discount amount (66% versus 72%) but with fewer limitations. The AWS Compute Savings Plans include options for instance family, location, operating system, tenancy, and even the individual compute service.
For example, you can move your discount from an EC2 m2.xlarge instance running Windows in the US East region to an AWS Fargate instance in the US West.
Compute Savings Plans offer users a number of alternatives for how to use the compute time, so you can take on more tasks and apply your original savings to them as well. Another advantage of Compute Savings Plans is that they open the door to avoiding cloud waste even if you acquire more capacity than you need for a certain project.
The Catch-22 of AWS Savings Plan
It doesn’t matter if you pick Compute Savings Plans or regular EC2 instance Savings Plans. You need to understand the tricky nature of Savings Plans, you need to know how they work.
You buy a Savings Plan based on hourly commitment. AWS uses the Cost Explorer to automatically calculate how that commitment will look like as a monthly charge on your AWS bill.
Here’s an example:
Your On-Demand monthly bill for one EC2 instance is $2,000. Let’s say that the Savings Plan combination of term and payment options gives you 30% savings. Then the recommended commitment will be c. $1.92 per hour – or $1,400 per month.
Problems begin when the hourly resource usage of the specific EC2 machine families you’re using starts to fluctuate.
If you commit to more resources than you need, every hour your teams use less than the committed level is a waste of some of the value you paid for. If you under-commit to a Savings Plan and constantly go over it, you’ll end up paying for extra resources in the highest pricing tier, On-Demand.
When using the Savings Plan, you still get a discount on the cost of whatever EC2 instances your teams provisioned. If you over-provision an EC2 instance, you won’t be taking full advantage of the Savings Plan discount program.
And unlike Reserved Instances, you can’t resell the capacity purchased via Savings Plans in the AWS Marketplace. That’s why it’s smart to buy Savings Plans incrementally. This helps to avoid over-committing to more resources than your company gets to use each month.
I shared some more insights about these two AWS offers in this article: Do AWS Reserved Instances and Savings Plans really reduce costs?
To get an EC2 instance Savings Plan, you need to forecast demand
AWS compute Savings Plans are by no means easier to manage than Reserved Instances. To reap the full benefits of them, you need the same skillset and toolkit for forecasting your AWS costs.
Savings Plans are a great option for accounts where you’re able to predict a minimum amount of usage for the entire duration of the commitment period (one or three years). If you’re dealing with an application that has an unpredictable baseline, it’s a good practice to start by gathering usage data and then gradually committing to Savings Plans.
The above might sound straightforward, but imagine doing that at the scale of the entire enterprise.
Large organizations may easily end up investing a lot of time and effort into the planning and procurement of Savings Plans:
- Multiple project or application teams need to provide an estimate of how many compute resources they will require in the upcoming period.
- DevOps and/or FinOps teams then need to review these plans and confirm that the planned projects actually require the requested resources.
- Finally, the finance team needs to go over the specific solutions like Savings Plans and make sure that the reserved capacity matches the requirements (and won’t result in over- or under-committing).
Much of the above requires going over separate spreadsheets, reviewing historical cloud usage, and carrying out complex forecasting of the expected compute capacity needs.
If you’re running on an Savings Plan right now, you’ve probably done most or all of these tasks.
Is there a way to save up even when you’ve already committed to a certain level of resource usage? There is, and it starts with rightsizing.
AWS Savings Plans alone won’t optimize your cloud bill
Savings Plans can help to reduce your AWS bill, but you’re still the one in charge of infrastructure optimization.
That’s why rightsizing is such a critical initiative. And if you’re running a large cloud environment, you need a solution that automates rightsizing tasks for you.
Tracking down which resources are running, in which families, and which teams own them are all time-consuming tasks. Trying to make sense of all the 400 EC2 instances AWS offers (together with their pricing schemes) is no small feat. It might take you days or weeks to analyze your inventory and utilization to learn which instances can be downgraded.
An AI-based cloud cost optimization solution like CAST AI can quickly identify underutilized pieces of your infrastructure and downgrade or terminate assets without you having to lift a finger.
Using Savings Plans with Amazon EKS? There’s a way to cut more of your bill
This won’t get you out of your contract, but it’s the #1 option to get more out of your Savings Plan if you’re running EKS clusters.
You can get a free Savings Report to see how much you could potentially save as well as actionable suggestions to do so.
And if you want to free your team to focus on other tasks than cost optimization, there’s also the automated version. The tool will keep on optimizing your setup for optimal cost and performance automatically and you will get more out of your savings plan.
AWS Savings Plans are a flexible pricing model offered by Amazon Web Services that provides significant discounts on AWS compute usage in exchange for a commitment to consistent usage for a term of 1 or 3 years.
Once you commit to a plan, your price will stay the same through the plan term. You can pay for your commitment using the All Upfront, Partial Upfront, or No Upfront payment options.
Savings Plans provide discounts way lower than On-Demand prices in return for a promise to use a certain amount of compute power (measured per hour) for one or three years. If you expect to use cloud resources up to a certain level, you can consider getting a Savings Plan to reduce your cloud costs. However, you will still lock yourself into a commitment with the cloud provider, which might become a problem down the line.
Savings Plans work by you committing to a specific amount of compute usage, measured in dollars per hour, for a 1 or 3 year term. AWS then applies the highest possible discount to your compute usage, first consuming any usage covered by Savings Plans, then any on-demand usage.
Compute Savings Plans provide discounted pricing for usage across Amazon EC2, AWS Lambda, and AWS Fargate. The EC2 Instance Savings Plans apply to EC2 usage, and Amazon SageMaker Savings Plans apply to Amazon SageMaker usage.
Reserved Instances provide discounts for specific instance types in specific AWS regions, while Savings Plans provide more flexibility, offering discounts across any instance type, region, or AWS compute services like Lambda and Fargate, depending on the type of Savings Plan.
You can choose from three different payment options: No Upfront, Partial Upfront, or All Upfront. Discounted prices are only available with the All Upfront payment option. After signing up for a Savings Plan, you can view the discount offered by your active plan either on the Pricing page or using APIs/CLI.
You can run AWS Savings Plans for one or three years.
AWS Savings Plans commitments are non-cancellable and cannot be modified once purchased. However, the commitment amount can be increased at any time by purchasing additional Savings Plans.