In this article, we’ll understand how AWS applies EC2 instance savings plan discounts and how you can implement it in your AWS account.

  1. Identifying instance family
  2. Instance size and how the discounts are applied
  3. Steps to Standardise

Identifying Instance Family

Screenshot 2024-09-13 at 3.42.42 PM.png

Each AWS EC2 instance has an identifier that consists of two parts separated by a period. <instance_family>.<instance_size> . This will help you in planning your EC2 instance savings plan purchases better. Please see the scenarios in below table to understand when the instance families match.

Instance 1 Instance 2 Same Family? Reason
m6g.large m6g.large Yes Both belong to m6g family
m6g.large m6g.2xlarge Yes Instance size (2xlarge) does not change family. You can buy instance savings plan and it will get applied easily.
m6g.large m7g.large No M6 and M7 are different generations.
m6g.large m6i.large No m6g is Graviton, m6i has Intel processor. Different families
m6g.large c6g.large No Different processors

Understanding Instance Size and how the discounts are applied

Each EC2 instance type has a normalised unit value. This value reflects its size relative to a base instance size, usually the smallest instance type in the same family. For example, m6g.medium is the smallest instance in the family m6g. So, it is assigned a normalised unit. This way, m6g.large will be 2 normalised units and m6g.xlarge will be 4 normalised units.

When you buy an EC2 Instance Savings Plan for a specific instance type (e.g., m6g.xlarge), AWS applies the discount across any combination of instances within the same family. If you have more normalised units in your account, the extra units will run on-demand. If you have fewer normalised units in your account than number of units for which the savings plan is bought, you’ll have underutilisation and will still pay for unused capacity (because you committed)

This flexibility allows you to change your EC2 instance sizes and still benefit from the savings plan.

An Example

Lets say we buy below EC2 Instance Savings Plan: