Compare/C3X vs Terraform Cloud Cost Estimation

C3X vs Terraform Cloud Cost Estimation

Terraform Cloud's built-in cost estimation feature — limited service coverage, no offline mode, requires HCP/TFC subscription.

Quick verdict

Terraform Cloud's built-in cost estimation is fine for teams already paying for Team tier ($20/user/month) and only needing basic AWS/Azure/GCP coverage. C3X covers more resources, runs anywhere (including offline), supports OpenTofu and Terragrunt, and is free. For teams not already on TFC Team tier, C3X is a strict upgrade.

Terraform Cloud's cost estimation in context

HashiCorp added cost estimation to Terraform Cloud (now HCP Terraform) as a Team/Business tier feature. After terraform plan runs, TFC computes an estimated monthly cost delta and displays it in the plan output.

The feature has merit but has well-documented limitations:

Where TFC cost estimation wins

Where C3X wins

Feature comparison

FeatureC3XTFC Cost Estimation
Resources supported80+~30 (varies)
Pricing data freshnessLive (API)Updated periodically
CI integrationAny CITFC only
Offline modeYesNo
OpenTofu supportYesNo
Terragrunt supportYesLimited
CloudFormation supportYesNo
Cost recommendationsYesNo
Budget gating in CIYesVia Sentinel (Business tier)
Free tierFull featuresTFC Free has no estimation
Annual cost$0$20/user/month (Team tier)
LicenseApache 2.0Proprietary

Using C3X with Terraform Cloud

If you use TFC for state and plan execution, you can still use C3X as a separate CI step. Common pattern:

# .github/workflows/terraform.yml
jobs:
  terraform:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: c3xdev/c3x-action@v1
      - name: Estimate cost delta
        run: c3x estimate --diff --format=github-comment > c3x.md
      - name: Comment cost on PR
        uses: actions/github-script@v7
        with:
          script: |
            const fs = require('fs');
            github.rest.issues.createComment({
              issue_number: context.issue.number,
              owner: context.repo.owner,
              repo: context.repo.repo,
              body: fs.readFileSync('c3x.md', 'utf8')
            });
      - name: Run Terraform plan via TFC
        uses: hashicorp/tfc-workflows-github/actions/create-run@v1

C3X comments cost delta on the PR. TFC continues to handle state, plan execution, and apply. The two work together without conflict.

When to use which

Use C3X: You want broad resource coverage. You use OpenTofu or Terragrunt. You need offline mode. You're on TFC Free or HCP Free and need cost estimation. You want cost recommendations alongside estimates.

Use TFC's built-in: You're already paying for Team tier and only need basic coverage. You prefer a single-vendor stack. You don't need offline or OpenTofu support.

FAQ

What is Terraform Cloud's built-in cost estimation?

Terraform Cloud (and HCP Terraform) includes a cost estimation feature that runs after terraform plan, showing estimated monthly cost change. It covers a subset of AWS, Azure, and GCP resources. The feature is available on Team and Business tiers of TFC/HCP — not on the free or Standard tiers.

Why use C3X instead of TFC's built-in estimation?

Three main reasons. (1) Service coverage: C3X supports more resources than TFC. (2) Offline mode: TFC requires its SaaS; C3X runs anywhere including air-gapped environments. (3) Cost: TFC cost estimation requires Team ($20/user/month) or Business tier; C3X is free.

Can I use C3X with Terraform Cloud workspaces?

Yes. C3X runs as a separate step in the CI workflow before or after terraform plan. It reads the Terraform configuration directly (no need to access TFC's state). For teams using TFC, this means estimation happens in your CI pipeline rather than via TFC's plan step.

What about OpenTofu?

C3X supports OpenTofu identically to Terraform — same HCL parser, same plan format. For teams that migrated to OpenTofu post-license change, C3X is a natural fit. OpenTofu doesn't have built-in cost estimation, so C3X fills that gap.

Does C3X work with Terragrunt?

Yes. C3X handles Terragrunt's HCL-with-imports configuration. Run c3x estimate at the root or in a specific Terragrunt module. Output is the same as plain Terraform.

Related reading

Try C3X for your stack

Install in 30 seconds. No API key, no SaaS account, no credit card.