In 1983, Richard Stallman kicked off the free software movement with the launch of the GNU Project. From that point onwards, free software was commonly associated with being free in the monetary sense as well.
Most all open source projects, especially those in the world of Linux are available free of charge. And while this is very nice in itself, it can result in developers not being able to fully commit to their projects.
In turn fantastic open source projects going nowhere in development when the lives of the maintainers catch up to them. But there is another way to go about open source!
If you’re already doing what you love, why not make money off of it? And I’m not talking about the traditional open source revenue model like that of Red Hat and Suse where the bulk of their revenue comes from enterprise support plans, I’m talking about directly charging for the software itself.
This might run against the grain of the open source status quo but it’s absolutely an option, take it from Richard Stallman and The Free Software Foundation themselves:
We encourage people who redistribute free software to charge as much as they wish or can, The word “free” has two legitimate general meanings; it can refer either to freedom or to price. When we speak of “free software”, we’re talking about freedom, not price. (Think of “free speech”, not “free beer”.)
The two most common avenues for charging for your software would be either that of distributing your software through a marketplace intermediary like that of the Google Play Store or direct distribution through methods like that of a paywall on your website. But just like any other piece of open source software, you have to make the source code for said software is openly available to anybody free of charge.
Skipping the Paywall
But if the source code is available to everyone, won’t people just skip the marketplace/paywall and compile your software from source? While this is absolutely an option, you must take into account that depending on the market you are in, people might not be comfortable with compiling from source to begin with.
If you are a Linux distro then you could very well run into a large problem with people compiling from source, but if you’re a fitness app on the Play Store, a majority of your customers wouldn’t care to pay the $0.99 to get your app.
To further draw upon this point, Peter Wayner from InfoWorld states,
It’s a mistake to focus too much on how many are getting the product for free. It’s not usual for companies to cite figures where 90 percent or more are not paying. They usually don’t cost the company very much because the open source packages cost little to distribute.
In short, it doesn’t matter what percentage of your customers are paying or not. It’s not like a free sample situation in a grocery store where there is a limit to how much food can be given out to potential customers.
The only thing that matters in the world of open source is that enough users are going through the marketplace/paywall route to cover your operating costs.
The methods of reaching said threshold of customers is a matter that deserves an article in itself. But know that this goal can be achieved in a number of ways, for example, one of the more popular methods would be that of bundling professional services like that of installation/support/maintenance with said software.
And even if you have 10 times as many non-paying customers as you do paying, these non-paying customers are still creating value for your company in the form of brand advocacy. For every person they talk about your software to, you have the chance of acquiring another paying customer.
Staying King of the Hill
Okay, so you have an avenue to get enough paying customers under an open source model, but don’t you still run the risk of another company/organization taking your code and running with it? Absolutely. But this is actually an advantage if you play your cards right.
Firstly, while they can run off with your code, they can’t run off with your brand. If you’ve done a well enough job of building up your company brand then it will take a lot more than slightly better code to knock you down from your position as king.
Open source projects interact and compete with each other almost identically to their closed source counterparts. This matter of brand dominance is an issue I go into more in depth in Linux in the Mainstream, What Will it Take?.
But where open source shines above and beyond a closed source revenue model is in how difficult it truly is for forked competitors to move ahead of you in technical capabilities. In the case of Cygnus Solutions, the open source software giant of the 90’s, co-founder Micheal Tiemann once said,
They cannot displace us from our position as the ‘true GNU’ source. The best they can hope to do is add incremental features that their customers might pay them to add. But because the software is open source, whatever value they add comes back to Cygnus.
The genius of open source means that any and all code created by a fork can just be absorbed back into your original code base. This model does have its limits though. If your competition manages to surpass your development manpower then they have the opportunity to become the leader of the pack.
You also run the risk of taking your open source project in a drastically bad direction and in turn losing the support of your users. If this happens, then you give space for a fork to usurp you as king. Luckily, this can be avoided by simply listening to your users.
Not for Everyone
If you’re convinced that you should charge money for your upcoming open source project, then that’s great! Have at it! You can always revert to a completely free model later on down the road. But take caution if you’re looking to move an existing freely distributed piece of software to a paid model.
You might run the risk of trading your users that create value by contributing free code for users that create monetary value. In the case of Symless and their mouse and keyboard sharing software Synergy, when they switched from their freely distributed open source project to a paywall model with added support, they ended up alienating much of their open source community.
Luckily, they are still able to get by with their in-house developers being funded by enterprise contracts. However, their experience is not the rule, this trade-off can often result in an unsustainable model of not enough code contributors and not enough money.