Open source software is gaining in popularity. And there is no surprise why. Thousands of people release open source projects on a regular basis, making it possible for anyone to take their code, modify it, and then distribute it back to the rest of the world. There are many ways people can make money with open source software. It’s an art that not only involves being a developer but also knowing how to market your project effectively.
Making money with open source is possible, but it is not easy. You have to be willing to work hard to create something of value and find people that are willing to pay for your work. In this guide I will show you how you can make money by crowd funding, selling advance copies or software subscriptions, or even selling directly to others.
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.
Bug bounty programs
Bug hunting, or as it’s usually known, bug bounty programs, is a way of earning money either by reporting errors on other systems or by solving them and submitting your pull requests with the code that fixes them. These programs are usually part of the entire vulnerability audit of the software being tested and accompany other internal processes the developers are implementing.
There are very big companies who submit their products for this type of treatment, and when we say “big,” we’re not kidding. With a basic search, we can find some interesting options, but in order to keep with the theme of “making money from open source,” here are some examples of high-paying organizations with bug bounty programs on their open-source products:
- Mozilla: They have two main programs, one for their actual software and one for their websites. Offering to pay up to $10,000 on the first one and up to $5,000 on the latter.
- Apache: This web server is probably known to most (if not all) back-end developers. Through its program it pays bounties of up to $3,000 to those able to solve the most critical bugs.
- Google Android: Also interested in making the most stable and secure mobile OS out there, Google offers up to $150,000 dollars for the most critical problems found and solved (yes, you read that number right).
There are many different lists of bug bounty programs, but you can find a good, up-to-date one on this website. Overall, this option is quite lucrative if you are able to put in the hours. That being said, you also need to specialize your knowledge and focus on security bugs if you want to reap the big rewards.
Last but certainly not least, aside from bug bounties, you can also get paid by fulfilling OSS (open-source software) bounties over at BOSS, a relatively new initiative that has lots of potential. Here, project owners can submit development tasks that they pay for on completion. This is certainly not as lucrative as the above programs but also requires less of a focus on security and can be tackled with a more generic software development profile.
Sell Support Contracts
A sophisticated open source application like Zimbra may be free to download and install, but it is a complex piece of software. Setting it up requires expert knowledge. Maintaining the server over time can require someone with know-how. Who better to turn to for this kind of support than the people who created the software?
Many open source businesses sell their own support services and contracts. Much like commercial software support, these service contracts provide varying levels of support. You can charge the highest rates for immediate phone support and offer lower rate plans for slower email-based support.
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.
Make it your calling card for companies looking to hire
Now this one is a bit of a curveball, mainly because it isn’t a direct way of making money from any OSS products you might release. Instead, it represents a way for you to use the popularity of one or more of your open-source products to give you access to companies you normally wouldn’t have.
Maybe you’ve been wanting to get noticed by Microsoft but haven’t had any luck with your job applications. A good option might be to make some useful contributions to its open-source products, such as TypeScript—you could become a regular maintainer for its main product, creating some good OSS support tools (e.g., frameworks around TypeScript or tools to automate the development process), or even one of the main authors of its product.
Whichever way you choose to do it, if you provide quality content for the community that has grown up around a particular open-source product, you’ll get noticed and thus, companies will find out about you and might even consider hiring you to work on their products.
Sell associated content
Following on from point #3, you could also look at writing content for OSS rather than maintaining it or providing direct support for a product. If this sounds appealing, look for popular, or even quickly rising, OSS products and start creating user tutorials for them.
Here are a few examples of how you can create content for OSS products:
- Write and sell books about them. This can be done both through self-publishing or by pitching topics to publishers. The latter will take care of the editorial process and publishing steps, letting you focus on the writing. You’ll have to split the earnings with them, of course, but it will be worth it.
- Create video courses for platforms such as Udemy and Pluralsight. Doing this will generate passive income in the same way books do after you’ve published them. Plus, these platforms usually provide video training.
- Write sponsored posts about the products. This does not mean the owner of the open-source product will always pay you to write these posts, rather that some blogs will be interested in the topic and will be willing to pay writers to provide content about other topics.
In all these cases, it’s important to understand that, to make money from an open-source product, you don’t really need to write code. You can provide user-specific content based on these products and still make money.
Some software projects are difficult to use without documentation. Making the source code available at no cost does not obligate you to give away the documentation. Consider the example of Shopp, an e-commerce plugin for WordPress. Shopp is an open source project, but to access the documentation you need to pay for a license that provides entry into the website. It is possible — and perfectly legal — to set up a Shopp store using the source code without documentation, but it takes longer and you won’t know all the features available.
Even if you did not create the open source software, you can author a manual sharing your expertise and then sell that book either through e-publishing channels or traditional book publishers.
Open source code is just that — source code. In some computer languages, such as C++, the source code cannot be run directly. It must first be compiled into what is called a binary or machine code. Binaries are specific to each operating system. Depending on the source code and the operating system, compiling into binary ranges in difficulty from easy to difficult.
Most open source licenses do not require the creator to give away free access to compiled binaries, only to the source code. While anyone can download your source code and create their own binary, many people either don’t know how or won’t want to take the time.
If you have the expertise to create compiled binaries, you can legally sell access to these binaries for different operating systems.
Many individuals will ask what the best way is to make money with open source. Well let me tell you that there are many different ways to earn money with open source. But you’ll have to learn how to do this properly or else you may not pull in very much money..