AWS rolled out Savings Plans in 2019, and it is truly transformative — it removes a lot of feelings of being locked in by providing greater flexibility, at similar level of discounts most of the time.
So what are Savings Plans?
A Savings Plan is a commitment to spend some minimum amount per hour in exchange for a discount.
Can I have a SP example?
Sure, for example, in the screenshot below, I’m committing to spend $3.081/hour on an instance in the r4 family. This is the discounted pricing, with the on-demand pricing being much higher at possibly ~$4.40/hour.
If you are examining the Cost and Usage Report, there will be lines of this (and Savings Plan Negation, for actual usage) every hour/day, depending on your CUR output settings:
What are Reserved Instances?
A Reserved Instance is an amount of instance that you plan to use in a month that is yours to use for the term of your reservation, at a discount.
It may seem different, but the idea behind works almost entirely the same, giving us discounts, and additionally for RI we get some safety of mind that we have reserved those servers and AWS have to provide us those instances when we need them.
In terms of billing, RIs are charged on day 1 of the month, for the entire month, and for everyday it is a $0 amount line item, as illustrated in the extract below:
Advantages of Savings Plans over Reserved Instances
- Regional Flexibility — Compute SPs can be applied to any region
- Service Flexibility — Compute SPs can be shared amongst all compute services EC2, EKS, Fargate, Lambda etc
- Best of all, EC2 Savings Plan is stackable with EDP!
Advantages of Reserved Instances over Savings Plans
- Standard RIs can be sold in marketplace
- RIs can be purchased for RDS, Redshift, Elasticache
- Capacity reservations can be made with Zonal RIs
- For SUSE EC2 instances, much higher discounts are available via RIs vs. SPs
for EC2, just use EC2 Savings Plan;
for RDS, Redshift and Elasticache, use RI!