For the past eight years, CiviCRM's core team have been shipping a free, powerful, industry-leading solution for non-profit organizations. This blog post examines how we have achieved this -- and what it will take to continue delivering a great product for the next eight years.
Of course, since we are an open source project, the work of the core team is just a part of a bigger picture, sitting alongside the countless contributions from our users and providers. But in this blog post, I’m focusing on how we can ensure a healthy core team to keep the project moving forward for years to come.
CiviCRM's income - an abridged history
Lets start with a quick recap of the last eight years.
In the begining, we were blessed with generous funding from of a couple of private foundations. This enabled us to assemble a team of developers to build out the first versions of CiviCRM. CiviCRM 1.0 was our minimum viable product. It worked for some, frustrated others, but set us off in the right right direction and enabled us to gain traction with a growing community of end users and service providers.
As time went on and more organisations started using CiviCRM, we were approached by hundreds - if not thousands - of organisations that loved CiviCRM but felt it was missing some functionality. Fortunately, a few of these organisations had the funds to develop that functionality, and they supplemented our ‘seed funding’ with funds to build out improvements and additions to Civi. For example, early on, the Physicians Health Program of British Columbia funded the first version of CiviCase and Alpha International funded the development of contact subtypes. More recently, funding from Scotland's colleges allowed us to write the first versions of our Wordpress Integration.
We've also explored other funding avenues. The core team has undertaken a couple of longer term contracts with some of our larger users. Our contract with NYSS has resulted in a large number of performance and scalability improvements into CiviCRM over the past few releases. And our contract with Zing has helped us deliver CiviHR, CiviSMS, and significant improvements to the API, profiles, and extensions framework. We’ve received some amount of financial support from grant making foundations like the Open Society Institute and the Kahle/Austin Foundation and have explored other avenues to diversify our income streams. We started Make it Happen a couple of years ago as a way to crowd-source CiviCRM. Although MIH had initial traction, and went a long way to helping people understand how we’d like CiviCRM to be funded, more recent funding rounds have been less successful at raising money for the project.
It is worth noting that nearly all the sources of income mentioned above are from funders paying us to carry out a specific task or fulfill a particular set of requirements.
Our current situation
Until now, we've relied on our founding grants to keep CiviCRM moving forward, competitive and relevant in the marketplace. This includes adding functionality, improving usability, keeping the underlying technologies up-to-date, improving reliability, growing the community, providing support and training, creating user and developer documentation, making it easier to customize the product, etc. These founding grants are now ending and because of this, over the last year, we have done quite a bit of work on looking at other sources of income. We created an in-app donation widget, we revamped our Make-it-Happen campaign, and we started our partner program. Out of these fundraising efforts, the partner program has been most successful - it generated $90,000 of income which we can put towards some of those harder to fund activities (thanks again, partners). Unfortunately Make-It-Happen and the in-app donation widget efforts were not that successful this year. MIH raised $20k for the core team and our and in-app widget did not increase the amount of donations on our support page.
One major source of funding we have at the moment is a multi-year $500k grant from Zing, (which we’ve used for for CiviHR, CiviSMS and the community manager position). We have also raised approx $80k from other sources (including New York State Senate, the Progressive Technology Project, The National Democratic Institute and others).
That’s a high level look at the finances. In terms of how we spend our time, here is a high level breakdown of how the core team - made up of 8.5 people - has spent its time this year. The percentages are our own estimates and intended to be illustrative - they aren’t based on any time recording or thorough analysis:
- Development / Testing 40%
- Bug fixes 20%
- Project management / specs 10%
- Forum and IRC support 10%
- Documentation 5%
- Community Management 5%
- Organising Conferences / Training / Sprints 5%
- Infrastructure (servers, repos, demos, project apps, upgrades, civicrm.org ...) 3%
- Marketing 2%
In terms of expenses, approximently 90% of our funding goes to salaries with the remaining 10% spent on travel, hosting, hardware, and other miscellaneous expenses.
The road ahead
So now we’ve recapped the past and the present, on to the future?
In essence, over the next few years, we’d like to see the community assume more responsibility for funding the project. We’d love to see more interactions along the lines of those mentioned above - funding from users, from implementers, and from foundations that are aligned with our mission. And we would love to hear your new ideas on other ways in which we can fund the project.
There are some lines that we won’t cross - CiviCRM will always remain free, libre and open source, of course! But just because something is free, doesn’t mean you shouldn’t invest it it. Take a moment to think about how important CiviCRM is to your organization's work. If it has enabled you to do things that you weren’t able to before, to build out your services, to reduce your operating costs - then it makes sense to invest in it. In two years time, our goal is to replace our founding income with funding from our community. We estimate $500K a year will ensure CiviCRM continues to thrive.
If you have ever spent time with the CiviCRM community (online or at a conference), you’ll know what an amazing and diverse bunch we are, and that we do have the skills and energy to achieve these goals. I'm looking forward to hearing your thoughts and ideas as comments to this blog post. Here are a few questions to guide the conversation.
- Are you at an organisation (or do you know an organisation) with needs or requirements that could be met from funding CiviCRM?
- Are you a fundraiser with skills or ideas that you could contribute toward funding CiviCRM?
- How can we generate more income to put towards those things that are unlikely to be funded by single organisations in our community (e.g. testing infrastructure)?
OK then - over to you...