I recently came across a project stating in the LICENSE file:

This project is released under the Apache License, version 2.0.
This is a commercial solution, requiring a valid paid-for license for commercial use.
This product is free to use for non-commercial applications, like non-profits and educational usage.

Is my understanding of Apache 2.0 correct that such a project does not require a "valid paid-for license" for commercial use and that such a library can be freely used in a commercial project (given that you include the licenses page describing the use of the library with the corresponding Apache 2 license, etc.)?

1 Answer 1


As a permissive license, the Apache 2.0 license does not prevent extra restrictions. The code may be used in any project as long as the attribution requirements are met. But such projects would not be licensed under the Apache license! And it would arguably be a misuse of the Apache trademark to call such a project Apache-licensed…

That particular licensing is quite unclear. It is not possible to say whether the author intended to publish an open source project with a public license under the Apache 2 terms, or whether they intended to publish a commercial shared source project that is only free for non-commercial users. There is usually no malice involved in such unclear terms, but frequently a misunderstanding of the open-source license they chose.

To avoid later problems, projects with an unclear license should not be used by other open source projects. Here, personal use might be OK. If you are interested in using the project, you should ask the authors for clarification. In particular:

  • whether the royalty-free license in the Apache license or the “paid-for” license in the quoted license take precedence
  • whether this applies both to commercial use and to other open source projects (which may also be used commercially)
  • whether this applies to both use of the software and to derivative works

Ideally the copyright holders remove this restriction so that the project is licensed under a pure Apache 2 license. The second-best outcome is that they bring clarity by removing the Apache 2 license.

  • But wouldn't the first line by itself give me the right to fork the project (following the rules of the Apache License 2.0) and distribute it without restrictions? Sep 28, 2018 at 14:22
  • @DavidMulder The problem is that the Apache license gives you some rights, but the next line takes them away again. This raises the question which of these conflicting terms has precedence. I don't know enough about contract law to discuss that. My suggestion is to ask the author to resolve that conflict and provide unambiguous licensing terms.
    – amon
    Sep 28, 2018 at 14:59
  • 1
    @David Imagine a very simple license: "You may modify and distribute this software for any purpose. You may not modify or distribute it for commercial purposes." This license is inherently contradictory -- it both allows and disallows commercial purposes. How the law will resolve such a contradiction is not clear and probably varies by jurisdiction. See also How can a "crayon" license be a problem?
    – apsillers
    Sep 28, 2018 at 15:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.