There isn't a single business model that fits all FOSS situation. Actors behind a software vary widely, mean around a project too. A community can only be made up of individuals, businesses or institutions, a mix. It can have a large user base, a small one. With this variety of context, many models coexists, usually projects choose multiple source of income. They are some hybrid models, with an open source call product and some proprietary code as extensions. Free and open source software use dozens of methods to make money.
It's important to notice that today a lot of FOSS projects aren't sustainable and well-supported. It may be still hard to find a comfortable income stream. Business models are under construction, more support will be needed from "communities". Majors projects are able to live well, they are for now a minority. We may expect, with the increase of open source adoption, an evolution in the behavior regarding open source support. It may be interesting to place this situation in a more global framework, in overall business models for digital are being invented.
Donation, sponsor & partnership
Donation
One mostly unviable way would be the donation. Lots of project enable way to donate fund. Linux Foundation, Mozilla, and many others. It looks like it's not usually a sufficient source. One actor who rely (almost) only on donation is Wikipedia/mediawiki, through the Wikimedia Foundation.
Donation may be enough for specific (and possibly big) projects.
Sponsor
Similar to donation, platforms are adding way to support projects like GitHub Sponsors. This service is new, announced in 2019. By having extra ways to fund projects at the heart of interactions, users and contributors may have more incentive to do it. For a small projects like Python, they seem to have something like 12'000 * 0.11 = 1'320$, not enough to sustain. Hopefully, success stories exist, the Python Software Foundation may not use this channel that much.
Partnership
FOSS project may have funding organization as active supporter. Software used by big companies or institutions can (and should) be financially or materially supported. Giving money to core developers or recruit internally their own programmers to fix bugs, develop features, help the community... Multiple companies and states are supporting Linux. Specialized programs will be only funded by the private or public sectors, ERPs are a good example where users won't be individuals. OpenCemetery has an interest in knocking on administration doors instead of doing a crowdfunding campaign !
In the future, companies and institutions will probably be more supportive to used open source software.
Services for FOSS
Services around Free and Open Source software is more adopted to generate revenue. Companies are able to build their business model on it.
Professional services
Software need to be installed, configured, maintained, bugs fixed, features developed, trainings are needed... Demand is here and companies are paid for it. A commonly cited and one of the biggest actor relying on this model is Red Hat, developed around Linux in 1993 and having in 2019 13'400 employees. Their clients are listed companies, states, universities, telephony players, oil industry needing services...
It's common to have multiple emerging companies who will provide services for the same software. Nextcloud, a self-hosted alternative to cloud services like Google Drive, is listing tens of partners who can deploy their solution.
A whole ecosystem around a solution.
Software as a Service
Software as a Service (SaaS) define software used in the cloud rather than on the user computer, Internet democratization facilitating this usage. Source code is released allowing open source benefits, and users are paying to save the pain of self-hosting. Services providing data storage or needing continuous uptime are well suited. The project himself, the organization behind can propose it like MongoDB or any companies can become a provider like for the case of Nextcloud.
SaaS brings trouble for some open source projects. Major cloud providers may abuse of freely available software to release services, forcing some FOSS to switch their licenses.
Hybrid models
Various business models are mixing open source and proprietary code, licenses are restricting some usages. The open core model open source a product call and sell closed source features. In other situation, the code can be public, but restricted by the license for commercial use, free until a specified company size like Docker. This situation may create trouble to understand allowed usage.
Hybrid models may be controversial, it may lead to strange mix of styles. It's important to identify the business model of a project.
Non-exhaustive list of business models, take a look at the Wikipedia page "Business models for open-source software".
Article from a series for the project Open Source Education to give pedagogical content during the Hacktoberfest.
Top comments (4)
Hybrid models aren't open source. If there are restrictions on who can use the code or how they can use the code, then it isn't open source.
But a part of the software is "open source". For example, I know a google Analytics like called Matomo : matomo.org/.
You can self-host a server, but they sell a lot of features, it's backed by a company. The source code is available here: github.com/matomo-org/matomo
Open source or not ?
That github repo appears to be open source, it has a GPL license.
GPL is open source. Open Source does not mean it is free in terms of money. It is free in terms to modify and not being held hostage by the company selling it.
Today if Microsoft suddenly increase price of all of its software by 10 times, you cannot do anything and pay them as your business depends on it.
In open source you acquire right to use and modify it and not being held hostage