My research group is developing some software for research purposes. The project leader wants the software to be open source and likes the GPL, but wants to ensure that they software cannot be sold.

Are we reading the GPL correctly? The software can be freely modified, (re)distributed, and sold? If so, I see why it would be difficult to effectively sell the software; however, the GPL isn't quite strict enough for our needs.

Any suggestions?

  • 1
    Change that part of the GPL and call it Your Group Name Public License. Similar to the Mozilla License (a GPL modified).
    – Todd Moses
    Commented Sep 15, 2011 at 15:35
  • 2
    Try a text editor. The license itself is copyrighted, but the FSF doesn't stop people as long as they don't use the GPL preamble without permission.
    – Philip
    Commented Sep 15, 2011 at 16:20
  • 10
    You should be aware that disallowing the sale of your software drastically reduces its usability. For example, such a license makes it incompatible with the GPL. It will not be included in Linux distributions or similar collections of free software. In fact, you might want to keep it for yourself and not release it at all.
    – user281377
    Commented Sep 16, 2011 at 7:01
  • 6
    If you forbid the software to be resold, it is not considered free software anymore by many people (the OSI will not consider it Open Source, see 1 in opensource.org/docs/osd). And it will not be compatible with the GPL. If you do not want your software to be resold do not use the GPL or a modified version thereof.
    – ysdx
    Commented Sep 16, 2011 at 7:47
  • 9
    What is the underlying cause of "Do not sell our software?" - what do you want to avoid?
    – user1249
    Commented Sep 16, 2011 at 13:24

8 Answers 8


My suggestion is to not worry about it. Under the GPL, while you can sell it, there's really no point in buying it. Potential buyers can simply go get the source and compile it themselves. And if the build process is difficult, it just takes one person to figure it out and host the version with an automated build.

The only reason I've seen to directly sell GPL software is for people that have a lousy internet connection, and want it delivered to them on a physical medium, like a DVD.

Ask you project lead why he doesn't want people to sell the software. The GPL will probably suffice.

Now, you can make money on the open source model, but it has to be done at oblique angles. People could, for instance, take your code and become experts at it. They could then sell their support to your end-users. They could also seek commissions for further developing your code-base. The GPL doesn't block this. If you have problems with either of those, make your own license.

  • 2
    The reason you don't normally buy GPL is not because the source is always up-for-grabs, but because potential buyers don't have to buy copies from you, they can buy them from anyone who has the software. You can sell the first copy, but then the GPL allows the buyer to give away (or sell) a million other copies.
    – Jaap
    Commented Sep 16, 2011 at 12:39
  • 1
    I just read the GPL FAQ, it seems to imply that you don't actually give out the source unless you are going to distribute it. This means for the first buyer, they still have to buy it in order for them to have access to the source. but I'm not sure. Commented Apr 22, 2014 at 1:44
  • As @CMCDragonkai noticed. You buy GPL software because authors are not obliged and do not publish the source code. Distribution happens at the point of sale and this is when you get the source code. This answer is not correct. Potential buyers cannot get source code if authors do not distribute it. For commercial GPL products, the distribution happens at the point of sale.
    – pronebird
    Commented Aug 12, 2015 at 13:25
  • 1
    @Andy Yeah, they don't have to publish it for all, but they ARE obligated to hand out the source along with the software whenever it leaves their house. Like when the sell it to people. Who could then publish it, or undercut them, or whatever. There are the legal rules and then there are the obvious market forces. I'd love to hear about commercial GPL'd product that try and charge people for the product itself.
    – Philip
    Commented Aug 12, 2015 at 20:52
  • @Philip Hi Philip, I think you can answer my question which is similar this question here. I am confused with GPL license. softwareengineering.stackexchange.com/questions/348214/…
    – kittu
    Commented May 2, 2017 at 18:23

You may sell as many copies of GPL software as you can move, but you have to release the source for free.

  • Exactly. We don't want people to be able to sell the software, source nor binary.
    – Doug Moore
    Commented Sep 15, 2011 at 15:39
  • 1
    @Doug Moore, then the GPL is not what you want.
    – Geoffrey
    Commented Sep 16, 2011 at 6:55
  • 6
    Addendum: you have to release the source for free to anyone who bought the software. That, and you can't stop anyone from selling copies themselves.
    – Jaap
    Commented Sep 16, 2011 at 12:33

Yes, GPL'd software can be sold. The GPL FAQ[1] is pretty clear on this point.

Also, software cannot really be "open source" and have a "you can't sell this" limitation. Such a limitation violates plank #1 of the Open Source Definition[2]. Of course not everybody accepts the OSI definition, but in pretty much every practical regard, nobody considers software Open Source if you put in a restriction on re-selling it.

Perhaps the combination you are looking for can be found in one of the Microsoft Shared Source[3] licenses. You might consider the Microsoft Research Shared Source License Agreement[4], for example.

All of that said, why are you guys so set against resale? Doing something like that is really going to make your stuff a lot less accessible / useful to people.


The official answer, from the GPL's own FAQ: http://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney

Does the GPL allow me to sell copies of the program for money?

Yes, the GPL allows everyone to do this. The right to sell copies is part of the definition of free software. Except in one special situation, there is no limit on what price you can charge. (The one exception is the required written offer to provide source code that must accompany binary-only release.)

If I distribute GPL'd software for a fee, am I required to also make it available to the public without a charge?

No. However, if someone pays your fee and gets a copy, the GPL gives them the freedom to release it to the public, with or without a fee. For example, someone could pay your fee, and then put her copy on a web site for the general public.


Using a license that prohibits commercial usage (which, by the way is VERY hard to define) than GPL will make your software incompatible with all existing libraries and programs that use that license. It also means that it will not be included in software like R or in linux distributions like debian.

I know different programs which used some kind of noncommercial license and which was not maintained for this reasons: you can not link the software to most other libraries or utilities.

If you use the GPL, and someone will sell products using or based on your code, they are obliged to give access to the full source code. That means including all their modifications and all other code for their program. I think that's a fair deal: improvements and new possibilities become available.

Since you are the copyright holder, you can also decide to have both a GPL version and a commercial license: in reality people selling software will want a license which does not force them to publish their whole program under the GPL. They will happily buy a license to get rid of that restriction. This is a scheme which among many others is used by oracle for berkeley db:

Thus, the license depends on how a particular application that uses Berkeley DB is distributed to the public. Software that is not distributed can use the Sleepycat License, as can free and open source software. Proprietary software can use Berkeley DB only under a commercial license agreement between Oracle and the application's publisher.

A last thing: it is very hard to define 'commercial usage'. Is a PhD student working on a project using your software commercial usage? His wage is paid by the project...

One last thing to convince your team leader:

Releasing code under the GPL leaves only the same opportunities for (legal) commercial gain as does publishing a journal article describing some method or process that can be exploited commercially.

From this similar question on Stackoverflow. And in fact it is not true: if you publish an article, the publisher will usually claim the copyright and the revenues of the article, so you are better of using GPL than publishing it in a journal.


What does he mean, "cannot be resold"?

There are two interpretations, an economical one and a legal one.

Under the legal interpretation, if your software is under the GPL license, other people are explicitly allowed to resell your software.

Under the economical interpretation, if you offer a free-as-in-beer GPL version on your website, other people cannot resell your software because they'd not be able to undercut you.

In either case, third parties can charge for warranties, maintenance, support, and quite a few other things anyway.


The easiest and safest for you is to license under a Creative Commons Non-Commercial. Including further options for limiting like No Derivative Works.

See: http://creativecommons.org/

Using this would disallow commercial use of the product without you having to modify the license.

SO uses the CC license for this content but it can be used for any published medium.

  • 2
    I had the same thought, but Creative Commons recommends against this: Can I use a Creative Commons license for software.
    – Doug Moore
    Commented Sep 15, 2011 at 19:27
  • @DougMoore The reasons given there are basically the same reasons that everyone is suggesting you NOT try to go for a non-commercial license. It really doesn't make sense, and that's basically what they're trying to advise you of there.
    – CrazyCasta
    Commented Oct 20, 2014 at 0:54

Make your software proprietary and publish the source code online with a click wrap license which prohibits from compiling the source and selling it.

That should do.

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.