Ask HN: If we make it open source, how do we monetize it?

27 points by graderjs ↗ HN
I don't want to make a bad business decision. But I feel like we should make our product open source, with capital OSS. The reason is because it expands the value for companies considering using it by not being afraid they will lose access in future, although they can ensure that now with perpetual licenses which we currently sell.

However, if we want to have a SaaS offering, making it Open Source could encourage people to trust that relying on that will not incur future debt. This is because they can circumvent future problems by self-hosting the open source version.

The problem is, while seemingly expanding the value, it looks like we reduce the amount of value we can capture, and encourage people and companies to use it without paying, giving them a free head start to their own (internal or external) product ambitions. What incentive to they have to return the value they receive to us, unless we charge for it up front?

I don't really like this choice right now, and I don't feel we have to make it, but I feel instinctually it could be a good thing to do. It doesn't sound smart tho. What do you think? What do you do, in your startup or business or side-project?

37 comments

[ 1.9 ms ] story [ 78.9 ms ] thread
make it hard to install. provide a paid version that is easier to install. if the open source version ever gets easy to install, add new features to both of them, but only make the paid version still easy to install. control dependencies in the stack that require these features. repeat as necessary. if someone annoyingly keeps working for free on the open source version to keep making it easy to install then hire them to work on the paid version instead. use unprofessional logos and project names for the free version. keep the paid version polished. make the free version feel vaguely dirty like green vs blue text bubbles. write a lot of commentary and debate on the open source version mailing list or discord without improving the code.
To me it makes a bad impression to see that effort goes into crippling the bait rather than improving the product. That effort has to be paid for by the professional users without getting benefit in return.
Not to be glib but...

WordPress has entered the chat

WordPress.com would like to get on a sales call with you.
> The reason is because it expands the value for companies considering using it by not being afraid they will lose access in future, although they can ensure that now with perpetual licenses which we currently sell.

If it expands value this it's worth more to them.

Offer your customers the choice to purchase your software under a FOSS license. Make that (much?) more expensive than your current licensing offer.

Do NOT offer it under a FOSS license at no cost. You'll be your own competition.

> and encourage people and companies to use it without paying, giving them a free head start to their own (internal or external) product ambitions

You can offer that ability without a FOSS license. They don't also need the right to redistribute, sell, or otherwise commercialize your work for a free head start.

You can earn by offering a hosted version and releasing an open-source version under the GPL license, similar to Plausible [1]. This approach can help reduce competition with the hosted version.

Alternatively, you can release the software under the MIT license and keep certain parts of the code under an enterprise license, following the PostHog model [2]. This allows you to offer an enterprise version and charge for it.

Ultimately, the decision should be based on your target users. Small businesses may prefer the hosted version as it relieves them of hosting and maintenance responsibilities.

[1] https://plausible.io/blog/open-source-licenses

[2] https://github.com/PostHog/posthog/blob/master/LICENSE

"...we’ve become aware that there are risks associated with permissive open source licenses that corporations that don’t care about open source are happy to take advantage of..."

Interesting line from Plausible. Isn't this how commercial/non open source/propriety software came about in the first place?

Simple, you just submit your resume with this open source project and can earn money as an employee.
It depends whether your product is used by individuals or business.

For a business, there typically is a cost for competent staff/contractor to install, configure and administer any system. So you could offer paid support to alleviate that need. AFAIK, that is what RedHat did with their early Linux distro.

From what I'm seeing, technically competent individuals want everything free and are able to solve their own problems. That market might not even be worth pursuing if the unpaid support becomes a burden for your business.

Is this an actual sales objection that comes up? Are potential customers saying that making the code open source would address their concerns, or would the cost to host and maintain the software internally be too high? Would code escrow be an option, so the source only becomes available if you go out of business?
No! But a lot of non-qualified-customers talk up the benefits of going fully open-source, so I take your point it may not be the best audience to be taking advice from? That's a nice idea about code escrow (although I'm slightly troubled by the incentives it creates ha ha!) -- had never heard of that. Do you have any links?

Cost to host should be OK, it's basically fire and forget, ignoring any customizations. Requires a bit of expertise if you want to modify things, so maybe that's an issue?

There are many ways to make a project open-source and still monetize on it. I've collected several approaches here: https://github.com/PayDevs/awesome-oss-monetization

Your case sounds like you could apply an Open SaaS with an AGPL License or create an OpenCore and service special functionality in your SaaS.

If the only concern of your customers is that you could have to close the company and they don't have the code/system anymore, you could create a special (Dual-)License that is GPL as long as your company exists but becomes MIT if you close your company.

Are there any examples of this special dual-license that you mention? (For example, going from AGPL to MIT triggered by the closure of a company.) This is an intriguing idea and I wonder if it has been tried.
I don't know of an example but you should talk to a license lawyer and create a new license. Basically it's similar to "normal" Dual-licenses that say the code is GPL but you can buy a MIT license from the maintainer. In this new case either the license would state that the rights are the same as GPL until the company goes out of business (and then it would switch to MIT)
It sounds like you should not make your project open source, because there is no compelling business reason to. You only cite a speculative benefit of potentially being able to reach more customers, but it seems like these are not the people actually interested in buying your product. So I think your assessment is correct, it does not sound like a smart thing to do.
What I've heard from those I've talked to who have open sourced things successfully, they always talk about open sourcing things that work like plumbing or are foundational to what you do, but keeping the core of what you do yours.

I feel a similar inclination toward premade solutions, if something is the very core of your business or is the primary differentiator of your business then building a custom solution or creating an internal department is appropriate, if it isn't then buying a solution or using other people's software is usually the better choice.

> However, if we want to have a SaaS offering, making it Open Source could encourage people to trust that relying on that will not incur future debt. This is because they can circumvent future problems by self-hosting the open source version.

People hate vendor lock-in, but you don’t need to open source a whole self-hosted version of the system to mitigate this concern.

There’s a huge overhead to managing an open source product, issues, contributors, stability etc… and now you have another duplicate system to support

A better option might be to open source a migration tool or export tool, which would help people easily leave the platform if they really need to

Here are a few reasons that I had for open sourcing my SaaS business: https://keygen.sh/blog/all-your-licensing-are-belong-to-you/. I offer a cloud version (the SaaS), as well as a community edition and an enterprise edition. In the end, it really is going to depend on your market. But generally, people overestimate how many people want to self-host and manage their own instances of open source software. Most people want something that works, without any of the maintenance burden. I mean, just look at Plausible Analytics -- easy to self-host, yet they’re bringing in >$1M ARR with their managed cloud service.
The simple answer is: don't. The code behind Google search isn't public, the code behind Stripe isn't public, Netflix doesn't release source for how their DRM works, and so on. Absolutely give back to the community, but you don't have to put yourself in the poorhouse in the process.
+1 for a realistic and grounded answer
I would say it depend on his strategy, for example he can provide enterprise solution that will bring money. An example is the popular ERP Odoo (odoo.com) that is fully open source and also provide some enterprise solution.
Our company has a free downloadable version, but it isn't open source. There are also features which require a license, and we offer both SaaS hosting and commercial support. I'm sure you can run the same playbook with OSS.

Here's our license: https://fusionauth.io/license

It can be a little confusing (what's free and what isn't requires a FAQ: https://fusionauth.io/license-faq ).

We get some pushback on "why aren't you OSS", but we counter that with a code escrow offer and no one has taken us up on it yet.

We also OSS a lot of other aspects of our system (SDKs, docs, core infra like our JWT processing code), which scratches some of that itch for our devs and community.

That said, I think it depends on what your product is. If it isn't dev focused, then I'd definitely stay away from OSS. If it is, are you in a land grab area with strong network effects? If so, OSS might make sense. You really can only go one way (really hard to walk it back) so I'd think about it from many angles before making the choice.

Unfortunately, it depends on a lot of factors.

The questions you’ve raised above are the right ones, but there are more, and given the various Pro-cons, unfortunately it’s hard to give any advice without knowing specifics.

How big is the market? Will those who adopt the open source version ever be your customers or will open sourcing it actually expand the market? And so on ..

I have never paid for a SaaS software because it's opensource. If it's opensource, I'm more likely to run it. My concern with SaaS is more around your security/data policy. Work on that, convince your customers that you will be a good custodian to their data.
You can paly the pay it forward game in different ways. Open sourcing is branching out from major priorities, it demands a different level of commitment.

Don't do it.

The biggest problem you are going to have is marketing / getting someone to try your product. Trying to launch a new product is going to cost you more if you don't go the open source route.

Worrying about someone copying is natural but you quickly realize that's not your biggest issue. It's so hard to get marketshare/trust that open source becomes an easier sell. If I could get everyone in the world to self host my product I would be a billionaire.

You can make money by: You can sell specialized versions, addons, create a two way marketplace, sell merch, ask for donations, offer support, sell adspace on docs, sponsorship, donations, books, put on conferences, certifications, sell tutoring and of course sell support. What a lot of people do is become an expert and consult off of the popularity.

If I had little money or a weak marketing plan I would open source. You can always sell a pro plan just remember to identify who will pay and make a version for them specifically.

Open sourcing slows down development to keep the tradeoffs in mind

I know this is hacker news, and this'll get down-voted to oblivion, but alas its worth saying, so I'll say it.

The number of possible customers , who care whether your product is ooen-sourced or not, iz a rounding error away from zero. [1]

The pie chart ideas follows:

A) the big slice goes to companies who've never heard of open source.

B) the next slice are ones who've heard of it, but they lack the tech to make it a useful feature.

C) then there are those who think it's a great idea, but ultimately want a good program now, not some source code in the future.

To illustrate the point, drive down your high street, or ho yo your mall, or visit your local industrial park. Go past each business in turn. Wonder if he cares about open source. Wonder if he runs Word/Excel or Open Office.

In my career I've had a small number of customers who cared about the source code. I simply burned it onto a CD and gave it to them. Quite frankly it's useless to them. He the time they've hired a developer, and he's spent time just getting the code so it'll compile, he's spent 10x more than the software cost.

I agree selling is hard when you don't have a "history". For every product we ever made, the first 10 sites are the hardest to sell. You're asking people to take a risk. You need to convince them that you are worth the risk. You need to reduce that risk as much as possible, but IMO providing source code does nothing. [2]

[1] this can be product dependant. If you are selling to Linux OpsDev then sure. But assuming some not-sold-to-techies thing, it's reasonable safe to assume that your customer base has never heard of open source.

[2] in cases where we've built custom software for folk which is how we started, we've negotiated ownership of the code. Typically we own it, but we give it to them when we no longer want to be involved in the project. This allows dome other programmer to maintain it going forward.

If it's dev focused it's a much easier sell to be open source than to not be. I'm building an API based SaaS and I basically have to be open source to be trusted and used by devs.
Agreed. Although selling to devs is its own kind of hell. Good luck with that (seriously).
opensource was created as a financial weapon against proprietary software (and businesses). whilst it is possible with opensource to make a company that generates revenue it is significantly harder. don’t. proceed with caution and consider alternative approaches such as the prosperity license (which isn’t “opensource” as per OSD) but folks are having some success with it. go look at the dependabot repo. it’s an open community that accepts contributions. the GitHub issue tracker is there. people can still see the source code and self-fix problems. best of both worlds.

if you want to derisk the intellectual property from the SaaS company and do a pledge to the community then setting up a seperate entity that holds the copyright to the source code and do a commitment to community that after X years after $event the code will become opensource under OSD that’s a potential thing you could do as well.

if you build a mega successful company then you could later opensource the IP as well but the best thing to do is to consider sustainability of the project - ie making money.

giving away all your stuff for free is not a (easy) path to make money and many venture backed companies over the last three years are starting to learn the lesson the hard way now that capital is drying up.

There is no one type of value. Some people place 0 value on non OSS solutions, for example, because avoiding vendor lock-in is a requirement.

Many open source projects make it by providing paid support, hosting, etc.

Also understand that you are also receiving value from OSS in the sense that you receive potentially unlimited free contributors.

It really depends on what you are building and the community you are trying to target.

>What incentive to they have to return the value they receive to us, unless we charge for it up front?

Absolutely none, and that's the entire point, and a feature of OSS, not a bug. Open sourcing your code is not a business decision, it is a moral statement that you consider the freedom of end users to be a fundamental human right. You no longer own code you release as open source, it belongs to the community, with the only obligation being to preserve that freedom downstream. Why would you demand compensation for something that isn't yours?

If you're not willing or able to make that statement and stand behind it, don't release your code as open source. If you do, don't be like a lot of developers nowadays who complain that big companies are making millions of dollars on their OSS without giving anything back.

you can watch interviews from COSS (commercial open source) company founders, monetization is discussed in every video (see timestamps in video descriptions) https://www.youtube.com/@algora-io

I'm the host of the podcast :) hope this helps!

One issue I have with "open source" projects that also offer a SaaS alternative, is that the open-source one is usually a different version than the SaaS one. They keep the best features for their paid solution and also often make maintaining the self-hosted one harder, so you have reasons to switch to their paid option. So the open-source one is often just part of the marketing funnel.