Skip to main content

Get started

Infracost enables a shift-left approach for cloud costs by providing cost estimates for Terraform before deployment. Additionally, it can check for FinOps best practices in accordance with the Well-Architected Frameworks of cloud vendors, and your company's required tag keys/values. This not only saves your team money but also streamlines discussions about costs within the engineering workflow rather than it being a post-deployment consideration. Infracost works with AWS, Azure and Google.

1. Install Infracost

Get the latest Infracost release:

brew install infracost

infracost --version # Should show 0.10.38

To upgrade Infracost, run brew update then brew upgrade infracost.

2. Get API key

Register for a free API key, which is used by the CLI to retrieve prices from our Cloud Pricing API, e.g. get prices for instance types.

  • No cloud credentials or secrets are sent to the API.
  • Infracost does not make any changes to your Terraform state or cloud resources.
infracost auth login

The key can be retrieved with infracost configure get api_key.

3. Show cost estimate breakdown

Infracost parses the project locally to determine resource types and quantities needed to calculate costs. The --path flag should point to your Terraform directory.

# You can also: git clone
cd my-terraform-project
# Terraform variables can be set using --terraform-var-file or --terraform-var
infracost breakdown --path .

Example output:Infracost breakdown command


Infracost can also estimate usage-based resources such as AWS S3 or Lambda

4. Add to your CI/CD

Use our integrations to add Infracost to pull requests, it only takes 15 minutes! This provides your team with a safety net as people can understand cloud costs and FinOps best practices upfront, and discuss them as part of your workflow. See our demo video to learn more.

If you run into any issues, please join our community Slack channel, we'll help you very quickly 😄

Infracost pull request comment