Automatically generate and distribute AWS Rightsizing Recommendation reports on a schedule. This tool bridges the gap between AWS Cost Explorer and your engineering teams by delivering actionable CSV reports directly to Email or Slack.
Managing costs across multiple accounts is difficult when recommendations only show Account IDs. This project automates the generation of rightsizing reports, enriches them with Account Names, and sends them to your mailbox and to your Slack channel via SNS using secure Pre-signed S3 URLs.
- Dual-Report Output:
- Detailed Report: Full metadata for deep-dive analysis.
- Summarized Report: High-level overview for quick decision-making.
- Account Name Enrichment: Replaces cryptic Account IDs with friendly names for better readability.
- Secure Distribution: Delivers notifications via SNS (Email/HTTPS) with Pre-signed URLs (valid for 12 hours) to avoid public bucket exposure.
- Automated Schedule: Runs natively on the first Monday of every month via Amazon EventBridge.
The CloudFormation stack deploys a serverless architecture:
- AWS Lambda: The engine that queries Cost Explorer API and generates CSVs.
- Amazon S3: Secure storage for generated reports.
- Amazon EventBridge: Cron-based trigger (1st Monday of the month).
- Amazon SNS: Fan-out notification system for Email and Slack/Webhook endpoints.
- Account: This template must be deployed in the AWS Billing/Management Account (or a delegated administrator account) to access cross-account cost data.
- Service Access: Ensure Cost Explorer is enabled in your AWS console.
- Log into the AWS Management Console of your Billing Account.
- Navigate to CloudFormation > Create Stack.
- Upload the
rightsizing-report.yamltemplate. - Fill in the required Parameters:
- S3 Bucket Name: Unique name for report storage.
- Notification Email: Email address to receive the monthly report links.
- Notification Webhook: HTTPS webhook (Slack/Jira) to receive the monthly report links.
- All other parameters are optional and can keep the default value.
- Click Submit.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.