This tutorial walks you through the steps of monetizing open source. It examines the pluses and minuses of each model and gives advice on how to approach them. It explores some patterns that are emerging in the industry as a result of the success of these models, and looks at where they are likely to lead. I also discuss how this model is different from paid support and consulting — what it means for your users and for your community, and what you might do to align incentives between commercial users, noncommercial end users, and hobbyists in a healthy way.
This guide outlines in a step-by-step process a proven path to monetizing open source software. The goal is to introduce a sustainable revenue model that works towards eliminating some of the uncertainty and variability previously associated with projects. I will outline how to find opportunities, whether to create new repositories or “borrow” existing ones, how to structure them in such a way that they can be managed and sold independently, how to form mutually beneficial relationships with vendors along the supply chain, and how to handle “hidden costs” such as customer support. All techniques and scenarios are based on real life examples of the system in action at ClearBlock.
Software as a Service (OpenSaaS)
One way to monetize your open source project is by using the SaaS business model. This option makes sense if you have a fully-fledged application capable of generating demand. The SaaS model is a popular way to license software because it’s flexible and offers rapid deployment and decreased costs. What makes SaaS attractive is that the software is stored in the cloud; users only need a web browser to access an application. SaaS is a popular business model for vendors that build tools for HR, collaboration, content management, and project management.
SaaS solutions with a free codebase reduce development costs and eliminate the need to build redundant functionality. Additionally, the vibrant OSS community will gladly promote quality open source products. With an OpenSaaS model, software is purchased via subscriptions, which can offer varying levels of service. For example, you might offer technical support, software customization, and trainings as package options. WordPress and Sharetribe are two bright examples of OpenSaaS products. Let’s see how they function.
Offering paid support is one of the most straightforward revenue streams for all kinds of open source projects. As a project maintainer, you have a lot of knowledge about the codebase. This puts you in the position to offer consultancy or support services to companies that want to use your code.
On the other hand, offering paid support doesn’t provide a scalable business model for open source projects. Because most projects are maintained by a few developers, there’s limited time for them to offer support to companies. Bear in mind the time required to improve the functionality and maintain the codebase.
In conclusion, it’s an effective way to earn some money as an open source maintainer and keep the project going.
WordPress as OpenSaaS
WordPress effectively functions as a free SaaS product: it’s an open platform, and it offers subscription plans with extra features like unlimited storage, automatic backups, customizable themes, and custom domain names. We say “effectively,” however, because WordPress technically comes in the form of a software product you can install on your own web server and maintain independently. The SaaS version of WordPress can be found at wordpress.com. If you choose this service, then WordPress hosts your application for you. However, since there’s no vendor lock-in, a customer can easily switch to a self-hosted WordPress version any time.
While not typically used by large for-profit companies, some individual developers make pretty good money by taking donations for their open source work. Patreon, GitHub, and Buy Me A Coffee are all popular platforms that allow individuals and businesses to help support open source projects that they use or want to see maintained.
The downside to this model is that it’s really hard to build predictable, sustainable income from it. Some people will heavily use and benefit from updates while never paying the creators, and this frustrates those who do support the project. If you’ve ever asked your boss if you can start paying for some of the free, open source software you use at work, you know how tough this can be to sell.
Software as a Service
An open source project that has generated plenty of demand can choose to offer a Software as a Service (SaaS) business model. This model is most viable for projects that offer a complete application, such as a publishing platform, monitoring tool, or marketing automation tool.
Developers can choose to host the software themselves. However, this means that they have to take care of security, security, and maintenance.
It’s often much easier and cheaper to pay for a managed offering under a SaaS model. Developers pay a monthly fee to use the hosted solution. Therefore, they can focus on the tool itself instead of all maintenance-related tasks. Moreover, a marketing or content team often doesn’t have the required technical knowledge to host a solution themselves. For that reason, a SaaS solution is a great alternative to make money from open source software.
Hosted Version of the Product
Some open source projects allow you to run their software on your own servers for free, but they’ll charge you for a hosted version. For example, you can deploy n8n.io to an AWS or DigitalOcean machine and keep it running on your own, or you can sign up for their hosted version and avoid the hassle of maintaining servers.
While this tactic won’t work for every open source project, it’s a very popular option. It offers a clear delineation between the paid and free versions of the product, and can be bundled with other features like support and training. The downside is that your margins are never going to be very high. If you charge too much, users will be able to justify the cost of maintaining their own servers.
Sharetribe as OpenSaaS
Sharetribe, a marketplace builder, is another great example of an OpenSaaS product. It comes in two versions: a self-hosted free version which can be found on GitHub, and a cloud-based hosted version at sharetribe.com. With the SaaS version of Sharetribe, customers receive software hosted on Sharetribe’s servers along with full-cycle support and maintenance, from installation to backups. With the SaaS version, customers don’t have to worry about updating their software, as this is done by Sharetribe. But while the SaaS version receives great support and additional offerings like custom domain and removal of Sharetribe branding, this version of Sharetribe is less customizable, only allowing you to personalize marketplace filters and change colors, images, and block position in the user interface.
With the open source version of Sharetribe, on the other hand, the customer has to deploy Sharetribe on their own server and run updates and backups themselves. The GitHub community offers decent support, but ultimately you’re on your own.
Though there aren’t many examples of OpenSaaS products on the market today, we feel that this business model is just beginning. The term ‘OpenSaaS’ was only coined in 2011 by Dris Buytaert, creator of Drupal. OpenSaaS is an exciting new trend that combines the best of both worlds, allowing people to build web experiences more easily than ever.
Featuring paid how-to articles, revenue models and case studies on monetizing open source software, our first book teaches a repeatable design process that can be applied to any project so you can discover and capture value from your users.