├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | CC0 1.0 Universal 2 | 3 | Statement of Purpose 4 | 5 | The laws of most jurisdictions throughout the world automatically confer 6 | exclusive Copyright and Related Rights (defined below) upon the creator and 7 | subsequent owner(s) (each and all, an "owner") of an original work of 8 | authorship and/or a database (each, a "Work"). 9 | 10 | Certain owners wish to permanently relinquish those rights to a Work for the 11 | purpose of contributing to a commons of creative, cultural and scientific 12 | works ("Commons") that the public can reliably and without fear of later 13 | claims of infringement build upon, modify, incorporate in other works, reuse 14 | and redistribute as freely as possible in any form whatsoever and for any 15 | purposes, including without limitation commercial purposes. These owners may 16 | contribute to the Commons to promote the ideal of a free culture and the 17 | further production of creative, cultural and scientific works, or to gain 18 | reputation or greater distribution for their Work in part through the use and 19 | efforts of others. 20 | 21 | For these and/or other purposes and motivations, and without any expectation 22 | of additional consideration or compensation, the person associating CC0 with a 23 | Work (the "Affirmer"), to the extent that he or she is an owner of Copyright 24 | and Related Rights in the Work, voluntarily elects to apply CC0 to the Work 25 | and publicly distribute the Work under its terms, with knowledge of his or her 26 | Copyright and Related Rights in the Work and the meaning and intended legal 27 | effect of CC0 on those rights. 28 | 29 | 1. Copyright and Related Rights. A Work made available under CC0 may be 30 | protected by copyright and related or neighboring rights ("Copyright and 31 | Related Rights"). Copyright and Related Rights include, but are not limited 32 | to, the following: 33 | 34 | i. the right to reproduce, adapt, distribute, perform, display, communicate, 35 | and translate a Work; 36 | 37 | ii. moral rights retained by the original author(s) and/or performer(s); 38 | 39 | iii. publicity and privacy rights pertaining to a person's image or likeness 40 | depicted in a Work; 41 | 42 | iv. rights protecting against unfair competition in regards to a Work, 43 | subject to the limitations in paragraph 4(a), below; 44 | 45 | v. rights protecting the extraction, dissemination, use and reuse of data in 46 | a Work; 47 | 48 | vi. database rights (such as those arising under Directive 96/9/EC of the 49 | European Parliament and of the Council of 11 March 1996 on the legal 50 | protection of databases, and under any national implementation thereof, 51 | including any amended or successor version of such directive); and 52 | 53 | vii. other similar, equivalent or corresponding rights throughout the world 54 | based on applicable law or treaty, and any national implementations thereof. 55 | 56 | 2. Waiver. To the greatest extent permitted by, but not in contravention of, 57 | applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and 58 | unconditionally waives, abandons, and surrenders all of Affirmer's Copyright 59 | and Related Rights and associated claims and causes of action, whether now 60 | known or unknown (including existing as well as future claims and causes of 61 | action), in the Work (i) in all territories worldwide, (ii) for the maximum 62 | duration provided by applicable law or treaty (including future time 63 | extensions), (iii) in any current or future medium and for any number of 64 | copies, and (iv) for any purpose whatsoever, including without limitation 65 | commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes 66 | the Waiver for the benefit of each member of the public at large and to the 67 | detriment of Affirmer's heirs and successors, fully intending that such Waiver 68 | shall not be subject to revocation, rescission, cancellation, termination, or 69 | any other legal or equitable action to disrupt the quiet enjoyment of the Work 70 | by the public as contemplated by Affirmer's express Statement of Purpose. 71 | 72 | 3. Public License Fallback. Should any part of the Waiver for any reason be 73 | judged legally invalid or ineffective under applicable law, then the Waiver 74 | shall be preserved to the maximum extent permitted taking into account 75 | Affirmer's express Statement of Purpose. In addition, to the extent the Waiver 76 | is so judged Affirmer hereby grants to each affected person a royalty-free, 77 | non transferable, non sublicensable, non exclusive, irrevocable and 78 | unconditional license to exercise Affirmer's Copyright and Related Rights in 79 | the Work (i) in all territories worldwide, (ii) for the maximum duration 80 | provided by applicable law or treaty (including future time extensions), (iii) 81 | in any current or future medium and for any number of copies, and (iv) for any 82 | purpose whatsoever, including without limitation commercial, advertising or 83 | promotional purposes (the "License"). The License shall be deemed effective as 84 | of the date CC0 was applied by Affirmer to the Work. Should any part of the 85 | License for any reason be judged legally invalid or ineffective under 86 | applicable law, such partial invalidity or ineffectiveness shall not 87 | invalidate the remainder of the License, and in such case Affirmer hereby 88 | affirms that he or she will not (i) exercise any of his or her remaining 89 | Copyright and Related Rights in the Work or (ii) assert any associated claims 90 | and causes of action with respect to the Work, in either case contrary to 91 | Affirmer's express Statement of Purpose. 92 | 93 | 4. Limitations and Disclaimers. 94 | 95 | a. No trademark or patent rights held by Affirmer are waived, abandoned, 96 | surrendered, licensed or otherwise affected by this document. 97 | 98 | b. Affirmer offers the Work as-is and makes no representations or warranties 99 | of any kind concerning the Work, express, implied, statutory or otherwise, 100 | including without limitation warranties of title, merchantability, fitness 101 | for a particular purpose, non infringement, or the absence of latent or 102 | other defects, accuracy, or the present or absence of errors, whether or not 103 | discoverable, all to the greatest extent permissible under applicable law. 104 | 105 | c. Affirmer disclaims responsibility for clearing rights of other persons 106 | that may apply to the Work or any use thereof, including without limitation 107 | any person's Copyright and Related Rights in the Work. Further, Affirmer 108 | disclaims responsibility for obtaining any necessary consents, permissions 109 | or other rights required for any use of the Work. 110 | 111 | d. Affirmer understands and acknowledges that Creative Commons is not a 112 | party to this document and has no duty or obligation with respect to this 113 | CC0 or use of the Work. 114 | 115 | For more information, please see 116 | 117 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # A handy guide to financial support for open source. 2 | *"I do open source work, how do I find funding?"* 3 | 4 | This document aims to provide an exhaustive list of all the ways that people get paid for open source work. Hopefully, projects and contributors will find this helpful in figuring out the best options for them. 5 | 6 | The list below is roughly ordered from small to large. Each funding category links to several real examples (using topical articles or pages wherever possible instead of just a project's homepage.) 7 | 8 | The categories are not mutually exclusive. For example, a project might have a foundation but also use crowdfunding to raise money. Someone else might do consulting and also have a donation button. Etc. 9 | 10 | 11 | --- 12 | 13 | 14 | # Table of Contents 15 | 1. [Donation button](#donation-button) 16 | 2. [Bounties](#bounties) 17 | 3. [Sponsorware](#sponsorware) 18 | 4. [Crowdfunding (one-time)](#crowdfunding-one-time) 19 | 5. [Crowdfunding (recurring)](#crowdfunding-recurring) 20 | 6. [Books and merchandise](#books-and-merchandise) 21 | 7. [Advertising & sponsorships](#advertising--sponsorships) 22 | 8. [Get hired by a company to work on project](#get-hired-by-a-company-to-work-on-project) 23 | 9. [Start a project while currently employed](#start-a-project-while-currently-employed) 24 | 10. [Grants](#grants) 25 | 11. [Consulting](#consulting) 26 | 12. [Paid support](#paid-support) 27 | 13. [SaaS](#saas) 28 | 14. [Copyleft + paid license](#copyleft--paid-license) 29 | 15. [Open core](#open-core) 30 | 16. [Foundations & consortiums](#foundations--consortiums) 31 | 17. [Venture capital](#venture-capital) 32 | 18. [Restricted license](#restricted-license) 33 | 34 | APPENDIX: [Contributing to this guide](#contributing-to-this-guide) // [License & attribution](#license-and-attribution) 35 | TRANSLATIONS: [Traditional Chinese(繁體中文)](https://github.com/jserv/lemonade-stand) // [Simplified Chinese(簡體中文)](https://github.com/wizicer/FinancialSupportForOpenSource) // [Italian(italiano)](https://github.com/dakk/lemonade-stand) // [Japanese(日本語)](https://github.com/fumikito/lemonade-stand) // [Russian(русский)](https://github.com/saviorand/lemonade-stand_ru) // [Bulgarian(български)](https://github.com/BlueButterflies/HowToPaidFromOpenSource-/tree/main) 36 | 37 | **"personal effort" notes when a funding effort was led by an individual, not a project* 38 | 39 | ## Donation button 40 | 41 | *Stick a donation button on your site. Stripe and PayPal are examples of services you can use to accept donations.* 42 | 43 | #### Pros 44 | 45 | * Few strings attached 46 | * Little work involved: "set it and forget it" 47 | 48 | #### Cons 49 | 50 | * Usually not much money unless you have dedicated fundraising efforts 51 | * Need an entity to accept donations, which may take a fee for doing so. Examples are Stripe and PayPal. 52 | * To make donations tax-free for the person/organization who is donating, may need a legally charitable entity (in the United States, a 501(c)(3) nonprofit entity) to accept donations. [Software Freedom Conservancy](https://sfconservancy.org) and [NumFOCUS](https://www.numfocus.org) are examples. Harder for individuals or international donations to manage 53 | * Sometimes not clear who “deserves” money in a project or how it gets distributed. An entity like [OpenCollective](http://opencollective.com) may help with this. 54 | 55 | #### Case Studies 56 | 57 | * [ChatSecure](https://chatsecure.org/blog/sustainable-open-source-starts-with-you/) 58 | * [Git](https://git-scm.com/sfc) 59 | * [Transmission](https://www.transmissionbt.com/) 60 | * [Twisted](https://twistedmatrix.com/trac/wiki/WhyDonate) 61 | 62 | ## Bounties 63 | 64 | *Sometimes, projects or companies post bounties for open source work (ex. "fix this bug and collect $100"). There are several websites, listed below, that help facilitate the posting and collection of bounties.* 65 | 66 | #### Pros 67 | 68 | * Open to community participation 69 | * Money is tied to doing specific work (more like paying for service than donations) 70 | * Especially popular for security work 71 | 72 | #### Cons 73 | 74 | * Can create perverse incentives in a project (low quality PRs, distracting priorities) 75 | * Conflicts can arise over whether work fulfills a bounty 76 | * Usually not much money per bounty (~<$500) 77 | * Doesn’t provide recurring revenue 78 | 79 | #### Case Studies 80 | 81 | * [Gitcoin](https://gitcoin.co/explorer) 82 | * [GitHub Bug Bounty Program](https://bounty.github.com/) 83 | * [Google Patch Rewards](https://www.google.com/about/appsecurity/patch-rewards/) 84 | * [Inkscape's "funded development" system](https://inkscape.org/support-us/funded-development/) 85 | * [Internet Bug Bounty](https://internetbugbounty.org/) 86 | * [IssueHunt](https://issuehunt.io) 87 | 88 | ## Sponsorware 89 | 90 | *If you'd like to open source a project but want to ensure that others will invest in its long-term maintenance, you could tell your community that you'll open source the project once you've hit a certain amount of sponsorship. (Writer Tim Carmody refers to this as ["unlocking the commons."](https://www.niemanlab.org/2019/01/unlocking-the-commons/))* 91 | 92 | *This is similar to [Crowdfunding (one-time)]((#crowdfunding-one-time)) described below, except that instead of funding the work in advance, you build the software from the get-go, then choose whether or not to open source it depending on whether you hit your goal.* 93 | 94 | #### Pros 95 | 96 | * Can be a recurring source of revenue after initial development, depending on how you set up the conditions of releasing the project 97 | * It can be a useful signal as to whether people value the package 98 | * Gives people immediate value – people can sponsor you and get access to the package right away 99 | * Doesn’t restrict future potential growth of the project and upholds the spirit of open source 100 | 101 | #### Cons 102 | 103 | * Doesn't work for projects that are already released 104 | * Likely only works for eye-catching projects where a demo or proof-of-concept is very exciting 105 | 106 | #### Case Studies 107 | 108 | * [Caleb Porzio's `sushi` package](https://calebporzio.com/sponsorware) 109 | 110 | ## Crowdfunding (one-time) 111 | 112 | *If you have a specific idea you'd like to implement (rather than ongoing project work), a one-time crowdfunding campaign can help raise the funds you need. Both individuals and companies might be willing to donate to your campaign.* 113 | 114 | #### Pros 115 | 116 | * Few strings attached 117 | * Can be easier for an individual to legally manage via, e.g. [Kickstarter](https://kickstarter.com/) 118 | 119 | #### Cons 120 | 121 | * Lots of work involved to market campaign 122 | * Usually has to be tied to concrete outcome, perks 123 | * Usually not that much money (~$50K for one time) 124 | * Companies are not always comfortable donating to campaigns 125 | 126 | #### Case Studies 127 | 128 | * [Andrew Godwin + Django (personal effort)](https://www.kickstarter.com/projects/andrewgodwin/schema-migrations-for-django) 129 | * [Dave Gandy + Font Awesome](https://www.kickstarter.com/projects/232193852/font-awesome-5) 130 | * [GDAL Coordinate System Barn Raising](https://gdalbarn.com/) 131 | * [Monero Community Crowdfunding System (CCS)](https://ccs.getmonero.org/) 132 | * [RESTful WP-CLI](https://poststatus.com/kickstarter-open-source-project/) 133 | 134 | ## Crowdfunding (recurring) 135 | 136 | *If you'd like to fund ongoing project work, you can set up a recurring crowdfunding campaign, with a monthly or annual financial commitment that renews indefinitely (or until the donor cancels). Those who use your project regularly (including both individuals and companies) might be willing to fund your work.* 137 | 138 | #### Pros 139 | 140 | * Few strings attached 141 | * Can be easier for an individual to legally manage via, e.g. [Patreon](https://patreon.com), [Liberapay](https://liberapay.com/), [OpenCollective](https://opencollective.com) 142 | 143 | #### Cons 144 | 145 | * Harder to get commitments to recurring donations (often requires preexisting brand/reputation) 146 | * Harder to explain concrete outcomes, perks that come with recurring donations 147 | * Usually not that much money (~$1-4K monthly) 148 | * Companies are not always comfortable donating to campaigns 149 | 150 | #### Case Studies 151 | 152 | * [Babel](https://opencollective.com/babel) 153 | * [Caleb Porzio + Laravel Livewire and more](https://calebporzio.com/i-just-hit-dollar-100000yr-on-github-sponsors-heres-how-i-did-it) 154 | * [Clojurists Together](https://clojuriststogether.org) 155 | * [Eran Hammer + hapi Patreon](https://www.patreon.com/eranhammer) 156 | * [ESLint](https://eslint.org/blog/2019/02/funding-eslint-future) 157 | * [Evan You + Vue.js Patreon](https://www.patreon.com/evanyou) 158 | * [GnuPG](https://www.gnupg.org/donate/index.html) 159 | * [Ruby Together](https://rubytogether.org) 160 | * [Tom Christie + Django REST framework (personal effort)](https://fund.django-rest-framework.org/topics/funding/) 161 | * [webpack](https://opencollective.com/webpack) 162 | 163 | ## Books and merchandise 164 | 165 | *If you are an expert in a domain that other people might find useful to learn about, you could write and sell a book or series of books. You can find a publisher (like O'Reilly) or self-publish. In addition to selling books, some projects sell merchandise (ex. shirts, hoodies) to support their work.* 166 | 167 | #### Pros 168 | 169 | * Outcome not tied to project work itself, so you retain creative freedom 170 | * Can serve as marketing for the project itself 171 | * Can be recurring source of revenue after initial development 172 | 173 | #### Cons 174 | 175 | * Often not a significant source of revenue 176 | * Can distract from the core development of a project 177 | * Merchandise can have upfront costs 178 | 179 | #### Case Studies 180 | 181 | * [CocoaPods (fundraising for charity)](https://cocoapods.org/socks) 182 | * [Daniel and Audrey Roy Greenfeld + Two Scoops of Django (personal effort)](https://www.twoscoopspress.com/products/two-scoops-of-django-1-8) 183 | * [Kyle Simpson + You Don't Know JS (personal effort)](https://github.com/getify/You-Dont-Know-JS) 184 | * [Lua](https://www.lua.org/pil/) 185 | * [Sandi Metz + Practical Object-Oriented Design in Ruby (personal effort)](http://www.poodr.com/) 186 | 187 | ## Advertising & sponsorships 188 | 189 | *If your project has a large audience, you can sell sponsorships to advertisers who might want to reach them. You probably have a very targeted audience (ex. if you have a Python project, you can assume your audience is likely people who are technically familiar with Python), so use that to your advantage.* 190 | 191 | #### Pros 192 | 193 | * Business model aligned with something people are willing to pay for 194 | 195 | #### Cons 196 | 197 | * Need a large enough audience to justify sponsorships 198 | * Need to manage trust and transparency with user base (ex. no tracking) 199 | * Can be a lot of work to find and manage clients 200 | * Can involve ethical concerns about marketing 201 | * Can introduce a conflict of interest; making controversial changes could result in losing sponsors/advertisers 202 | 203 | #### Case Studies 204 | 205 | * [CodeFund](https://codefund.io) 206 | * [GitFund](https://gitfund.io) 207 | * [Hoodie](http://hood.ie/sponsoring/) 208 | * [Read the Docs](http://blog.readthedocs.com/ads-on-read-the-docs/) 209 | * [Feross's experiment with StandardJS](https://feross.org/funding-experiment-recap/) 210 | * Kite sponsorship of Minimap ([summary](https://medium.com/@nayafia/the-kite-debacle-is-democracy-at-work-6a04bc043c50)) 211 | * [Caddy](https://github.com/caddyserver/caddy) (exclusively sponsorships) 212 | 213 | ## Get hired by a company to work on a project 214 | 215 | *Companies sometimes hire individuals to do open source work. Find a company that uses the project you want to work on. Often this is a split arrangement (ex. 50% company work, 50% open source work). Alternatively, if you have an idea for a new project, find a company that would be interested in using what you produce. In these situations, having demonstrated experience you can point to will be very helpful.* 216 | 217 | #### Pros 218 | 219 | * Taps into those who have resources (i.e. companies) 220 | * Can be well-aligned with company needs 221 | * Steady income 222 | 223 | #### Cons 224 | 225 | * Usually involves “getting lucky”: no clear, repeatable path to finding this arrangement 226 | * Project already needs to be well-known and used 227 | * Person not contributing to company’s bottom line, which makes them expendable 228 | * Governance issues, a company could have undue influence over the project 229 | * Can affect project dynamics + balance 230 | 231 | #### Case Studies 232 | 233 | * [Aaron Patterson + ManageIQ and Ruby, Rails (personal effort)](http://community.redhat.com/blog/2014/09/tenderlove-joins-manageiq/) 234 | * [Donald Stufft + Hewlett-Packard and Python packaging (personal effort)](https://twitter.com/dstufft/status/594119386333609984) 235 | * [Rich Hickey + Cognitect and Clojure](http://www.bizjournals.com/triangle/news/2013/09/17/durhams-relevance-to-merge-with.html?full=true) 236 | * [Ryan Dahl + Joyent and Node.js (opens a YouTube video) (personal effort)](http://www.youtube.com/watch?v=SAc0vQCC6UQ&t=29m20s) 237 | 238 | ## Start a project while currently employed 239 | 240 | *Many open source projects started as employee side projects. The project might eventually outgrow the company, but starting it as a side project can be a great way to incubate the idea.* 241 | 242 | *If you pursue this path, make sure you understand your company's policy on open source work. Some companies encourage employees to contribute to open source during working hours. Some might treat your open source work as a company project. Don't assume anything; ask someone at your company before starting.* 243 | 244 | #### Pros 245 | 246 | * Freedom to test new ideas without worrying about salary 247 | * Can be well-aligned with company needs 248 | * Suitable for newer, experimental ideas 249 | 250 | #### Cons 251 | 252 | * Need to do it as a side project or be approved to work on it during salaried time 253 | * Risk of undue company influence 254 | * Can lead to complicated governance later down the line 255 | 256 | #### Case Studies 257 | 258 | * [Facebook and React](https://www.quora.com/How-was-the-idea-to-develop-React-conceived-and-how-many-people-worked-on-developing-it-and-implementing-it-at-Facebook/answer/Bill-Fisher-17) 259 | * [Futurice's open source program](http://futurice.com/blog/sponsoring-free-time-open-source-activities) 260 | * [Google and Go](https://golang.org/doc/faq#history) 261 | * [Mozilla and Rust](https://prev.rust-lang.org/en-US/faq.html#is-this-project-controlled-by-mozilla) 262 | * [Formidable's Sauce program](https://formidable.com/blog/2019/sauce-program/), where they pay employees for their open source contributions 263 | 264 | 265 | ## Grants 266 | 267 | *Grants are monetary gifts that do not require repayment. Oftentimes the grantmaker receives other benefits from giving you the grant, such as access to you, demonstration of impact, a report of your work, or tax benefits.* 268 | 269 | *Grants can come from many places, including companies, software foundations, philanthropic foundations, and the government. The technical and legal aspects of a grant vary greatly depending on where it comes from. For example, a company might give you a "grant" but legally treat it as a consulting invoice. A philanthropic foundation can only make grants to nonprofits, so you would need to be a nonprofit yourself, or (more commonly) find a nonprofit to sponsor you. If you're unfamiliar with grants, the best way to understand how grants work is to talk to someone who has received one before. Some examples of grant recipients are listed below.* 270 | 271 | #### Pros 272 | 273 | * Fewer strings attached 274 | * Guaranteed money can help project focus for an unbroken period of time 275 | * Gives project room to breathe and experiment 276 | 277 | #### Cons 278 | 279 | * There aren’t many software-related grantmakers (philanthropic, gov’t, corporate) 280 | * Grants are finite. Still need to find sustainability beyond the life of a grant 281 | 282 | #### Case Studies 283 | 284 | * [Andrey Petrov + Stripe Open-Source Retreat and urllib3](https://medium.com/@shazow/urllib3-stripe-and-open-source-grants-edb9c0e46e82#.45ylnxrh4) 285 | * [Chan-Zuckerberg Initiative grant program for open source software in science](https://chanzuckerberg.com/rfa/essential-open-source-software-for-science/) 286 | * [Dash Budget Proposal Tracker](https://dashvotetracker.com/) 287 | * [Dat Project](https://blog.datproject.org/2017/09/15/dat-funding-history/) 288 | * [Django + Mozilla Open Source Support](https://www.djangoproject.com/weblog/2015/dec/11/django-awarded-moss-grant/) 289 | * [Grin General Fund](http://grin-tech.org/funding.html) 290 | * [Handshake community grant program](https://handshake.org) 291 | * [Libraries.io grant applications](https://github.com/librariesio/supporters) 292 | * [ralphtheninja/open-funding](https://github.com/ralphtheninja/open-funding#grants) has a list of grants 293 | * [Segment Open Fellowship](https://segment.com/blog/segment-open-fellowship-2017/) 294 | * [Sentry Open Source Grant](https://blog.sentry.io/2019/01/29/apply-sentry-open-source-grant) 295 | 296 | ## Consulting 297 | 298 | *Consulting can be a flexible way to fund open source work. You have more freedom to structure your time as you wish (for example, consulting 30 hrs of the week and spending 10 hrs of the week on open source work). Consultants can usually charge more for their time than salaried employees because the work is less steady, they don't receive benefits, etc. If you plan on doing this type of work regularly, you will probably want to set up an LLC (or equivalent outside of the US).* 299 | 300 | *If your project is popular, you can also offer consulting & services around the project itself. For example, a client might pay you to implement the project for them, build something custom, or train them on how to use it.* 301 | 302 | #### Pros 303 | 304 | * Business model aligned with something people are willing to pay for 305 | 306 | #### Cons 307 | 308 | * Consulting requires human power, doesn’t scale well (except for rare outliers) 309 | * Business needs can distract from writing code or other tasks related to the project itself 310 | * Can be at odds with making software simple to use 311 | * Project needs to be sufficiently popular that people are willing to pay for related services 312 | 313 | #### Case Studies 314 | 315 | * [Baroque Software](http://baroquesoftware.com/) 316 | * [Neighbourhoodie](https://neighbourhood.ie/) 317 | * [OpenSSL Software Foundation](https://www.openssl.org/community/contacts.html) formerly [OpenSSL Software Services](https://web.archive.org/web/20180817114118/opensslservices.com/what.html) 318 | * [Varnish Moral License](http://phk.freebsd.dk/VML/) 319 | 320 | ## Paid support 321 | 322 | *In this model, the code is freely available, but users need to pay to receive support from the project's maintainers. That might mean charging for access to the issue tracker, office hours, a community Slack, or an SLA (service-level agreement).* 323 | 324 | #### Pros 325 | 326 | * Business model aligned with something people are willing to pay for 327 | 328 | #### Cons 329 | 330 | * Can be at odds with making software simple to use 331 | * Project needs to be sufficiently popular that people are willing to pay 332 | * Maintainers don't necessarily want to offer professional support 333 | 334 | #### Case Studies 335 | 336 | * [Fody](https://github.com/Fody/Fody/blob/master/readme.md): Must be a Patreon supporter to open an issue or pull request 337 | * [Prism](https://www.patreon.com/prismlibrary): Supporting their Patreon gives you access to their community Slack channel for project support 338 | * [Red Hat](https://en.wikipedia.org/wiki/Red_Hat#Business_model) 339 | * [Tidelift paid subscriptions](https://tidelift.com/subscription) 340 | 341 | ## SaaS 342 | 343 | *SaaS means [Software as a Service](https://en.wikipedia.org/wiki/Software_as_a_service). In this model, the codebase itself can remain open source, but you offer paid services such as charging for use of a main hosted site or for handling the hosting of dedicated instances for customers. Typically, paying customers also get priority support.* 344 | 345 | #### Pros 346 | 347 | * Can build community around open project and make money off of services for hosting 348 | * Allows open source project to focus on users, and as needs grow to help enterprises adopt the project 349 | * Can scale by number of users 350 | 351 | #### Cons 352 | 353 | * Often means the hosting needs to be cheaper than hiring a dev to run the project for you. 354 | * “Two tiers” of product support can make free users unhappy 355 | 356 | #### Case Studies 357 | 358 | * [Discourse](https://www.discourse.org/) 359 | * [Forge Laravel](https://forge.laravel.com/) 360 | * [Ghost](https://ghost.org/about/) 361 | * [GitLab](https://gitlab.com) (also uses open core licensing) 362 | * [Moodle](https://moodle.org/) 363 | * [Sentry](https://getsentry.com/) 364 | * [Travis CI](https://travis-ci.org/) 365 | * [WordPress.com](http://wordpress.com/) 366 | 367 | ## Copyleft + paid license 368 | 369 | *Companies selling proprietary software prefer to include permissively licensed code (such as MIT or Apache 2.0) rather than copyleft licensed code (like the GPL) in their software, because the latter requires them to keep the same copyleft terms for their end products. So, some open source projects use a copyleft license by default, but they sell license exceptions, proprietary licenses, or permissive commercial licenses to companies who want to bypass the copyleft requirements.* 370 | 371 | #### Pros 372 | 373 | * Business model aligned with something people are willing to pay for 374 | * Can scale well if successful 375 | 376 | #### Cons 377 | 378 | * Can be at odds with making software freely accessible 379 | * Project needs to be big enough that a customer need exists 380 | * Only works for upstream software that's being used in downstream software 381 | * There can be legal or monetary barriers to moving code from open to proprietary 382 | 383 | #### Case Studies 384 | 385 | * [Metafizzy](https://metafizzy.co) (ex. [Isotope](https://isotope.metafizzy.co/license.html), [Flickity](https://flickity.metafizzy.co/license.html)) 386 | * [MySQL](http://www.mysql.com/about/legal/licensing/oem/) 387 | * [Qt](https://www1.qt.io/faq/#_Toc_3) 388 | * [SQLite](https://www.sqlite.org/copyright.html) 389 | 390 | ## Open core 391 | 392 | *Under an [open core](https://en.wikipedia.org/wiki/Open_core) model, some aspects of the project are free, but other features are proprietary and available only to paid users. Usually this works when there is enterprise demand for the project.* 393 | 394 | #### Pros 395 | 396 | * Business model aligned with something people are willing to pay for 397 | * Can scale well if successful 398 | 399 | #### Cons 400 | * Need to have something you can charge for (which means making certain features exclusive) 401 | * Can be at odds with making software freely accessible 402 | * “Two tiers” of product support can make free users unhappy 403 | * May require a CLA (Contributor License Agreement) to accept code submissions from outside contributors while retaining the ability to relicense those submissions under the proprietary license 404 | 405 | #### Case Studies 406 | 407 | * [GitLab](https://about.gitlab.com/) 408 | * [Docker](https://www.docker.com/) 409 | * [Elastic](https://www.elastic.co/) 410 | * [Mesosphere](https://mesosphere.com/) 411 | * [Phusion Passenger](https://www.phusionpassenger.com/); see also their talk, ["Bootstrapping a Business Around Open Source"](https://www.youtube.com/watch?v=uHaMpLyMOL0&feature=youtu.be) (video) 412 | * [Sidekiq](http://sidekiq.org/) 413 | 414 | ## Foundations & consortiums 415 | 416 | *A [foundation](https://en.wikipedia.org/wiki/Foundation_(nonprofit)) is a legal entity that can accept and/or disburse donations. Because their purpose is not to make profits, they can be a great choice to signal neutrality and steward a project. In the US, foundations are either 501(c)(3) (nonprofit) or 501(c)(6) (trade consortium). Many software foundations are 501(c)(6) because 501(c)(3) requires demonstrating a charitable purpose, which can be more difficult in software.* 417 | 418 | #### Pros 419 | 420 | * Neutrality. Foundation protects the code and helps steward the community 421 | * Influence distributed across multiple donors 422 | * Can legitimize project, companies might feel more comfortable giving to foundations than individuals 423 | 424 | #### Cons 425 | 426 | * Only really worth it for big projects 427 | * Difficult to set up for IRS reasons (many do 501(c)(6) instead of 501(c)(3)), restrictions on what you can do 428 | * Requires serious community effort and diverse skills (you still need to fundraise after setting up the entity!) 429 | 430 | #### Case Studies 431 | 432 | * [Linux Foundation](https://www.linuxfoundation.org/) 433 | * [Node.js Foundation](https://www.sitepoint.com/goodbye-joyent-hello-node-js-foundation/) 434 | * [Python Software Foundation](https://www.python.org/psf/) 435 | * [Ruby Together](http://rubytogether.org/) 436 | * [Signal Foundation](https://signal.org/blog/signal-foundation/) 437 | 438 | ## Venture capital 439 | 440 | *Venture capital is a form of funding for high growth businesses. Unlike a bank loan or other forms of debt financing, venture capitalists take equity (a percent ownership in your business) in exchange for funding. Unlike taking out a loan, you don't have to repay your creditors if your business tanks. If you do succeed, however, you should expect to return capital to your investor at a multiple.* 441 | 442 | *Venture capital is "high risk high reward": VCs are more risk tolerant than banks, but they also expect a large payoff if you are successful. If you plan on raising venture capital, you should set up a business entity structured as a C Corp, preferably in Delaware. If you're unfamiliar with the venture capital process, the best place to start is by reaching out to similar founders who have successfully raised venture.* 443 | 444 | #### Pros 445 | 446 | * Institutional support can be helpful for growing a business 447 | * Large amounts of capital available 448 | 449 | #### Cons 450 | 451 | * Venture capital comes with expectations of an exit (i.e. returning the money to investors at a multiple). History suggests this is structurally difficult to achieve for open source businesses. Venture Capital isn't actually a business model but only investment capital for those who have some *other* business model for future revenue. 452 | * Venture capital can change motivations and distract from priorities 453 | * Unavailable to non-profits 454 | 455 | #### Case Studies 456 | 457 | * [Confluent](http://www.confluent.io/blog/confluent-raises-a-series-b-funding) 458 | * [Gatsby](https://www.gatsbyjs.org/blog/2018-05-24-launching-new-gatsby-company/) 459 | * [Meteor](http://info.meteor.com/blog/announcing-our-20m-series-b-funding) 460 | * [NodeSource](https://techcrunch.com/2015/02/09/nodesource-raises-3-million-to-build-new-programming-tools/) 461 | * [Npm](http://blog.npmjs.org/post/76320673650/funding) 462 | * [OSS Capital](https://oss.capital/) 463 | 464 | ## Restricted license 465 | 466 | *Restricted licenses (reminiscent of the older [shareware](https://en.wikipedia.org/wiki/Shareware) movement) are **not open source** because they do not meet [the definition](https://en.wikipedia.org/wiki/The_Open_Source_Definition) of an open source license. The source code is made available (either publicly, or to customers who pay for a license), but they may limit the freedoms to redistribute and modify or to use the software commercially.* 467 | 468 | #### Pros 469 | 470 | * Business model aligned with something people are willing to pay for 471 | * Potential to scale well if successful 472 | 473 | #### Cons 474 | 475 | * Not actually open source (so may fail to achieve many or most of the benefits of open source) 476 | * Can be controversial, erode community trust 477 | 478 | #### Case Studies 479 | 480 | * [BSL (Business Source License)](https://mariadb.com/bsl-faq-adopting), used by [MariaDB](https://mariadb.com/) 481 | * [Fair Source](https://fair.io/), used by [Sourcegraph](https://sourcegraph.com/) 482 | * [License Zero](https://medium.com/licensezero/the-license-zero-manifesto-fecb7aaf4c0a) 483 | * [Markdown Monster](https://markdownmonster.west-wind.com/) 484 | * Source code is viewable, but [a license must be purchased](https://markdownmonster.west-wind.com/download.aspx) for continued use 485 | * Project contributors are [eligible for a free license](https://markdownmonster.west-wind.com/download.aspx#Contribute) 486 | * [Onivim 2](https://github.com/onivim/oni2#license) 487 | * Commercial license is pay-what-you-want, with the minimum pre-order price increasing as they get closer to shipping an MVP 488 | * Anyone who financially sponsors the OSS project gets a free lifetime license 489 | * Commits are dual-licensed with MIT after 18 months from the commit's date to master 490 | * [Redis Commons Clause](https://redislabs.com/community/licenses/) 491 | * [Ungit switched back from Faircode to MIT License](https://github.com/FredrikNoren/ungit/issues/997) 492 | 493 | 494 | --- 495 | 496 | ### Contributing to this guide 497 | 498 | I wrote up this guide to aggregate my knowledge. I recognize the pros/cons are somewhat subjective, but they reflect my views. If you submit changes, I may consider them but do not intend to cover everyone's viewpoints. 499 | 500 | If something is factually incorrect (especially with a case study example), I welcome your edits. Case studies are organized alphabetically within each category. Also, if there's a category you know of that I missed, I would welcome that addition. 501 | 502 | ### License and attribution 503 | 504 | This guide is available under the Creative Commons CC0 1.0 License, meaning you are free to use it for any purpose, commercial or non-commercial, without any attribution back to me (public domain). If you do use it, I'd love to hear about it! (Find me here: [@nayafia](http://twitter.com/nayafia)) But you are in no way required to do so. 505 | --------------------------------------------------------------------------------