Overview
Compute Savings Plans discount Lambda duration costs (and other compute) when you commit to a steady $/hour spend for 1 or 3 years.1
How it works
- Commit to a minimum compute spend per hour (for example, $0.50/hour).
- Within each hour, matching usage across Lambda, EC2, and Fargate is billed at the discounted rate until the commitment is used; unused commitment does not roll over.2
- Savings Plans are applied to the services with the largest percentage discount first (typically EC2, then Fargate, then Lambda), so EC2 may consume most of the benefit.2
- No code changes are required—Lambda just bills duration at the discounted rate up to your hourly commitment.
Discount range
Exact percentages vary by term and payment option (no upfront, partial, all upfront), but Lambda duration typically sees ~12–17% discounts versus On-Demand when covered by a Compute Savings Plan.1
When to use
✓ You already have steady, cross-service compute spend (EC2, Fargate, Lambda)
✓ You can identify a minimum hourly baseline that’s unlikely to disappear during the term
✓ You’re optimizing a portfolio of workloads, not a single spiky Lambda function
Implementation
- Analyze usage in Cost Explorer
- Review Savings Plans recommendations, focusing on hourly usage patterns
- Start with a commitment at or below your minimum observed hourly compute spend, not the peaks—if you overcommit, you will pay for unused commitment every hour regardless of actual usage.
- Purchase through AWS Console or CLI
aws savingsplans create-savings-plan \
--savings-plan-offering-id <offering-id> \
--commitment 10
Cost Explorer view showing where to find Savings Plans recommendations for compute spend.
Best Practices
- Prefer 1-year terms and conservative commitments if your workloads change frequently
- Revisit commitments when you add or remove large EC2/Fargate workloads
- Monitor Savings Plans utilization and coverage monthly
- Combine with other optimizations (Graviton, right-sizing) before increasing commitments