How to Get Paid for Open Source Software
Tuesday, Mar 15th 2022
If you're reading this, you're probably wondering how you can start making money from your open source software. There are countless ways to start generating revenue from the open source software you just created. Let's take a deeper dive into what open source software is, so we can learn the best strategies to begin monetizing it.
What is Open Source software?
You may have heard the term "open source software" and wondered what that means. Open source software is software that is designed to be used, modified, and shared by a community of developers.
In open source software, the code for the software is developed in a public place and is free for anyone to contribute to and improve on.
Unlike closed-source software, where the code is typically restricted to a few users from one company, typically, depending on the license, anyone can modify open-source code to suit their needs.
Open source software has many benefits:
- It's usually free, because people working on it are typically volunteering their time or interested in having others use the software they created.
- It's accessible — anyone can make changes to the code and submit them for review, and if those changes correct a bug or add some other valuable feature to the software, they are likely to be accepted.
- And because of its accessibility and openness, open source software has a strong community behind it—people who have used it and found bugs or had ideas for improvement can easily communicate with each other as well as with the developers in charge of maintaining the project. This means that changes get made quickly and problems get fixed fast!
Open source also lets people see how each piece of software works by itself, or how it works when combined with other pieces of software. This makes it easier for developers to create new programs that work well with the existing open source program.
How can you monetize open source software?
Open source software is software that's released with a license that allows users to freely use, change, and share it. But how do you make money from a product you give away for free?
The answer is that you don't — at least, not exactly. You can't charge money for the open source version of your software, but it doesn't mean you can't make money from other versions of it. Here are seven ways companies have generated revenue from open source software:
- Charging for custom features
- Paid support services
- Custom development services
- Selling complementary tools
- Selling hosted services
- Paid partnerships
- Paid training
- Paid ads
- Open core
Charge for custom features
Companies often offer open source versions of their software for free, but they sell premium versions that offer more features and functionality. If there are features that certain users are requesting, but they themselves are not programmers, then you could have a team of programmers ready and charge a fee when people request new features.
Paid support services
Another monetization model companies employ is paid support services. For example, Redis has premium support offerings for their enterprise cloud service, as well as for their on-premise software. Offering paid support is a great option, especially if you're focused on the enterprise market.
Offer custom development services
One of the most widely used method for monetizing open source software is through the sale of custom development services. This can include anything from setting up an end-user's server or mobile application, to optimizing database configurations, to writing code for them.
Sell complimentary tools
Companies will often sell tools that work in conjunction with their open source software. For example, WordPress is an open source CMS that allows developers to build on top of it with plugins and themes. Many companies create these tools and sell them to users.
Sell hosted services
More and more, companies are offering a hosted version of typically self-hosted software. This removes a large barrier to entry for a less-technical user base, and also allows startups and enterprises alike to off-load setup and maintenance of the service to the creators of the open source software. Notable examples of companies that employ this type of open source monetization model are WordPress, Redis, and Sentry.
The open-core model is popular among companies with paid premium features. You give away a free version of your core software and monetize with upgrades or add-ons. This is a good way to draw in new users while still monetizing your product. A great example of an open-core product is Sidekiq.
Paid training tools
Much like offering premium support — another popular way to make money with an open source project is to charge customers a monthly fee for training materials that help developers learn how to use your software.
Companies will sell services or products related to their open source software — for example, Red Hat charges subscription fees for its training and certification programs around Linux (which is an open source operating system).
Companies will develop partnerships with other companies who then market the open source software and share the profits with them. This is just like any other paid partnership, just with open source software as the "product."
Lastly, companies will often sell ads to appear on their website or in their documentation related to the software. Most companies take advantage of paid advertising, and open source software is no exception. This is a great option for smaller, but popular, open source projects that want to bring in a revenue stream.
Licensing open source software
Open source software (OSS) is typically available for use and modification without restriction. While it's true that you cannot charge others for using your open source software, what you can do is license it and make money from it.
Licensing open source software means allowing developers to build services, products, or extensions using your code, under certain conditions and standards. Now — there are 2 different types of "licensing" to deal with here:
- Legal license agreements. For example, the MIT license is very popular for open source projects. In addition, you could have a dual-licensed project, where non-commercial users are free to use your software without restriction, but commercial users must abide by another license.
- License keys. This is where you offer license keys to your end-users to access premium features, support, or additional premium software add-ons. (Keygen can help with this one!)
In most OSS licensing scenarios, the copyright holder of a work allows others to study, change, and distribute the work — and to use it for any purpose. This is different from proprietary software, where the copyright holder maintains control over a software program and its associated source code.
An example of an open source company that has made money licensing their software is Red Hat. The company provides open source solutions to businesses through subscriptions and support (they also own Fedora, a free open source community operating system).
While many OSS licenses are free in the sense that they don't charge any fees, some still require payment in some way (like by providing attribution to the original author).
Successful open source software companies
Since the open source software model has been gaining popularity, there have been many success stories. Notable examples include:
- MySQL Databases
- Apache HTTP Server
- WordPress (created by Automattic)
- Ubuntu (created by Canonical)
- Red Hat
- Apache Kafka (created by Confluent)
These companies are all so successful because they use most, if not all, of the previously mentioned ways to monetize their open source software.
Another thing these companies have in common is licensing — which Keygen can help with. We can help with licensing and distribution of your product, from distributing closed-source add-ons, to managing premium license keys. We're here to help. Open a dev account today.