Infrastructure as code
AWS cost optimization, delivered as Terraform and CloudFormation pull requests.
When your AWS infrastructure is managed as code, fixing waste directly in AWS can create configuration drift. For supported optimizations, CloudBudgie finds the infrastructure code that defines the resource and BudgieBot opens a pull request with the change. Your team reviews, approves, and deploys it through the workflow you already use.
No credit card required
From detected waste to a reviewable pull request
Every proposed change follows four steps. Your team reviews and deploys the changes on its own terms.
What a BudgieBot pull request looks like
Focused changes. Clear explanations. Estimated savings your team can review before deploying.
Illustrative examples. Actual pull requests, file paths, and savings depend on your code and AWS environment.
No state access. No automatic deployment. Your team stays in control.
Generating a pull request is a code change, not a deployment. The IaC pull-request plane works only with your repository. Applying a change directly to AWS is a separate, opt-in CloudBudgie feature that uses only the IAM permissions you grant.
No Terraform state access
BudgieBot edits source files. It does not read or write your Terraform state or state backend.
No apply in the pull-request plane
BudgieBot does not run terraform apply or update CloudFormation stacks. Your pipeline deploys the change after you merge.
Humans approve every change
BudgieBot does not merge pull requests. They follow your branch protection, required reviews, and CI. Nothing is merged automatically.
You choose the repositories
BudgieBot is a GitHub App. It can only see the repositories you install it on.
Supported workflows
Works with
- Terraform
- CloudFormation
- GitHub repositories via the BudgieBot GitHub App
- One-off pull requests for the optimizations listed below
- Continuous Optimization, for policies that support the IaC execution method
Optimizations with a pull-request option
- EC2 rightsizing
- Stopped EC2 instances
- Unassociated Elastic IPs
- Idle load balancers
- EBS rightsizing
- Detached EBS volumes
- RDS rightsizing
- Lambda memory rightsizing
- Lambda Graviton
- ECR lifecycle policies
- S3 incomplete multipart uploads
- Inactive NAT Gateways
- CloudWatch Logs retention
- Redshift underutilized clusters
CloudBudgie shows the pull-request option only where it is supported for that resource.
Limitations
Not every optimization supports infrastructure as code. Here is where the pull-request path stops.
- Some optimizations are recommendation-only or apply directly to AWS. Off-Hours schedules start and stop resources directly and do not open pull requests.
- The resource must be defined in Terraform or CloudFormation in a repository BudgieBot can access. Resources created outside code cannot be fixed with a pull request.
- If more than one repository could own a resource, CloudBudgie asks you to choose the owner before opening a pull request.
- If BudgieBot cannot find a safe, minimal change, it reports “No safe change” instead of opening a pull request.
- Pull requests are opened in GitHub. Other Git hosts are not supported today.
- Savings are estimates. Actual savings depend on your AWS usage and when the change is deployed.
Turn your next AWS savings opportunity into a pull request.
Start free, connect AWS with an IAM role, and install BudgieBot on the repositories you choose. Every plan includes the full product.
No credit card required