I want to ask whether any materials that has "Free for non-commercial use" license can be used in a GNU GPLv3 licensed software.

In my opinion, it is "free for non-commericial use", and GNU GPLv3 is also non-commericial, so it can be used in the software, is it?

I'm asking this question because there are no explicit or clear declaration about "FREE FOR NON-COMMERCIAL USE" license out there....

  • 1
    There is no clear declaration of what constitutes as "commercial use" which is why you should generally prevent to make use of such unclear terms.
    – hakre
    Oct 22, 2013 at 13:06

5 Answers 5


Definitely not. GPLv3 allows for both commercial and non-commercial use. Other than the license itself, which does not restrict commercial use, see this GPL FAQ answer:

Q: If I use a piece of software that has been obtained under the GNU GPL, am I allowed to modify the original code into a new program, then distribute and sell that new program commercially?

A: You are allowed to sell copies of the modified program commercially, but only under the terms of the GNU GPL. Thus, for instance, you must make the source code available to the users of the program as described in the GPL, and they must be allowed to redistribute and modify it as described in the GPL.

Also there is this page about selling free software, which is not talking about the GPL specifically.

  • 5
    The OP is NOT asking if a GPL'd module can be included in a "no-commercial use" project. He's asking the inverse; if a "no commercial use" module could be included within a GPL licensed project. It's entirely possible to use a modified GPL for such a project, but only if the project would be allowed to use a non-GPL license at all.
    – DougM
    Oct 19, 2013 at 15:04
  • 4
    @DougM: Those are not two separate cases. Work under GPL cannot be combined with work licensed "non-commercial", ever, in any way, at all, period.
    – Jan Hudec
    Oct 22, 2013 at 14:24
  • 3
    @DougM It's of course possible to combine the works if the GPL'd work is re-licensed under a non-GPL license (which you call a "modified GPL"), but that strategy (while valid) falls outside the actual terms of the question being asked.
    – apsillers
    Oct 22, 2013 at 16:03

There can't be. GPL is a Free Software license; a "free for non-commercial use" license is not, because it restricts commercial use, and such a restriction is a violation of the Four Freedoms. (In case you're wondering, here's a definition of Free Software).

GPL (all varieties, really) were designed specifically to ensure that the software is and remains Free; the viral nature of it is a direct consequence of making sure that it is possible to build upon GPL-licensed works without impacting its free-ness. Unfortunately, this also means that if you want to (or have to) release under GPL, you cannot restrict the license to non-commercial use, and you cannot forbid the use of the software for, say, military, espionage, executing death sentences, running nuclear facilities, clubbing seals, hunting whales, or destroying rainforests. By contrast, the MIT license allows reuse as part of a non-free work; while the original work is free, the derived work may not be, and such a derived work can add such restrictions to its license, as long as it adheres to the original work's requirements (typically, attribution).


https://www.gnu.org/licenses/license-list.en.html#CC-BY-NC also contains a quote of interest which states the general view of the GNU project towards NC:

Creative Commons NonCommercial, any version

This license does not qualify as free, because there are restrictions on charging money for copies. Thus, we recommend you do not use this license for documentation.

In addition, it has a drawback for any sort of work: when a modified version has many authors, in practice getting permission for commercial use from all of them would become infeasible.

That page seems to imply that non-free means not compatible with the GPL in their view, e.g. "GPL-Compatible Free Software Licenses".


You are free to build an application combining GPL licensed code with code licensed under some license X, as long as license X allows it. You can pass it to someone else if both licenses allow it. In your case, first you can’t give the application to someone using it commercially, because X disallows it. That would be no problem on its own, because GPL doesn’t force you to give your application to anyone.

However, if you give the application to anyone, it must be accompanied by the GPL license. Which means the receiver can give it to anyone. But it would be extremely unlikely that X allows this, so you can’t allow the receiver to pass the application to someone using it commercially, so you can’t accompany the application with the GPL license, so you can’t distribute it.

If you create an application with two incompatible licenses, then you can’t distribute it.


Short answer: No. The GPL requires you to re-use the same license as the cost of making a derivative work. If you also attach a "no commerical use" rider, you are not re-using the same license.

Longer answer: Yes, but. If you have the right to dictate the terms of license for your entire project -- i.e., you could license it 100% closed source -- you could release your code jointly under both licenses. The "no commercial source" library would maintain with itself and attach to your program, while the "copyleft" of the GPL would attach to all of your original code and anyone else's derivations thereof.

Be aware that this is NOT what Stallman and the FSF intended the GPL to be used for. And the license for your "no-commerical use" library might not include "re-license your own project" in their description of "use." While I am confident enough to say "it's possible", with the condition that you are not compelled to use the GPL, I would be remiss if I did not tell you in no uncertain terms that you should get a professional opinion.

The interplay of licenses is a complicated legal issue. ASK A LAWYER if you are using anyone else's GPL'd code!!!

  • 3
    -1, the longer answer is still no. If you involve a GPL work, it must all be GPL. GPL demands free for all use. Oct 19, 2013 at 22:10
  • "Must" does not mean what you think it means. If you can choose your license, you can choose to use a "modified GPL", although you may get hit with a trademark complaint from the FSF. Including a library with a "non-free" license in software is no different than, say, including a "non-free" licensed image or document along with GPL'd software.
    – DougM
    Oct 22, 2013 at 1:25
  • You may want to read "if you can choose your license" as "if you could release a version that did not follow ANY of the terms of the GPL." As in, you use only software you write yourself or public domain / non-copyleft OSS.
    – DougM
    Oct 22, 2013 at 1:28
  • So, it other words, you are saying you can use the free for non-commercial software with a GPL software if you completely rewrite it and don't actually use it in the software, AKA you use something else, or if you don't use the GPL, neither of which match the OPs premise. Oct 22, 2013 at 2:10
  • 1
    You should make it much clearer that your "longer answer" goes beyond the original scope of the question. Your answer suggests that the author re-license his own work under something other than the GPL, which is perfectly possible, but doesn't answer the original question of whether a GPL-licensed work can be combined with a non-commercial-licensed work. I think it's quite misleading to say "yes, but..."; I would instead suggest something like "no, but... consider reframing the problem such that the GPL'd work is not under the GPL anymore, thereby possibly allowing the combination".
    – apsillers
    Oct 22, 2013 at 14:52

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.