Terraform remote state on S3, GCS, or Azure Blob costs almost nothing, tiny storage plus a few requests per run. The only real cost is state locking (a DynamoDB table on AWS) and, at scale, request volume. Here is the tiny model.
Add a CircleCI job that runs after terraform plan, prices the plan JSON, and comments the monthly cost on the pull request, failing the build past a budget. Here is how it fits a config.yml workflow and keeps pipelines fast.
Spacelift runs Terraform with policy-as-code and lifecycle hooks, so you can price the plan in a hook and block the run with an OPA policy when it exceeds a budget. Here is how cost estimation fits a Spacelift stack.
env0 manages Terraform environments with approval workflows and policies, so you can price the plan and gate deployments on a budget. Here is how cost estimation fits an env0 template and its policy-as-code guardrails.
Add a stage after terraform plan that prices the plan JSON and reports the monthly cost, with a budget gate that fails the build. Here's the Jenkinsfile, the plan-JSON input, and how it fits declarative pipelines.
Add a step after terraform plan that prices the plan and comments the monthly cost on the pull request, with a budget gate that fails the pipeline. Here's the bitbucket-pipelines.yml and how it fits.
Add a job that runs after terraform plan, prices the plan JSON, and comments the monthly total and diff on the PR, with a budget gate that fails the check. Here's the workflow, the input that keeps it accurate, and how to keep it fast.
OpenTofu emits the same plan JSON as Terraform, so cost estimation works unchanged, run tofu show -json and price it. Here's how to estimate OpenTofu cost locally and in CI, and what stays identical after the fork.
Add a pipeline step after terraform plan that prices the plan and posts it as a PR comment, with a budget gate that fails the build. Here's the YAML, the plan-JSON input, and how it fits branch policies.
Estimating from terraform show -json prices the resolved resources, variables, conditionals, data sources all computed, unlike parsing raw HCL. Here's how to generate it, why it's accurate, and how it fits CI.
Atlantis already plans on every PR, add a post-plan workflow step that estimates cost and comments it, with a budget gate that blocks apply. Reuses the existing plan, works self-hosted and air-gapped.
Encode cost rules, budget thresholds, per-PR deltas, required tags, banned SKUs, as machine-enforced policies in CI against a cost estimate. Here's the policy set worth having and how to roll it out.
Don't estimate a whole monorepo on every PR. Detect changed stacks, estimate only those in a CI matrix, and aggregate. Here's the pattern that keeps CI fast and attributes cost to the right stack.
Add a pre-commit hook that estimates Terraform cost on every commit and blocks over-budget changes. Runs in seconds, works offline, and pairs with a CI gate that can't be skipped.
Terragrunt's module composition breaks naive cost tools. Here's how to estimate a Terragrunt stack by resolving its dependency graph, run it in CI, and gate PRs on a budget, no apply required.
Add a GitLab CI job that estimates Terraform cost on every merge request, posts the number as an MR note, and fails the pipeline over budget. Works on self-hosted and air-gapped GitLab. No apply needed.
Estimate Google Cloud costs from Terraform configurations with sustained-use discounts applied automatically, Committed Use Discounts via usage file, and Spot VMs detected from the resource. No GCP credentials required.
From a single CLI command to PR comments in CI that block over-budget merges, this is the practical guide to Terraform cost estimation. No AWS credentials, no terraform plan, no SaaS account.
Honest comparison of C3X vs Infracost for Terraform cost estimation. Where each tool wins, full feature matrix, and a migration guide for teams switching off Infracost.