The Matrix.org Foundation is a non-profit. It carries out costly programs which are only supported by donations. The Foundation’s biggest donor by far has been Element since the Foundation’s early days. Individual donors have supported the Foundation since the very beginning as well, before the Foundation opened up more recently to corporate sponsorship.

The Foundation also wants to connect together the Matrix users, partners in the ecosystem, as well as people and organisations who share our vision with the programs it is running. It also needs to diversify its base of contributors, and is conducting several programs to do so. We’re going to release a public roadmap soon™ so everyone knows what the Foundation intends to do and how it’s using donor’s money.

Managing donations, memberships and fundraising campaigns represents significant extra work. But this is a mission we deem important to stay true to our decentralised ideal. This extra work can be made significantly easier by creating processes and relying on tools streamlining them. Those tools are often bundled together in a solution called a Constituent Relationship Manager, the non-profit equivalent of a Customer Relationship Manager.

We defined what were the features we were interested in, what tradeoffs we were ready to make or not, and then evaluated options.

Features set

Membership management

This is one of the most important tasks of the CRM. At the very least, it needs to be able to keep track of the individual and organisational members of the Foundation, when they joined, when their membership is due for renewal, and offer solutions to automate communications around renewal and adjusting donations.

Being able to track their donations regardless of the payment processor used by the Foundation (Patreon, Donorbox, Libera Pay, Paypal, credit card) and tie them to the member would allow us to streamline the membership process, saving a lot of time both for prospective members and for Foundation staff. A self-service portal for people to adjust their donations and communication preferences would be a plus.

The Foundation strives for more transparency and will issue yearly public reports. While it’s not a strict requirement, being to able to reach out to donors directly to let them know what we have done would be useful. The point of such a feature is not to harass donors for bigger donations, but to reassure them that the Foundation is aligned with their beliefs and to let them know how they can help Matrix taking over the world. This concerns mostly direct communication by email. We are not particularly interested in a social media management suite.

The tool needs to make it possible to export the list of members at any point in time so it can be imported into an election system. It is also absolutely critical that the tool is GDPR compliant and allows us to dump and remove the users data easily upon request.

Grant management

We believe grants are going to take a significant proportion of the income of the Foundation. From a strictly monetary perspective, a single grant can weigh several thousands of individual members. That makes them particularly important to track and follow.

The CRM should offer an option to track the various organisations issuing grants, the grant campaigns, whether we applied or not, all the documents we sent and received, as well as what and when are the next steps in the grant process.

Tracking this manually by creating the organisations, programmes etc in the tool is acceptable, but the integration with an existing grants database would be a significant plus to pre-populate the fields when logging new grant opportunities.

Opinionated and focused

Flexible and generalist frameworks are great for companies that want to spend time making them the perfect fit for their use case. The Matrix.org Foundation is still rather small and would like opinionated tools that require little configuration. We are small enough to have some flexibility around the tools.

We have refreshed the matrix.org website recently, and we are keen on keeping a lightweight website with a very light dependency on scripts. We are not interested in a CRM to replace our website.

A subscription/donation form to embed on the website would be appreciated, but is not a strict requirement. We are happy to link to a third-party page to manage donations too.

We rely heavily on GitHub to track projects, and it’s way too early in the Foundation’s life to consider getting a HR suite. For these reasons we are not interested in an ERP that would allow us to track tasks, hours, or hiring processes. We also rely on third-party accounting software, so this is also not a requirement for us.

Service over software

Building the tools to power open and decentralised communications is our mission. When two solutions offer the same feature set, we will favour the open source and interoperable one.

The Matrix.org Foundation is also a very small team: its only employee is its Managing Director, helped by me in my quality of Director of Program Development. We need to be pragmatic in our choices and make sure we use the most efficient tools so we can focus on where we deliver the most value. Fighting a CRM and maintaining our own infrastructure is very much not where we deliver the most value. Spending time configuring a generic CRM to apply it to nascent fundraising processes would also be overwhelming and not the best use of our time.

We are not just interested in good software that gets out of the way: we are also interested in a partner and a service. We are primarily looking for a SaaS product without any development requirement. The partner needs to be mindful of the learning curve when it comes not only to discovering their tool, but also when it comes to the context in which it is used. We expect the partner to document the tool itself but also the kind of strategic activities it can unlock, and the principles behind it.

The tool will not be standalone and will be integrated in the Foundation’s ecosystem. The partner needs to provide an API we can rely on to extract, add or alter data. A typical example would be displaying fundraising progress bars on the Foundation’s statically generated website: we want a CI to be able to regularly pull the data from the tool, to update the Foundation’s website.

Evaluating Options

After evaluating our options in November 2023, we came up with this table. All the data might not be up to date depending on when you read the blog. We also didn’t take the time to carry out a proper RFI: we only collected information that was publicly and easily available.

SolutionCiviCRMSuiteCRMErxesOdooCommitChangeMauticBloomerangCharityEngineKeela
Donor managementYesManualNoNoYesNoYesYesYes
Membership managementYesNoNoPaid module? TBCNoNoTBCYesYes
Self-service member (donor) portalTBCNoNoNoTBCNoYesYesTBC
Integration with payment processors (Patreon, Donorbox, LiberaPay, Credit Card)Development requiredNoNoTBCStripeNoSomeCredit Card only?Credit Card, Stripe, PayPal
Constituents exportYesYesNoNoYesTBCTBCYes
Grants trackingYesVia sales pipelineVia sales pipelineVia sales pipelineNoNoYesYesYes
Grants database integrationNoNoNoNoNoNoTBCTBCNo
Open-SourceYesYesYesYesYes (Houdini Project)YesNoNoNo
Hosting optionVia partnersYesYesYesYesVia partnersYesYesYes
Tool documentationExtensiveDescriptive and technicalIncompleteUse case orientedNone?TechnicalUse case orientedComplete but loosely structuredPaid (via Professional Services)
Fundraising supportNoNoNoNoNoNoYesYesNo
Well documented APIYesYesDocs seem incompleteLimitedYesYesYesRest API is poorly documented and feels like a SOAP API shoehorned into a REST oneNo API?
Pricing for 10 admins and 1000 contacts (including non-members)Depends on the partner, regularly requires costly custom development£95/month$49/month€29/monthFee taken on donations$119/month$350 - $700/month$99/month + donations fee
Pricing for 10 admins and 5000 contacts (inluding non-members)Depends on the partner, regularly requires costly custom development£95/month$49/month€29/monthFee taken on donations$239/month$350 - $700/month$209/month + donations fee

Going for the simplest

Eventually, we realised that the tool we had already settled on to collect donations also gained support for membership management, and allowed exporting data in a CSV file. Since we have similar ethical fundraising standards as the EFF, we’re not interested in tools to profile and pester our donors for larger donations. We settled on Donorbox because we already use it for donations, it already works, it doesn’t cost much, and it can be extended later with other tools.