Infracost — Cloud Cost Estimates for Infrastructure as Code
See cloud cost breakdowns before you deploy. Infracost integrates with Terraform and CI/CD to show how every change impacts your bill.
What it is
Infracost is a CLI tool that generates cloud cost estimates from Terraform plans. Before deploying any infrastructure change, you can see exactly how it affects your monthly bill. It supports AWS, Azure, and Google Cloud with pricing data for hundreds of resource types. Infracost integrates with CI/CD pipelines to post cost diffs as pull request comments.
Infracost targets DevOps engineers and platform teams who want cost visibility as part of the infrastructure review process, not as an after-the-fact surprise on the cloud bill.
How it saves time or tokens
Cloud cost surprises typically surface weeks after deployment on the monthly invoice. Infracost shifts cost awareness to the planning stage. A developer proposing a change from t3.medium to r5.2xlarge sees the cost impact immediately in the PR comment. This prevents expensive mistakes and enables cost-informed architecture decisions without waiting for the finance team to flag anomalies.
How to use
- Install and authenticate:
brew install infracost
infracost auth login
- Generate a cost breakdown:
cd my-terraform-project
infracost breakdown --path .
- Compare costs between changes:
infracost diff --path . --compare-to infracost-base.json
Example
Infracost output for a Terraform plan:
Project: my-terraform-project
Name Monthly Qty Unit Monthly Cost
aws_instance.web
Instance usage (Linux/UNIX, on-demand, t3.medium) 730 hours $30.37
root_block_device - Storage (gp3) 20 GB $1.60
aws_rds_instance.db
Instance usage (on-demand, db.r5.large) 730 hours $175.20
Storage (gp2) 100 GB $11.50
OVERALL TOTAL $218.67
Related on TokRepo
- AI Tools for DevOps — infrastructure and cloud management tools
- AI Tools for Monitoring — cost monitoring and observability
Common pitfalls
- Infracost estimates are based on list pricing and usage assumptions; actual costs may differ due to reserved instances, savings plans, or usage-based resources
- Some resource types (Lambda invocations, S3 requests) require usage estimates in an Infracost usage file; without them, these costs show as $0
- Free-tier resources still appear with their standard pricing; Infracost does not account for AWS Free Tier eligibility
Frequently Asked Questions
Infracost supports AWS, Azure, and Google Cloud with pricing data for hundreds of resource types. Coverage is most comprehensive for AWS, with Azure and GCP having slightly fewer supported resources.
Infracost maintains a cloud pricing database updated regularly from official cloud provider pricing APIs. The CLI queries the Infracost Cloud API for pricing lookups. A self-hosted pricing API is available for air-gapped environments.
Yes. Infracost integrates with GitHub, GitLab, Azure DevOps, and Bitbucket. In CI/CD, run infracost comment to post a cost diff summary directly on the pull request for reviewers to see.
Yes. Infracost works with both Terraform and OpenTofu. It reads the plan file output, which is compatible between both tools.
Infracost CLI is open source and free for individual use. Infracost Cloud (the SaaS dashboard with team features, governance policies, and cost tracking) has a free tier and paid plans for larger teams.
Citations (3)
- Infracost GitHub— Infracost cloud cost estimates for Terraform
- Infracost Docs— Infracost documentation and CI/CD integration
- Terraform Docs— Terraform infrastructure as code
Related on TokRepo
Discussion
Related Assets
Hugging Face Tokenizers — Fast Text Tokenization for ML Pipelines
Hugging Face Tokenizers is a Rust-powered tokenization library with Python bindings that implements BPE, WordPiece, Unigram, and SentencePiece tokenizers with training and encoding speeds of gigabytes per second, used as the backbone for Transformers model tokenization.
Cleanlab — Find and Fix Label Errors in Any ML Dataset
Cleanlab is a data-centric AI Python library that automatically detects label errors, outliers, and data quality issues in classification and regression datasets, helping improve model accuracy by cleaning training data rather than tuning models.
Hugging Face Datasets — Access and Process ML Datasets at Scale
Hugging Face Datasets is a Python library for efficiently loading, processing, and sharing machine learning datasets with Apache Arrow-backed memory mapping, streaming support, and access to thousands of community datasets on the Hub.