Public-Private Licensing for Indies
Public-private licensing is an proven business model for developers of open source software. There are just two steps:
Create and release your open source software as usual, but choose a copyleft license that does not allow making closed software with your work.
Sell license to specific people and companies to make closed software with your work.
Public-private licensing has worked for companies large and small, young and old. MySQL AB popularized the model. But smaller indies like RavenDB and Metafizzy do public-private licensing, too.
You do not have to change how you build your software.
You do not have to work on other software or services to charge for.
The better you make your software, the more valuable it becomes, and the more licenses you can sell, for more money.
Copyleft licenses can reduce adoption of your software.
You will need to take extra steps to accept contributions from others.
Selling private licenses can itself take time, depending on your software and your customers.
Choices to Make
There are three big choices for public-private licensing:
Which public license do I choose for my project?
What private licenses do I offer?
How do I handle outside contributions?
The public-private licensing business model is also called “dual licensing” and “selling exceptions”. Unfortunately, those terms are also used to mean other things. But you can still find information about the business model online under those old names.
Here are a few good pieces to start with: