Terraform alternatives, ranked two licenses later

OpenTofu, Pulumi, CDK and clicking around the console, ranked for infrastructure-as-code after the BSL era settled.

The bench2 min readDelivery

Ranked scoreboard of infrastructure-as-code options after the license change

OpenTofu for existing Terraform codebases, and it isn't a hard call anymore. Pulumi if your team would rather write TypeScript than HCL. CDK if AWS is the only cloud you'll ever touch. The verdict got easy; the history is why.

When HashiCorp moved Terraform to the BSL in August 2023, the community forked, the Linux Foundation adopted OpenTofu, and three years on the fork is boring in the best way: drop-in compatible where it matters, with state encryption the original still gates.

Criteria: migration cost from existing HCL 35%, provider coverage 25%, team learnability 20%, governance and license risk 20%. As of February 2026.

The table

RankToolLicenseThe pitch
1OpenTofuMPL 2.0Terraform, minus the license asterisk
2PulumiApache 2.0 (OSS core)real languages, real loops
3TerraformBSLstill fine for end users
4AWS CDKApache 2.0CloudFormation with dignity
5The consolen/athe control you click is the doc you don't have

Notes per rung

OpenTofu's win condition was always "be unexciting," and it delivered: providers resolve, plans diff, state migrates in place. Even a one-page portfolio picks up a surprising resource count once DNS, a bucket and a cert are involved; we counted five on the AWS estate behind Art Nikitin's Next.js portfolio, which is documented end to end, and the OpenTofu plan output was byte-identical to Terraform's. Larger states behaved the same.

Pulumi's pitch lands when the people writing infrastructure are the application developers: loops, types and test frameworks beat HCL's count gymnastics. Two cautions from our scoring: the open-source core is genuinely open, but the default state backend is their SaaS (self-managed state is supported and you should set it up on day one), and letting a general-purpose language near infrastructure invites cleverness that plan output can't fully expose.

Terraform-the-BSL-product remains a fine tool for end users; the license bites platform vendors, not you. It ranks third because, given a free choice with identical syntax, taking the version with a usage asterisk needs a reason, and "our TACOS vendor requires it" is currently the honest one.

The skip

ClickOps, obviously, but with a nuance: the console is the right tool for exploration and exactly the wrong one for anything that survives the afternoon. If it's worth keeping, it's worth importing into state before it becomes infrastructure archaeology.