Call us: +1-415-738-4000

Terracotta Licensing FAQ

Licensing Facts

This FAQ provides answers to commonly asked questions related to the Terracotta Public License ("TPL"). It is provided for informational purposes only. It is not part of, nor does it modify, amend, or supplement the terms of the TPL. The TPL is a legal agreement that governs the rights granted with respect to material licensed under it, so please read it carefully. If there is any conflict between this FAQ and the TPL, the terms of the TPL shall govern. This FAQ should not be regarded as legal advice. If you need legal advice, you should contact your own attorney.

Guaranteed Rights: The Things Everyone Can Always Do Under the Terracotta Public License

Whether you're using Terracotta for yourself or your enterprise, or you're using Terracotta to build software for someone else's enterprise, you can always:

  • run Terracotta for free
  • distribute Terracotta for free
  • implement and integrate Terracotta with other programs
  • fix bugs
  • build new programs
  • share contributions
Using Terracotta for Yourself or Your Enterprise

If you're using Terracotta in either its original or modified form for yourself, or for your enterprise, then you can always:

  • run Terracotta in your enterprise, with no attribution
  • modify and edit Terracotta code, and deploy it without attribution
  • use Terracotta code taken from another product that uses Terracotta, with no attribution
Using Terracotta Within Your Enterprise to Benefit Others Who Are Outside Your Enterprise

Many developers use Terracotta within their enterprise, in a way that benefits users who are outside their enterprise. For example, Google can run Terracotta internally, to benefit users who visit its site. Similarly, an ASP can cluster its application service with Terracotta, to provide a better experience to its users. In these cases, you can always:

  • run Terracotta in your enterprise, with no attribution
  • modify and edit Terracotta code, and deploy it without attribution
  • use Terracotta code taken from another product that uses Terracotta, with no attribution
Distributing Terracotta to Others, Outside Your Enterprise

If you're going to distribute Terracotta in either its original or modified form to someone else, outside your enterprise, then you can always:

  • use Terracotta code in its original form in your software, as long as you include attribution and you license the Terracotta files under the TPL
  • modify and edit Terracotta code and use it in your software, as long as the changes are licensed under the TPL
  • license your own code under a license that you choose, including a proprietary license

Real-World Licensing Examples

Q: I am an ISV. Can I embed Terracotta software in my software, and then distribute it without open sourcing my software?

A: Yes, you can redistribute Terracotta code in your software without open sourcing, as long as you provide attribution to Terracotta. You can ship your own code under a license of your choice, including a proprietary license. You'll need to ship the Terracotta code (and any modifications you make to it) under the Terracotta Public License.

Q: I'm running a web app under an app server, and I'm using Terracotta as well. Do I need to comply with the attribution requirement?

A: No. In this case, you're not distributing any Terracotta code, so the attribution requirement doesn't apply.

Q: I want to write software that uses Terracotta, but my software would run in headless mode, without a GUI. If I distribute my software, how would I comply with the attribution requirement?

A: If you distribute your software and it includes Terracotta code, you'll need to include attribution. The attribution requirement applies to all user interfaces, including command-line interfaces, and not just GUIs.

Q: I want to use Terracotta in my application. If I only deploy Terracotta within my company (including contractors who work at my company), do I need to comply with the attribution requirement?

A: No. You are only required to include the attribution notice if you redistribute Terracotta, or any derivative works that you build from Terracotta. "Redistribute" means to give (or make available for download) the software to a third-party – in other words, someone outside of your company (other than contractors who work at your company).

Miscellaneous Licensing Questions

Q: I'd like to integrate Terracotta with my own software and distribute it. Can I do that under the TPL?

A: Yes, you can integrate Terracotta with your own code, but if you want to redistribute your resulting product, you'll need to redistribute the original Terracotta files that you used and any modifications that you make to them in open-source form under the TPL. This ensures that your modifications get licensed back to the community. You can distribute your own code under any license that you choose, including a proprietary license.

Q: Does the attribution requirement apply even if I don't make changes to Terracotta code?

A: Yes. The attribution requirement applies to any distribution of Terracotta code, even if it is unchanged.

Q: Does the attribution requirement apply if I only distribute changes to the Terracotta code?

A: Yes. The attribution requirement applies to any distribution of Terracotta code, even if you're just distributing modifications.

Q: I'd like to use Terracotta code in my software and then distribute it, but I don't like the attribution requirement. Do I have any other licensing options?

A: Yes. We offer an enterprise version of Terracotta, available under a commercial license, for an annual subscription. Our enterprise packages eliminate the attribution requirement, and they include mission-critical support, plus warranty and indemnification assurances. For more information, please contact info@terracottatech.com.

Q: Can I distribute Terracotta?

A: Yes. You can make and distribute unlimited copies of Terracotta covered by the TPL without payment of royalties or license fees, but you must redistribute Terracotta with attribution and under the TPL. If you bundle Terracotta with your own software, you have the freedom to choose a license for your own software.

Q: If I make changes to Terracotta source code and use them internally, do I have to contribute those changes back to Terracotta?

A: No. If you don't distribute those changes outside your enterprise, then you don't need to contribute those changes back.

Q: Can I make changes to Terracotta source code and distribute those changes?

A: Yes, as long as you retain the attribution to the original code developers and that you share any code changes by publishing the source code along with your modifications.

Q: Does Terracotta link to third-party software that may require different licenses?

A: Yes. Terracotta will frequently bundle third-party Java libraries as a convenience for our users. A complete list of bundled third-party libraries and their respective licensing information can be found as part of the Terracotta download.

Q: If I have a question that isn't answered in the FAQ, how can I get help?

A: We will try to answer any questions you may have. You can email us at license@terracottatech.com.