I'm going to build an Android app under some open source license but I want to use this same app as a basis for a proprietary software in the future.

So I will have two softwares:

  1. My Software
  2. My Software Pro

"My Software" will have an open source license and will be made free to download in Google Play store and maybe will have adds.

"My Software Pro" will be the same app as "My Software" but with added features and no adds and it will not be open source and will be a paid app on Google Play store.

What I really want to know is which of the common open source license will better fit in this model to be used as "My Software" license? And which of the license will allow me to do this? I know I can do this with Apache License v2 but can I do this with LGPL v3? What are the pros and cons of choosing one over the other for this app delivery model? Are there better open source licenses out there for using with this model of software distribution and commercialization?

  • 3
    Are you happy with people taking the open source version of your software (item 1), rebuilding it and uploading it without ads (or even with ads supporting them rather than you)? If the answer is "no", you don't want an open source license at all. Commented Jan 25, 2021 at 6:40
  • @PhilipKendall Yeah, I think I can live with it. The main purpose of releasing the version of the item 1 is to contribute to the community and not to earn money. Earn money with adds would be just a plus. The purpose to earn money is with the Pro version as the version of item 1 would be an open dor to it. But I'm considering all possibilities. Just thinking about it.
    – Iogui
    Commented Jan 25, 2021 at 19:09

1 Answer 1


If you are the sole copyright holder to "My Software", then any license allows you to do as you propose.

What any open-source license also allows is that anyone can take your open-source version, remove the adds and then publish the modified version again. If that is not acceptable, then you should not use an open-source license and the rest of the answer becomes moot.

If you start accepting contributions from others, then the differences in licensing terms between the various licenses start to play a role and you need to start paying attention to the license under which your contributors provide their contributions.

There are a number of situations to consider then:

  1. You have set-up a Contributor License Agreement (CLA) that every contributor must sign and which gives you the explicit right to use the contribution in your Pro version under the closed-source license of the Pro version. This option gives you a lot of rights, but it is also a barrier for potential contributors to start contributing and there can be a substantial amount of legal red-tape involved.
  2. You use a permissive open-source license (like the Apache 2.0 license) without using a CLA. These licenses allow you to use the contributions in your Pro version without having to make the source code of the Pro version public, as long as you follow some rules that are spelled out in the license. That is mostly regarding attribution.
  3. You use a copyleft open-source license (like the (A|L)GPL) without using a CLA. In this case, you cannot use the contributions in your Pro version, unless you make the Pro version also open-source under the same license.
  • Just to clarify, those three topics you've mentioned just apply if I accept contributions, is it right? But, about this third topic, the copyleft licenses, if I use one of then and don't accept contributions from others, my Pro version would not be "contaminated" by then? Can I still use a proprietary license on the pro version?
    – Iogui
    Commented Jan 25, 2021 at 19:59
  • Technically, they apply for any third-party code that gets used in your project, so also for third-party libraries you use (where the choice essentially becomes, are the license conditions acceptable to me). For code you have written yourself, you are not bound by any license and there is nothing stopping you from using that code in multiple, differently licensed, products or to offer that code to different people under different licenses. Commented Jan 26, 2021 at 7:04

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.