0
0
AwsHow-ToBeginner · 4 min read

How to Use AWS Savings Plans to Reduce Costs

To use AWS Savings Plans, you purchase a commitment to a consistent amount of compute usage (measured in $/hour) for 1 or 3 years. AWS then automatically applies discounted rates to your matching usage, reducing your costs without changing your resources or usage patterns.
📐

Syntax

The main steps to use AWS Savings Plans are:

  • Choose a plan type: Compute Savings Plans or EC2 Instance Savings Plans.
  • Select commitment: Specify the hourly spend commitment and term length (1 or 3 years).
  • Purchase the plan: Use AWS Management Console, CLI, or SDK to buy the plan.
  • Automatic discounts: AWS applies discounts to matching usage automatically.
bash
aws savingsplans purchase-savings-plan --savings-plan-offering-id <offering-id> --commitment <amount> --term <term> --payment-option <option>
💻

Example

This example shows how to purchase a Compute Savings Plan using AWS CLI with a 1-year term, all upfront payment, and a commitment of $10 per hour.

bash
aws savingsplans purchase-savings-plan \
  --savings-plan-offering-id "abcdef12-3456-7890-abcd-ef1234567890" \
  --commitment 10 \
  --term "ONE_YEAR" \
  --payment-option "ALL_UPFRONT"
Output
{ "savingsPlanId": "sp-0a1b2c3d4e5f6g7h8", "savingsPlanArn": "arn:aws:savingsplans:region:account-id:savingsplan/sp-0a1b2c3d4e5f6g7h8", "state": "active" }
⚠️

Common Pitfalls

  • Choosing wrong plan type: Compute Savings Plans cover any compute usage, while EC2 Instance Savings Plans apply only to specific instance families.
  • Underestimating commitment: Committing too low means you miss out on savings for extra usage.
  • Not reviewing usage: Savings Plans apply automatically, but you should monitor usage to maximize savings.
  • Ignoring payment options: All upfront payment saves more than partial or no upfront.
bash
aws savingsplans purchase-savings-plan --savings-plan-offering-id "wrong-id" --commitment 5 --term "ONE_YEAR" --payment-option "NO_UPFRONT"

# Correct usage example:
aws savingsplans purchase-savings-plan --savings-plan-offering-id "correct-id" --commitment 10 --term "THREE_YEARS" --payment-option "ALL_UPFRONT"
📊

Quick Reference

TermPayment OptionDescription
ONE_YEARALL_UPFRONTPay full amount upfront for 1 year, highest discount
ONE_YEARPARTIAL_UPFRONTPay part upfront, rest monthly for 1 year
ONE_YEARNO_UPFRONTPay monthly for 1 year, lower discount
THREE_YEARSALL_UPFRONTPay full upfront for 3 years, highest discount
THREE_YEARSPARTIAL_UPFRONTPay part upfront, rest monthly for 3 years
THREE_YEARSNO_UPFRONTPay monthly for 3 years, lower discount

Key Takeaways

AWS Savings Plans reduce compute costs by committing to consistent hourly spend for 1 or 3 years.
Choose between Compute Savings Plans (flexible) and EC2 Instance Savings Plans (specific instances).
Purchase plans via AWS Console, CLI, or SDK with your chosen term and payment option.
AWS automatically applies discounts to matching usage without changing your resources.
Monitor your usage regularly to ensure your commitment matches your needs for maximum savings.