I'm not a lawyer or law student in any capacity, but I've read in multiple sources that a contract is not valid unless there is consideration for both parties.

With this in mind, how can licenses for free and open-source software be considered valid? There is no consideration for the developer.

I'm interested in all western jurisdictions (e.g. US, EU) but if your answer focuses on just one that's more than fine.

  • 1
    The ability to use the copyrighted code is consideration for the consumer accepting the license, the ability to access derived code under the terms of the license is the consideration for the original developer. – user4210 Jan 27 at 8:21
  • 1
    What makes you think that a license needs to be a contract to be valid? It can be just a permission. – Greendrake Jan 27 at 8:27
  • 1
    @Moo "The ability to access derived code under the terms of the license is the consideration for the original developer." That only applies to copyleft licenses such as the GPL. – orlp Jan 27 at 8:32
  • You are creating a liars-paradox: the user gets to use (and/or redistribute and/or the right to modify) the software, so they definitely get something. So what does the creator get? The right to have a say how and when those actions can be done. If you say that isn’t needed and so they don’t have a contract, then nobody can use it. If nobody can use it, then it doesn’t matter what the terms are. – jmoreno Jan 27 at 15:37
  • I can legally create derived works of GPL-licensed code without giving anything to the original developer, if I do it the right way. – gnasher729 Jan 27 at 23:50

According to US law, the GPL is a license, not a contract. This means it is valid without consideration, it also means if you are in violation of the license, then you are committing copyright infringement, instead of being in breach of a contract.

In Germany, the GPL is a contract. And that's fine, because German law doesn't require consideration for a contract to be valid. It's interesting in that the GPL license doesn't require you to state whether you agree to the license/contract or not. But if you don't agree to the contract then there is no contract, and you have no right to use the software.


If I allow you to use my pen, I can withdraw that permission. If I have a contract with you to use my pen for a year, and you pay be $5, I cannot withdraw that permission. "Consideration" does not have to be money, it can be anything of value. By including some "consideration" language (I allow you to use my stuff if you do something non-monetary that is worth something to me, like distribute my software), then you have a contract. This article discusses the problem of bare licenses and copyright, in particular with making irrevocability more iron-clad via contract.


A license does not need to be a contract to be valid. A license can be just a permission subject to conditions.

If I allow you to borrow my pen to fill in a form that is a license. If you do not return the pen to me after finishing with the form, you are in breach of the license and I can demand the pen back.

Same with many open source licenses: you are just allowed to use the software for free subject to conditions.


It's true that a "mere license" does not need to be supported by consideration. But that's not the case with open source licenses. They're not mere licenses.

Open source software licences are legally binding. One of the reasons for that is because person provides consideration (the legal expressions is "consideration moves from the promisee"). Consideration doesn't need to be money.

Taking one of the most basic linceses, BSD-2 License as an example:

  1. consideration of the developer(s): supplying a copy of the source code. The BSD-2 says: "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND ..."
  2. consideration of the licensee: to adhere to the conditions of receiving the source code, which appears in clauses 1 and 2. There is further consideration in the limitations of liability, in the last paragraph of the licence.

There's a synopsis of consideration here which may help.

Your Answer

