I am guessing it's a hard thing to do unless you slam dunk something that hits absolute critical mass.
I have a bunch of repos with 500-1000+ stars. I've gotten folks who emailed me entire stories on how a project I created helped them get over being blocked on something, or how it kick started them into getting more involved with programming. I've on many occasions had folks email me asking me why I put some of the things I do up for free on GitHub.
All in all I've made around $17 in almost 10 years through donations (GitHub sponsorships).
But I don't do it for the money, although I'll admit it would be nice to receive income for doing something you'd happily do for free anyways. I create almost all of my projects based on a personal need and the idea of openly sharing what I can is built into how I operate given how much I've learned from others, I feel very strongly about returning the favor when I can with no strings attached.
I’ll second this. It seems that a lot of people assume it’s possible (or easy?) to make a living from open-source projects.
It’s probably due to a few famous projects being massively successful (think Vue.js), but I believe it’s directly tied to the project's size (audience), the maintainers' activities (conferences, etc.), and the type of audience. This last point is important—individuals are more likely to donate, while companies often need months of convincing, and it usually doesn't work, or they expect their logo everywhere with analytics (CTR, etc.) to justify it, which is basically advertising.
I have a sizeable seven-year-old open-source project (Mockoon) and, over its lifetime, I’ve received low four figures in donations, which is awesome, but far from enough to make a living from it.
Now, I’m creating a cloud version of the software, which has started generating revenue. It’s a lot of work, but leveraging the open-source success and sell something seems like a safer path.
>> It seems that a lot of people assume it’s possible (or easy?) to make a living from open-source projects
Eh? The only people who think you can make a living from Open Source (without working for a corporate) has never bothered to try. The number who have done it is a rounding error from zero. It's quite literally the hardest way to make money in software.
>> individuals are more likely to donate, while companies often need months of convincing, and it usually doesn't work, or they expect their logo everywhere
Companies cannot donate. People make donations, not companies. The only way to get a person at a company to send you money is by sending them an invoice for pretty much anything. Since you're giving the code away for free, advertising is pretty much all what you've got left to sell.
Repeat after me - Donations are not a business model. It's a hobby model.
Hosting can work at small scale. But I can host your product for less than you can. So if you're popular I can just host your software, and siphon off a chunk of your market.
I've been able to quit my job and work full time on Marginalia Search, and starting with 8 months expenses' worth of savings and an incoming grant back in 2023, the project is now funded so I can keep going for several more years.
Seems fairly important to somehow write or talk about what you do[1]. Building stuff and never telling anyone about it never got anyone paid. You don't need to become a shill, but the world needs to learn about what you're doing. Will say with full certainty I would not have been able to quit my job and do this full time if I didn't blog about my misadventures.
Risk of this being mostly survivorship bias, but I think in general it's helpful to build something that's more of an end product and not a library or some other widget in the making of products. Possibly also helpful if yours is an ambitious project that somehow seems doable. Ladybird is possibly an even better case of this going well. Exception possibly being if you end up as a linchpin tech like curl.
In general I don't think patreon/github/etc. donations will ever add up to much than coffee money. Most of my money has been from grants, one large donation from some rando anonymous person, and a nonprofit.
I do it by working for Canonical. The vast majority of our projects are open source. Yes, Canonical's application process is very long and thorough, but it's a good company to work for. Those aren't "my" projects, of course; I'm still very much working for an employer, but it's nice that our development effort is in the open and freely available. I also maintain a few of my own open source projects, for which (via GitHub Sponsors) I get about enough for one coffee date with my wife.
Canonical’s interview process sounds like more than just thorough, it sounds completely insane. I can’t believe people actually put up with that rubbish to have a chance to work at such a mediocre company.
I am not an OSS contributor, so I have no personal experience whatsoever in this context.
But I saw this talk by Evan Czaplicki (author of Elm) a while ago.[1]
The talk is primarily about the economics of open-source programming languages, but I think that a lot of the issues discussed overlap with other areas of OSS.
From the description of the youtube video:
> In the mythology of open source, programming languages are created by people who seemingly have no direct economic function. They are just really good at compilers (somehow) and have a house to live in (somehow) and have a lifetime to devote to creating a useful programming language (somehow!)
> We will examine specific organizations that create programming languages. Where do the salaries for compiler engineers come from? How does Go end up with 5 engineers and Dart end up with 30? Who signs off on these expenses and why? Does this put any boundaries on language design or development practices? And how do the economics work for people outside of the major tech corporations?
> My goal is to give the talk I needed to hear 10 years ago when I was just starting on Elm. By clearly delineating the many variations of corporate funding and independent funding, I hope users will come away with a better foundation for evaluating and comparing programming languages.
Either work for a company who has an interest in the software, or do consulting where you help customers use/adapt the software in their specific context. Those are basically the options that actually work.
Unless you are famous, its unlikely you will get enough donations to be meaningful.
I contribute to OSS very often, mostly sponsored by the company I work for (we're in video streaming, and we're too small to build everything from scratch). Outside of company hours, I work on my personal streaming project [1], and I've had a couple of people find the "Buy me a coffee" button and GitHub sponsors page. While it is not a sustainable amount of sponsorship, the joy of seeing people support with a few bucks feels incredible. It's a passion project after all.
I used to maintain a private fork of an OSS project as I assumed my company wouldn't want specific features out there (especially since they gave a competitive advantage). I eventually met up with the maintainers of that project with a situation I couldn't figure out and they were so eager to help. After, I went to legal and told them it didn't feel fair to have OSS maintainers help out but keep it private, and to my surprise, they agreed. All I had to do was ask, and not assume.
If you’re aiming to be a "rogue" OSS contributor—essentially an independent developer thriving off open-source work—you’ll need a mix of strategy, skill, and visibility. Here’s how you can make it work:
Bounties & Sponsored Issues – Platforms like GitHub Sponsors, Bountysource, and Gitcoin offer paid opportunities to fix issues, build features, or improve security in open-source projects. Prioritize projects with active communities and funding.
Donations & Sponsorships – Set up GitHub Sponsors, Open Collective, or Patreon. This requires consistently contributing to high-impact projects and building a personal brand around your work.
Hackathons & Grants – Many OSS-focused hackathons and grants (like those from Mozilla, Linux Foundation, or NLnet) provide funding for impactful contributions. Target projects that align with grant programs.
Freelance Consulting & Custom Features – Companies often use open-source software but need custom solutions. If you’re an active contributor, businesses may pay for enhancements, bug fixes, or integration support.
Crowdfunding Specific OSS Projects – If you build something valuable (like a plugin, CLI tool, or framework extension), you can crowdfund its development via Kickstarter or similar platforms.
Merge-First Mindset – The key to sustaining this lifestyle is ensuring your PRs actually get merged. Engage with maintainers, follow their contribution guidelines, and build a reputation for delivering high-quality, non-disruptive code.
Content & Community Engagement – Write blogs, create tutorials, or host livestreams showcasing your contributions. Visibility brings opportunities.
It’s not the easiest path, but if you have the skills and discipline, you can make a living while staying independent.
Working:
You make a living getting a job where people pay you to do something.
Volunteering
Donating your time to do something that others may find interesting
or appreciate.
Yoo do it because you can and or you want to and or feel it as a duty or calling.
If you are serving meals to the homeless, it is a really bad way to get paid.
These days the common approach seems to put out some decent project.
if you get traction and people get involved and like it, you create a
pro version that is not open source, then you chance the open source
license of the "core / basic" version and then profit.
I have a bunch of repos with 500-1000+ stars. I've gotten folks who emailed me entire stories on how a project I created helped them get over being blocked on something, or how it kick started them into getting more involved with programming. I've on many occasions had folks email me asking me why I put some of the things I do up for free on GitHub.
All in all I've made around $17 in almost 10 years through donations (GitHub sponsorships).
But I don't do it for the money, although I'll admit it would be nice to receive income for doing something you'd happily do for free anyways. I create almost all of my projects based on a personal need and the idea of openly sharing what I can is built into how I operate given how much I've learned from others, I feel very strongly about returning the favor when I can with no strings attached.
It’s probably due to a few famous projects being massively successful (think Vue.js), but I believe it’s directly tied to the project's size (audience), the maintainers' activities (conferences, etc.), and the type of audience. This last point is important—individuals are more likely to donate, while companies often need months of convincing, and it usually doesn't work, or they expect their logo everywhere with analytics (CTR, etc.) to justify it, which is basically advertising.
I have a sizeable seven-year-old open-source project (Mockoon) and, over its lifetime, I’ve received low four figures in donations, which is awesome, but far from enough to make a living from it.
Now, I’m creating a cloud version of the software, which has started generating revenue. It’s a lot of work, but leveraging the open-source success and sell something seems like a safer path.
Eh? The only people who think you can make a living from Open Source (without working for a corporate) has never bothered to try. The number who have done it is a rounding error from zero. It's quite literally the hardest way to make money in software.
>> individuals are more likely to donate, while companies often need months of convincing, and it usually doesn't work, or they expect their logo everywhere
Companies cannot donate. People make donations, not companies. The only way to get a person at a company to send you money is by sending them an invoice for pretty much anything. Since you're giving the code away for free, advertising is pretty much all what you've got left to sell.
Repeat after me - Donations are not a business model. It's a hobby model.
Hosting can work at small scale. But I can host your product for less than you can. So if you're popular I can just host your software, and siphon off a chunk of your market.
Seems fairly important to somehow write or talk about what you do[1]. Building stuff and never telling anyone about it never got anyone paid. You don't need to become a shill, but the world needs to learn about what you're doing. Will say with full certainty I would not have been able to quit my job and do this full time if I didn't blog about my misadventures.
Risk of this being mostly survivorship bias, but I think in general it's helpful to build something that's more of an end product and not a library or some other widget in the making of products. Possibly also helpful if yours is an ambitious project that somehow seems doable. Ladybird is possibly an even better case of this going well. Exception possibly being if you end up as a linchpin tech like curl.
In general I don't think patreon/github/etc. donations will ever add up to much than coffee money. Most of my money has been from grants, one large donation from some rando anonymous person, and a nonprofit.
[1] Basically this: https://www.codusoperandi.com/posts/increasing-your-luck-sur...
But I saw this talk by Evan Czaplicki (author of Elm) a while ago.[1]
The talk is primarily about the economics of open-source programming languages, but I think that a lot of the issues discussed overlap with other areas of OSS.
From the description of the youtube video:
> In the mythology of open source, programming languages are created by people who seemingly have no direct economic function. They are just really good at compilers (somehow) and have a house to live in (somehow) and have a lifetime to devote to creating a useful programming language (somehow!)
> We will examine specific organizations that create programming languages. Where do the salaries for compiler engineers come from? How does Go end up with 5 engineers and Dart end up with 30? Who signs off on these expenses and why? Does this put any boundaries on language design or development practices? And how do the economics work for people outside of the major tech corporations?
> My goal is to give the talk I needed to hear 10 years ago when I was just starting on Elm. By clearly delineating the many variations of corporate funding and independent funding, I hope users will come away with a better foundation for evaluating and comparing programming languages.
[1] https://www.youtube.com/watch?v=XZ3w_jec1v8
Unless you are famous, its unlikely you will get enough donations to be meaningful.
I used to maintain a private fork of an OSS project as I assumed my company wouldn't want specific features out there (especially since they gave a competitive advantage). I eventually met up with the maintainers of that project with a situation I couldn't figure out and they were so eager to help. After, I went to legal and told them it didn't feel fair to have OSS maintainers help out but keep it private, and to my surprise, they agreed. All I had to do was ask, and not assume.
[1] https://superstreamer.xyz/
Bounties & Sponsored Issues – Platforms like GitHub Sponsors, Bountysource, and Gitcoin offer paid opportunities to fix issues, build features, or improve security in open-source projects. Prioritize projects with active communities and funding.
Donations & Sponsorships – Set up GitHub Sponsors, Open Collective, or Patreon. This requires consistently contributing to high-impact projects and building a personal brand around your work.
Hackathons & Grants – Many OSS-focused hackathons and grants (like those from Mozilla, Linux Foundation, or NLnet) provide funding for impactful contributions. Target projects that align with grant programs.
Freelance Consulting & Custom Features – Companies often use open-source software but need custom solutions. If you’re an active contributor, businesses may pay for enhancements, bug fixes, or integration support.
Crowdfunding Specific OSS Projects – If you build something valuable (like a plugin, CLI tool, or framework extension), you can crowdfund its development via Kickstarter or similar platforms.
Merge-First Mindset – The key to sustaining this lifestyle is ensuring your PRs actually get merged. Engage with maintainers, follow their contribution guidelines, and build a reputation for delivering high-quality, non-disruptive code.
Content & Community Engagement – Write blogs, create tutorials, or host livestreams showcasing your contributions. Visibility brings opportunities.
It’s not the easiest path, but if you have the skills and discipline, you can make a living while staying independent.
Working: You make a living getting a job where people pay you to do something.
Volunteering Donating your time to do something that others may find interesting or appreciate. Yoo do it because you can and or you want to and or feel it as a duty or calling.
If you are serving meals to the homeless, it is a really bad way to get paid.
These days the common approach seems to put out some decent project. if you get traction and people get involved and like it, you create a pro version that is not open source, then you chance the open source license of the "core / basic" version and then profit.