This work would not have been possible without a generous grant from the Bill & Melinda Gates Foundation. We would like to extend special thanks to Sophie Snowden for continued advice and support in building and testing this giving infrastructure, as well as the Better Giving Studio teams for facilitating initial work on the Giving Commons concept. We also would like to thank our team members who worked to bring this project to life, including Rahul Gupta-Iwasaki, Dave Sharp, Santiago Hernandez and P22 Studio.
As the world moves online and the face of wealth gets younger and younger, philanthropic behaviors are shifting. Today’s donors expect a streamlined, high-touch interface that rivals their favorite consumer brands’ digital user experience, which places a new generation of tech-savvy donors at odds with an antiquated giving industry.
Innovative solutions to our most pressing problems exist within the nonprofit sector, but they are often under-resourced. Increasingly, nonprofits struggle to keep pace with the private sector’s renewed emphasis on customer experience. Furthermore, while focusing on their mission, many nonprofits aren’t able to experiment, run tests, analyze data, and ultimately raise money efficiently from today’s donors.
This means that nonprofit executives are caught in an unending feedback loop where they have to spend more time and more money acquiring new donors, and less time on programmatic outcomes. This, in turn, reduces the organization’s overall ability to achieve impact, making gift renewals from difficult-to-find existing donors even harder to come by. It’s a flywheel that’s rotating in the wrong direction.
Countering this trend will require innovative new giving experiences that meet donors where they are, that speak to the new ways in which people learn, consume, and relate to each other and the organizations they care about.
The problem is that there’s a high barrier to entry for people and organizations that do want to build digital giving experiences. Especially at the startup stage, access to data and the cost and complexity of implementing new ideas and complying with regulatory requirements around giving can be prohibitive, stopping people from ever even trying to create something new and stifling innovation.
Every.org experienced this problem firsthand - while we started building the platform in the early months of 2019, it took our team of 4 engineers over 6 months of work tying together various data sources, building integrations, and understanding the regulations before we could accept a single donation.
And, this was the problem that Every.org and several other players in the philanthropic space sought to answer when we met at a brainstorming workshop led by the Bill & Melinda Gates Foundation’s Better Giving Studio in mid 2021.
After several days of sharing our experiences, our working group came to the conclusion that we needed a shared infrastructure to create a common and openly accessible layer for giving - what we called the Giving Commons. Rather than every new giving product having to reinvent the wheel and build the same giving infrastructure as everyone else before even beginning to implement their unique idea, we could create shared infrastructure to reduce the cost to startup and help nurture more innovation.
As a not-for-profit whose mission is building accessible giving infrastructure, Every.org wanted to explore this concept of the Giving Commons further. Over the last 12 months and with the generous support of the Gates Foundation, Every.org has been working on building an open toolkit of embeddable components and API endpoints to make giving easier. We call this toolkit the Every.org Charity API. In the rest of this post, I’d like to share more about the API itself, exciting projects that people have been able to build, and key learnings for giving infrastructure going forward.
The Every.org Charity API
For this pilot of the Every.org Charity API, we decided to focus on facilitating 3 core actions in the giving loop:
- Search for a nonprofit to support
- Learn more about a given nonprofit
- Easily and simply donate to a nonprofit
We felt that these actions are essential to most giving flows, and together they form a versatile core that can be easily remixed into new giving experiences without being overly prescriptive on what those experiences could look like.
These actions were enabled by open-source embeddable components as well as API endpoints all powered by Every.org’s existing infrastructure and data. We provided access to both the components and the endpoints for free to reduce the barrier to using them as much as possible.
All together, the elements of the toolkit were:
- Easy-to-use donation links and buttons and a webhook to share donation information
- API endpoints to search, browse, and learn more about nonprofits
- A documentation website
- A self-serve dashboard for provisioning API keys
- A donation disbursement service
Easy-to-use donation links and embeddable buttons
To help people building new giving experiences enable their users to easily give to a nonprofit, we built donation links and embeddable buttons that let those partners take advantage of the donation flow that we’d already built for the Every.org website. First, we shipped an update to the donation flow that let partners create custom links to shape the donation experience. Parameters like
success_url let them redirect the donor back to their own app after completing the donation.
Then, we created an open source donate button which paired the customizability of the donate link with a pre-styled donation button that API users could embed directly into their websites.
The link provides flexibility for more advanced users in terms of where and how a donation call-to-action appears, while the embeddable button lets users create a good looking and branded button as simply as copy-pasting some text.
We also released a webhook which notifies API partners whenever their users create a donation, closing the loop to enable them to use information about completed donations in their own apps.
In order for API partners to help their users figure out where to give, we built nonprofit search, browse, and “learn more” API endpoints.
For those unfamiliar with API endpoints - they are the building blocks via which digital products communicate with each other, and our API endpoints enabled API users to ask questions of Every.org’s extensive nonprofit dataset, rather than having to do the work to create one themselves.
The search endpoint uses machine learning to return the most relevant results to an API partner based upon the query they provided.
The browse endpoint lets API partners surface relevant nonprofits based upon Every.org’s nonprofit categories which include both more general buckets like “Health”, “Education”, and the “Environment” to more specific interests like “Women-led” nonprofits or those focused on “Disease Prevention”.
Finally, the “learn more” endpoint gives API partners access to more in-depth information about a given nonprofit, including a longer description and logo and cover photos.
To reduce the friction for developers as they built on top of the API and enable us to support more API partners, we launched a website for our API documentation which made information on using the API freely and easily accessible. And, as the documentation is itself open-source, API users can themselves submit feedback and improvements to better the service for all users.
Also in the vein of reducing friction for developers - to enable them to start using the API without needing to email or otherwise interact with us, we launched a self-service portal to provision API keys (the passwords that enable access to API services).
In the first roughly 9 months of the project during which API partners had to email us to request an API key, we granted 39 keys, while in the 2 months since launching the self-serve dashboard, we granted another 35 keys. The doubling of the pace of new keys without any new marketing around the API shows the power of simply reducing the friction to get started.
The final element of the Charity API that we built was disbursements as a service. It wasn’t initially planned as part of the pilot - rather, it came in response to requests from early API partners that we help them disburse donations they’d collected to nonprofits. Instead of facilitating the donations through the every.org-built donation flow (which the donation button and link do), they wanted to only process and disburse the donations through Every.org on the backend so that they could fully control the frontend that their users experienced.
Given the complexities around processing disbursements for third parties, disbursements is the only part of the API that we haven’t made openly-available yet - those who want to use the service need to contact us at email@example.com. However, even with limited access, the disbursements feature has facilitated roughly 1 million dollars in donations.
What they built
When we first proposed running this pilot in late 2021, our goal was to test the toolkit with three integration partners raising at least $500,000. Since then, we’ve had 60 API partners request 74 api keys and raise over $2 million. API users ranged from individuals looking to build a personal project, to researchers who wanted to build real giving apps to test their hypothesis, to startups looking for a way to launch and iterate quickly, to some of the biggest players in philanthropy looking for help prototyping new features. Here are some of the highlights:
GivingMultiplier was the first external partner to use Every.org’s giving infrastructure - starting even before we began the Charity API pilot. Indeed, much of Every.org’s work during the Charity API pilot was transforming the infrastructure that we’d built for GivingMultiplier from a one-off integration into components and services that could be easily be used by and scale to many others.
Led by Dr. Lucius Caviola and Professor Josh Green of Harvard University, GivingMultiplier was looking for “ways to help people get more effective at their altruistic efforts” and found promise in the idea of “donation bundling” - i.e. letting donors pair a donation to one of their favorite nonprofits with a donation to a select group of highly effective nonprofits as judged by independent charity evaluators.
Noted Dr. Caviola, “We didn't just want to write a paper… we also wanted to do something that's actually practically useful,” so they approached Every.org for help providing the infrastructure to enable their donation bundling concept. Using Every.org’s infrastructure, they were able to:
- Let donors search for and select a favorite nonprofit
- Make a tax-deductible donation
- Split that donation between their favorite nonprofit and their selected effective organization
- And collect donations statistics for their research on the efficacy of the intervention.
Since launching with Every.org in September of 2020, GivingMultiplier has raised over $1.8 million for charity from over 4,600 donors, including over $1 million since the start of the API pilot in October 2021.
Said Dr Caviola about partnering to use Every.org’s API:
We almost couldn't believe our luck. It was the perfect partnership for us. What we needed was the ability for our users to select the charity of their choice and then donate to it. We needed a partner to help us do this. After all, we are not an official non-profit organization but just two academics working at Harvard. Every.org offered exactly the functionalities that we needed. Another advantage is that Every.org deals with the logistical and financial side of donation processing. This also includes handling the receipts and tax deductibility of donations, etc. We wouldn't have been able to do this ourselves. So it's fair to say that without the help of every.org, our project might not have worked out.
CryptoZakat is a project started by Amin Eddebbarh and run by volunteers that aims “to promote a culture of giving amongst American Muslims who own cryptocurrency.” CryptoZakat helps Muslim donors find organizations to fulfill their Zakat obligation to donate 2.5% of their wealth and learn about the tax benefits of donating appreciated assets like crypto.
With help from a volunteer from Gaza Sky Geeks, Amin was able to launch the CryptoZakat website in just a couple of weeks to capture giving interest associated with Ramadan, leveraging Every.org’s nonprofit search endpoint and donation links to facilitate crypto donations via Every.org to eligible nonprofits.
Andres and Tracy’s Wedding Registry
Andres and Tracy wanted to have a charitable wedding registry rather than a more typical one with housewares. However, in addition to listing charities they wanted to support, they also wanted to be able to track the donations that were made so they could thank donors later.
After researching a number of options, Andres chose to implement their registry on top of Every.org’s Charity API to get set up quickly and easily:
As I was researching around I stumbled on Every.org and what you were doing. And I was like, wait, this is perfect! Because I can just build the front end and then call your APIs to actually do the payment…
I basically created a very simple website on Squarespace that says, ”Hey. We'd love for you to donate. Here are three charities” and they can click on each of them. And I give a bit more detail on the charity…and a click here to donate…It then calls the API.
The API was really easy to implement, the documentation was good, and staging allowed me to play around and get the user experience to work well.
Andres was able to focus on the frontend and leave the complexity of managing giving to Every.org, using the Charity API’s donation links and webhooks to facilitate gifts to nonprofits and record how much people gave.
What we learned
After 12 months of the Charity API pilot, tens of API partners supported, thousands of API requests handled, and over $2 million dollars donated, two key learnings stood out:
- Accessible giving infrastructure does enable more innovation in giving - and cost is critical
- Many projects don’t pan out - and that’s okay
Accessible giving infrastructure does enable more innovation in giving - and cost is critical
Every.org’s hypothesis was that the creation of an open and accessible giving toolkit would significantly reduce the amount of work and associated legal and operational complexities required to build giving experiences. As a result, we would see an acceleration of organizations integrating giving into their new and existing digital products and ultimately, increase global giving.
Especially for the smaller organizations and individuals that used the API, being able to access high-quality nonprofit data and facilitate donations to nonprofits without complex integrations or costly setup fees was the difference between their project being feasible or impossible. While there are existing solutions providing access to nonprofit data and disbursement infrastructure, they often charge thousands of dollars and ongoing fees for access. For established players that process millions of dollars in donations those fees may be manageable, but for new initiatives they can be a significant hurdle to getting started and reaching scale.
Of the organizations that responded to our request for feedback on the API, over 50% indicated that they would not have been able to build their product without access to the Charity API. If that ratio holds across the 60 or so organizations that requested API keys during the pilot, then that would indicate 30 projects that might not have been built without the Charity API.
Even for for-profit startups, the cost of figuring out giving infrastructure can be a significant barrier. Noted Hedado’s Viren Tellis:
[Without Every.org -] yes, we could have done it… [but] it would've cost us more… if we got really, really big, it wouldn't be that much more… but it would've been a barrier to getting started.
While it may not be a revelation that reducing costs helps spur innovation, the reality is that in the philanthropy world, many existing fundamental infrastructure services require significant upfront investments of time and money. This hurts startups and constrains the pipeline of ideas that can improve how people give. Just as many for-profit tech infrastructure platforms offer zero-cost startup plans and focus on the onboarding experience, Every.org will to continue to focus on making it as easy as possible for those with the least resources to explore new ideas.
Many projects don’t pan out - and that’s okay
While stories like that of GivingMultiplier, CryptoZakat, and Andres and Tracy’s wedding registry are exciting examples of how the API can be used, it is also important to note that a majority of the projects did not end up with significant API usage. The median duration of use (i.e. time between first and last query) was only a quarter of a day, indicating that many users likely acquired a key just to try things out. Out of the 74 total keys distributed, only 25 were in use for longer than a week.
How should we interpret a majority of the projects using the API ending up abandoned within a week? The fact that so many of the projects could afford to test out the Every.org API, learn from it, and indeed fail, is a testament to how an accessible giving toolkit can make it cheap enough to enable experimentation and thus innovation in how people give. Notes Darden School of Business Professor Edward Hess:
Failure is a necessary part of the innovation process because from failure comes learning, iteration, adaptation, and the building of new… models through an iterative learning process.
If people can’t afford to fail, then they also can’t afford to try new ideas with uncertain payoffs.
Of the 25 keys that were used for more than a week, most still appear to be in use, and 11 of those keys have made more than 1,000 queries to the API. Overall API usage continues to climb as more and more people are given the room to try something new and change the way we give for good.
In October 2021, we set out to create a common layer for giving that would reduce the costs associated with building new ways to support the nonprofits people care about. Since then, we’ve built and launched the Every.org Charity API, an open and accessible toolkit that provides components and services that enable discovering and supporting nonprofits. Over 60 projects have requested API keys, making hundreds of thousands of requests, and while not every API project facilitates donations, those that do have raised over $2 million.
As we wrap up this pilot, Every.org is excited to keep looking forward to a future where builders can bring their ideas for a better way to give to life quickly and easily. Giving infrastructure shouldn’t be the hard part - there are enough challenges in meeting donors where they are and helping support nonprofits. If you’re excited to bring your vision for philanthropy to life, reach out to us at firstname.lastname@example.org and we’d be delighted to help you get started.
Read our API case study on facilitating easier DAF donations with Chariot.