<aside> 💡 Effort Required: Few days of planning and few minutes in execution to get started.

</aside>

Savings plan is a purely financial instrument that can be used to significantly bring down your AWS costs immediately. They are of two types Compute Savings Plan and EC2 Instance Savings Plan.

In this article, we’ll understand the difference between the two.

Types

  1. On Demand: You spin up an instance and start using it. You pay only for the duration the instance was running. No commitment, no lock-in but no discounts either. Most flexible but zero discounts.
  2. Compute Savings Plan: You commit to spend a minimum dollar amount every month across EC2, Lambda or Fargate. Discounts get automatically applied to your monthly bill. Very flexible, decent savings.
  3. EC2 Instance Savings Plan: You commit to spend a minimum dollar amount every month on on-demand EC2 instances belonging to a specific family and a particular AWS region. This plan gives roughly 6-11%(depending on instance family) more savings as compared to the compute savings plan. Least flexible but maximum savings. See Standardising Instance Families to Reduce Costs to understand how you can do some planning and avoid compute savings plan in favour of EC2 instance savings plan and get better discounts.

Philosophy

AWS can give you better discounts if you commit to use their services for a longer duration (1 year or 3 years). You get locked-in for the duration but pay far lower prices. There are multiple levers of flexibility available. The less flexibility you choose, the more discounts you can get. See below table on comparison between savings plans.

On Demand Compute Savings Plan EC2 Instance Savings Plan
Savings No Savings Some savings Higher savings
Ease of doing NA Very easy Requires planning
Flexibility High Medium Low
Commitment Not required Commit to a minimum dollar usage per month ($100 per month) Commit to using a particular instance type(family) in a particular region for 1 or 3 years.
Max Savings 0% 66% 72%
Applicable Services NA EC2, Lambda, Fargate EC2 Only
Restricted by regions NA No Yes
Restricted by instance family NA No Yes
Restricted by instance size NA No No
Restricted by AZ NA No No
Restricted by OS NA No No

Reserved Instances: These are only recommended for RDS, ElastiCache, OpenSearch service. Not for EC2 as savings plan offer same discounts and offer more flexibility.

Cost Levers

With either savings plan, you can tweak the discounts you can get by using below levers.

  1. Commitment Duration: You can commit for 1 year and 3 years. 1 year gives you lower discounts but flexibility to reduce usage or change to newer instance family after an year. 3 years commitment offers much higher discounts but with longer lock-in duration.
  2. Payment Options: Choose from no upfront payment(minimum discount), partial upfront payment and full upfront payment (maximum discount).

General Tips

  1. On-demand is not always bad.