There’s a whole set of data analyses that can and should be done at almost any nonprofit, and getting those things set up and communicating about them is a priority when an organization is setting up a new system. Once that’s done, however, a lot of fundraisers have some very specific things they want to support their work.
Over the past six months, I’ve worked with a team of major gift officers to figure out how they can best understand their progress over the previous quarter. On a quarterly basis, they wanted to see which of their donors had fallen behind on their typical giving and which donors had stayed current for their typical giving.
We started by talking about various things we could implement fairly easily in Salesforce, like quarterly rollups or matrix reports with quarterly results. Discussing those things in the abstract didn’t get us very far, we had to implement some quick and easy things to give people something concrete to work with. We did that, prototyping some simple things in production and letting them experiment. What we learned is that their definition of current and behind was idiosyncratic, but also really useful for managing their portfolios.
None of the simple experiments did what they wanted, but the conversations around those things really increased the specificity of what they were asking for. These major gift officers really stuck with the conversations even when it was time-consuming for them, and I’ve been grateful to them the whole time. After a few rounds of experiments, they were able to clearly articulate that they wanted a quarterly classification of donors’ movement based on a comparison of the donor’s previous 4 quarters of giving. The details of what they wanted were too complex to quickly prototype in Salesforce, and so we agreed to give it a try outside of Salesforce to both see if we could develop an algorithm that could consistently classify donors the way these major gift officers envisioned. I used a jupytr notebook to take data once a quarter and classify the data, and then provided a spreadsheet of donors and their classification back to the major gift officers. This was a great way to identify edge cases, and there were a lot of them! This organization has a lot of donors whose giving patterns are pretty irregular, and accounting for all of that took a few iterations. We did land on a system that they were happy with, though, and now we have clear instructions for a Salesforce implementation. It will be more complicated than anything we could have quickly built in Salesforce, but it is doable, and now we know the effort is worth it!
Something I always worry about with complex Salesforce requests is that the team making the request will get what they’ve asked for and then never use it. I’ve seen organizations spend tens of thousands of dollars on complex solutions that it turns out they didn’t really need and never use. Prototyping – even outside of Salesforce – allows people to reflect on what they think they want without such a big investment.
For me, the whole experience reinforced how important experimentation is, and also how much the users need to participate in a process like this. We could never have understood the many edge cases without the major gift officers committing a good chunk of time to going through lots of examples and providing substantive feedback to each iteration.