Skip to main content

Frequently Asked Questions

What is OpenTofu?

OpenTofu is a Terraform fork, created as an initiative of Gruntwork, Spacelift, Harness, Env0, Scalr, and others, in response to HashiCorp’s switch from an open-source license to the BUSL. The initiative has many supporters, all of whom are listed here.

Why was OpenTofu created?

The BUSL and the additional use grant outlined by the HashiCorp team are ambiguous, which makes it challenging for companies, vendors, and developers using Terraform to decide whether their actions could be interpreted as being outside the permitted scope of use.

Hashicorp’s FAQs give some peace of mind to end users and system integrators for now, but the licensing terms’ implications for future usage are unclear. The possibility that the company’s definition of “competitive” or “embedding” could change or the license could be further modified to make it closed source prompts uncertainty for Terraform users.

We firmly believe that Terraform should remain open-source because it is a project many companies use, and many contributors have made Terraform what it is today. Terraform’s success would not have been possible without the community’s work to build many supporting projects around it.

What are the differences between OpenTofu and Terraform?

There will be no differences between Terraform (versions prior to 1.5.x) and OpenTofu. As new versions are released, this will change.

Why should you use OpenTofu instead of Terraform?

Personal use

Initial impressions suggest you could use either OpenTofu or Terraform for personal use, as the BUSL license has no restrictions for non-commercial use cases. That may change as the Terraform ecosystem becomes increasingly unstable, and a switch to another license may happen. Those familiar with Terraform will have no issues adopting OpenTofu for personal use, so there will be no knowledge gaps, at least at the start.

Consultants

A consultant should offer their clients the best possible solution that aligns with their budget. OpenTofu will be on par with Terraform, and one of the project’s central objectives is to listen to the community’s issues, so it makes sense to recommend a project that will always stay open-source. Anyone who has used Terraform in the last eight years has probably come across issues that took some time to be resolved. The large community involved in developing OpenTofu means this will no longer be the case.

Companies

Companies will encounter more difficulties with the situation. Switching to a new project carries risks, but staying with a project that changes its license without warning is far riskier. This risk is minimized by giving OpenTofu to the Linux Foundation, and OpenTofu’s aim of maintaining feature parity with Terraform for future releases reduces the technical risks.

Will OpenTofu be compatible with future Terraform releases?

The community will decide what features OpenTofu will have. Some long-awaited Terraform features will be publicly available soon.

Some companies have pledged to pay for full-time engineers to work on OpenTofu. We have 19 such engineers involved already — and many other individuals, companies, projects, and foundations are prepared to contribute.

Can I use OpenTofu as a drop-in replacement for Terraform? Is OpenTofu suitable for production use?

Initially, OpenTofu will be a drop-in replacement for Terraform, as it will be compatible with Terraform versions 1.5.x. You won’t need to make any changes to your code to ensure compatibility. OpenTofu is suitable for production use cases without any exception.

Will OpenTofu work with my existing state file?

OpenTofu will work with existing state files up to those created with a version prior to Terraform’s 1.5.x.

Does OpenTofu work with all the providers Terraform works with?

OpenTofu will not have its own providers. Terraform providers have not altered their licenses, and the potential for such a change is virtually zero. OpenTofu will work with the current Terraform providers, but it will use a separate registry.

How are new features, bug fixes, and other development decisions made in OpenTofu?

The steering committee and the community determine the most important features and bug fixes. The large number of developers pledging their resources to help develop OpenTofu will speed up the development of features and enable faster releases than Terraform managed previously.

How can I contribute to OpenTofu?

The best way to show practical support for the OpenTofu initiative is to contribute. We recommend you start by opening an issue for bug reports, broken compatibility reports, feature requests, old issue reposts, and quality RFCs.

All major changes to OpenTofu Core undergo the public RFC process, and we also welcome feedback on existing RFCs. As we're still in the cleanup phase and want to avoid conflicts, please wait until the first alpha release to contribute code.

This contribution guide explains OpenTofu contribution recommended practices, including how to submit issues, how to get involved in the discussion, how to work on the code, and how to contribute code changes.

How can I pledge support?

The pledge is open to all individuals and companies who care about the future of Terraform. You can also support this initiative by starring the manifesto repository on GitHub and spreading the word via share buttons.

Here are the most important things you can do to show your support:

  • Sign the manifesto and pledge your time to help develop this project. This can be done here, by forking the repository, adding your pledge at the end of the table, and creating a pull request.
  • Follow OpenTofu on Twitter.