4 open source tools compared. Sorted by stars — scroll down for our analysis.
| Tool | Stars | Velocity | Language | License | Score |
|---|---|---|---|---|---|
terraform Terraform enables you to safely and predictably create, change, and improve infrastructure. It is a source-available tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned. | 48.0k | — | Go | — | 87 |
OpenTofu Open Terraform fork for declarative cloud infra | 28.2k | +66/wk | Go | Mozilla Public License 2.0 | 76 |
Pulumi Infrastructure as Code in any programming language | 24.9k | +45/wk | Go | Apache License 2.0 | 79 |
| 3.8k | — | Go | — | 49 |
Terraform is the infrastructure-as-code tool that defined the category — 4,800+ providers, the largest IaC talent pool, and HCL configs that every DevOps engineer can read. Then HashiCorp switched from MPL to BSL, and the open-source community responded with OpenTofu. OpenTofu is the Linux Foundation fork — drop-in compatible with Terraform ≤1.5, MPL-licensed, growing 300% annually, and now a CNCF Sandbox project. Pulumi lets you write IaC in TypeScript, Python, or Go instead of HCL but has a smaller provider ecosystem (150 vs 4,800). Use Terraform if your team already knows it and you're on Terraform Cloud. Use OpenTofu for new projects where you want the same workflow without BSL restrictions. The catch: BSL means you can't build competing commercial services on Terraform. HashiCorp (now IBM) is raising Terraform Cloud prices ~18% annually. OpenTofu added features Terraform doesn't have (state encryption), but tutorials and Stack Overflow answers still reference Terraform. The talent pool is shared, but the ecosystem is splitting.
OpenTofu is Terraform without HashiCorp's license anxiety. A community fork created after Terraform went BSL, backed by every major cloud provider and the Linux Foundation. Same HCL syntax, same providers, same workflow — but genuinely open source. If you're using Terraform and your legal team is nervous about the BSL license, OpenTofu is the migration path. Terraform is still the market leader with more documentation and community answers. Pulumi uses real programming languages instead of HCL. CDK for Terraform (cdktf) bridges the gap. Crossplane is Kubernetes-native IaC. Best for teams already on Terraform who want license certainty. The migration is nearly painless — rename some CLI commands and you're done. The catch: OpenTofu forked at Terraform 1.6, so it's playing catch-up on newer features. Some providers may have edge-case compatibility issues. The state encryption feature OpenTofu added is genuinely better than Terraform, but the ecosystem of modules and tutorials still references Terraform. You're betting on the fork outlasting the original.
Infrastructure as Code in actual programming languages, not YAML cosplaying as code. Pulumi lets you define cloud infrastructure in TypeScript, Python, Go, Java, or C# — with loops, conditionals, functions, and real package management. If HCL makes you want to scream, this is your escape. Terraform is the market leader with 32%+ share and the largest provider ecosystem. OpenTofu is the community fork after HashiCorp's license change. AWS CDK is Amazon-specific. Crossplane is Kubernetes-native. Pulumi supports 180+ cloud providers, and the gap with Terraform's 200+ is closing fast. The 2026 release cut deployment times by 60% for large infrastructures. You get actual IDE autocomplete, type checking, and unit tests for your infrastructure — things HCL can't offer. The catch: Pulumi's state management defaults to their cloud service (free tier available). Self-managing state is possible but adds operational burden. The community is smaller than Terraform's, meaning fewer blog posts and Stack Overflow answers when you're stuck. And if your team already knows HCL, the migration cost is real.