Most nonprofit risk registers die in a shared drive. Someone builds one before an audit, lists a dozen vague risks like "reputational damage" and "donor attrition," assigns everything to "the ED," and never opens it again. Then a chargeback spike or a grant clawback hits and nobody can point to the control that was supposed to catch it.
The problem isn't that teams don't care about risk. It's that the register gets built as a compliance artifact instead of an operational tool. A register that actually works tells you three things at a glance: what can go wrong, who owns stopping it, and whether your controls are holding. When an incident happens, you should be able to trace it backward — incident → failed control → accountable owner — in under a minute.
This piece gives you a fundraising-specific risk library you can lift directly into your own fundraising risk register nonprofit workflow, with likelihood/impact scoring, the controls that matter, owner assignments, and a board-report structure that maps real incidents to real accountability.
Why most fundraising risk registers fail in practice
Before the library, it's worth naming the failure patterns, because they're predictable.
The scoring is cosmetic. Teams rate everything "medium." When your heat map is a wall of yellow, you've lost the one thing a register is supposed to produce: prioritization. A register with twenty risks where six are red is far more useful than one where all twenty are "medium-high."
Owners are titles, not people. "Development team" owns nothing. When a pledge reconciliation gap surfaces, you need a name — the person who gets the Slack message and the person whose review the board will ask about.
Controls are aspirational. "We train staff on data privacy" is not a control you can test. "Quarterly access review of the CRM with a signed-off report" is. The difference is whether you can prove it happened.
Incidents never loop back. A dispute happens, someone handles it, and the register stays frozen. The whole value of a register is that incidents update your likelihood scores and expose which controls failed.
Keep these four failures in mind as you read the library. Every column below exists to prevent one of them.
How to score (so your heat map means something)
Use a simple 1–5 scale for likelihood and impact, then multiply for a priority score (1–25). The trick is defining the anchors clearly enough that two different staff members score the same risk roughly the same way.
Simplify donor management and fundraising workflows.
Givioly helps you organize campaigns, engage donors, and maximize fundraising impact seamlessly.
- Unified donor profiles
- Real-time donation tracking
- Automated impact reporting
No credit card required
Likelihood anchors:
-
1 – Rare Hasn't happened and no realistic path to it this year
-
2 – Unlikely Possible but no recent near-misses
-
3 – Possible Has happened to peer orgs or once to you
-
4 – Likely Happens occasionally, you've had near-misses
-
5 – Almost certain Recurring, you expect it this year
Impact anchors (tie these to dollars and reputation, not vibes):
-
1 – Minor Under ~$1k or an internal-only hiccup
-
2 – Low ~$1k–$5k or a single donor affected
-
3 – Moderate ~$5k–$25k, a grant reporting correction, or a handful of donor complaints
-
4 – Major ~$25k–$100k, a grant at risk, or local press
-
5 – Severe Six figures, loss of a major funder, regulatory exposure, or board-level reputational damage
One thing worth flagging: small teams consistently under-score likelihood on the quiet operational risks — reconciliation drift, data decay — and over-score the dramatic ones like fraud or breach. The quiet ones are what actually drain you.
The fundraising risk library (20+ scored risks)
Here's the core library. Treat the scores as a realistic starting point for a small-to-mid nonprofit — adjust to your reality. "L" is likelihood, "I" is impact, "Score" is L×I.
| # | Risk | L | I | Score | Primary Control | Owner |
|---|---|---|---|---|---|---|
| 1 | Online/offline gift reconciliation drift | 4 | 3 | 12 | Monthly tie-out of processor payouts to CRM, signed off | Finance Lead |
| 2 | Chargebacks & donation disputes mishandled | 4 | 3 | 12 | Dispute runbook with evidence-capture SLA | Donations Ops |
| 3 | Restricted funds spent against wrong purpose | 3 | 5 | 15 | Fund tagging at intake + quarterly restriction review | Finance Lead |
| 4 | Grant reporting missed or inaccurate | 3 | 4 | 12 | Grant calendar with milestone alerts + pre-submission review | Grants Manager |
| 5 | Donor PII breach / unauthorized access | 2 | 5 | 10 | Role-based CRM access + quarterly access review | Data Owner |
| 6 | Receipt/acknowledgement non-compliance (IRS substantiation) | 3 | 4 | 12 | Automated receipts with required language + audit sample | Donations Ops |
| 7 | Pledge revenue recognized but never collected | 4 | 3 | 12 | Aging report + 48–72hr pledge verification routine | Development Dir. |
| 8 | Major donor concentration (over-reliance) | 3 | 5 | 15 | Concentration ratio tracked quarterly + diversification plan | Development Dir. |
| 9 | Platform migration data loss/corruption | 2 | 5 | 10 | Pre-migration audit + canonical mapping + rollback criteria | Data Owner |
| 10 | Duplicate/decayed donor records | 4 | 2 | 8 | Monthly dedupe + hygiene audit | Data Owner |
| 11 | In-kind donations mis-valued or unrecorded | 3 | 3 | 9 | Valuation policy + chain-of-custody log | Finance Lead |
| 12 | Matching gifts never captured/claimed | 4 | 2 | 8 | Capture at gift + employer verification workflow | Donations Ops |
| 13 | Event/auction cash & offline gifts unreconciled | 3 | 3 | 9 | Day-of gift logs + post-event reconciliation template | Events Lead |
| 14 | Vendor/processor outage during campaign | 2 | 4 | 8 | Backup payment path + SLA in vendor contract | Ops Manager |
| 15 | Consent/opt-out violations (email, calls) | 3 | 4 | 12 | Consent tracking in CRM + suppression enforcement | Data Owner |
| 16 | Securities/non-cash gift mishandling | 2 | 4 | 8 | Intake checklist + brokerage confirmation step | Finance Lead |
| 17 | Fraudulent/stolen-card donations | 3 | 3 | 9 | Velocity rules + flag-and-review threshold | Donations Ops |
| 18 | Tribute/memorial gift family errors | 3 | 3 | 9 | Tribute workflow with notification verification | Donations Ops |
| 19 | Fundraising cost misattribution (overhead) | 3 | 3 | 9 | Activity-based costing + quarterly review | Finance Lead |
| 20 | Key-person dependency (one person holds the CRM) | 4 | 4 | 16 | Documented runbooks + cross-training + access backup | ED |
| 21 | Donor data used without governance policy | 3 | 4 | 12 | Data governance policy + RACI + audit playbook | Data Owner |
| 22 | Recurring giving silent attrition (failed cards) | 4 | 3 | 12 | Dunning workflow + card-updater + retry logic | Donations Ops |
| 23 | Impact reporting inaccuracies to donors | 3 | 3 | 9 | Source-to-dashboard mapping + production checklist | Comms Lead |
| 24 | Board/leadership blind to pipeline risk | 3 | 4 | 12 | Monthly risk row in board packet | ED |
That's 24 risks. Notice what rises to the top: key-person dependency (16), restricted funds misuse (15), and donor concentration (15). Those three are chronically under-rated because they're slow-burn, not dramatic. No single bad day makes them obvious — which is exactly why they belong near the top of your heat map. Two of these — reconciliation drift and dispute handling — deserve their own runbooks because they recur constantly. If those are your top scores, build the detailed workflow first: see the audit-ready donation reconciliation workflow and the donation-dispute recovery runbook for the control-level detail that sits underneath register rows #1 and #2.
Writing controls that can actually be tested
A control belongs in your register only if you can answer "did it happen, yes or no?" at any point in the quarter. Here's the test:
-
Bad control "Staff are careful about restricted funds." — Untestable.
-
Workable control "Every gift over $500 is tagged with its fund restriction at intake, and the Finance Lead reviews untagged gifts weekly." — Testable: pull the untagged list, check the review log.
For each control, define three things in a hidden column of your register:
-
Evidence — what proves it ran (a signed report, a timestamped log, an export)
-
Frequency — weekly, monthly, quarterly, or per-transaction
-
Test method — how an auditor or board member would verify it
The under-appreciated move here is sampling. You don't verify every transaction — you pull a random sample each quarter. Ten receipts, five restricted gifts, three disputes. If the sample passes, the control is likely holding. If two of ten receipts are missing IRS substantiation language, your "automated receipts" control has a gap you'd never have found by just assuming it worked.
The board-report rows: mapping incidents to controls and owners
This is the part most registers skip, and it's the part boards actually need. A board doesn't want your full twenty-four-row heat map every month. They want a short, honest section that answers: what went wrong, which control was supposed to stop it, and who's accountable?
| Incident | Date | Register Risk # | Control That Failed | Root Cause | Owner | Remediation | Status |
|---|---|---|---|---|---|---|---|
| 3 donations charged back, no evidence filed | Mar 2 | #2 | Dispute evidence SLA | Receipts not saved at gift time | Donations Ops | Enable auto-capture of receipt + IP | Done |
| $4,200 restricted gift spent on general ops | Feb 18 | #3 | Intake fund tagging | Gift logged by volunteer, untagged | Finance Lead | Reclass entry + volunteer retrain | In progress |
| Monthly donor file: 38 silent card failures | Mar 10 | #22 | Dunning retry workflow | No card-updater enabled | Donations Ops | Turn on updater + 3-retry logic | In progress |
A few things make this format work:
-
Every incident links to a register risk number. If an incident can't be mapped to an existing risk, that's a signal your library has a gap — add the risk.
-
"Control that failed" is explicit. This shifts the board conversation from "who messed up" to "which control needs strengthening," which is a far healthier dynamic and keeps staff honest instead of defensive.
-
Owner is a person, present in the room. The board can ask them directly.
When the same risk number shows up in incident rows three months running, that's not bad luck — that's a control that's structurally broken. Bump its likelihood score and escalate the remediation.
A 5-step process to stand this up in a week
You don't need a quarter-long initiative. A workable register goes live in about a week of part-time effort.
-
Day 1. Day 1 — Clone the library. Copy the 24-risk table above into a spreadsheet. Delete what doesn't apply (no events? drop #13), add anything specific to your org.
-
Day 2. Day 2 — Score honestly with two people. Have the development director and finance lead score independently, then reconcile the gaps. Disagreements are where the real conversation lives.
-
Day 3. Day 3 — Assign named owners. Every row gets a person, not a department. If one name appears on more than six rows, you've just found risk #20 (key-person dependency) in action.
-
Day 4. Day 4 — Define evidence and frequency per control. For each control, write down what proves it ran and how often. Skip the test method for now if you're short on time.
-
Day 5. Day 5 — Build the board row template. Set up the incident table. Backfill it with any incident from the last 90 days so the board sees it working on day one.
This visual shows the week-long setup workflow.
When a formal register makes sense (and when it's overkill)
This makes sense when you're processing gifts across multiple channels, managing restricted or grant funds, or when your board has started asking risk questions and nobody has a clean answer. The moment you have grant compliance obligations, the register stops being optional.
This is overkill when you're an all-volunteer org raising under ~$50k a year through one channel. At that scale, a one-page checklist of your top five risks beats a twenty-four-row register nobody maintains. Don't build governance theater you can't sustain.
Who should not do this alone: if you're the only person who touches the CRM, the finances, and the donor relationships, don't build the register solo and file it. The highest-scored risk in your own org is probably you being the single point of failure. Build it with your treasurer or a board member so the accountability is genuinely shared.
A short real scenario
A mid-sized arts nonprofit — roughly $900k annual revenue, three-person development team — kept getting surprised by restricted-fund issues at audit time. Each year the auditor flagged a few thousand dollars of restricted gifts that had drifted into general operations, and each year it was a scramble to reclass entries and explain it to the board.
They built a register off a library like this one. Nothing fancy — a spreadsheet, twenty-two rows, named owners. The two changes that mattered: fund tagging moved to intake (control for risk #3), and they added a single risk row to every board packet. The following audit cycle, restricted-fund corrections dropped from around $4k–$6k to a couple hundred dollars of genuine edge cases. More telling, the board stopped learning about problems at the annual meeting and started seeing them month to month, when they were still fixable. The register didn't eliminate risk. It just made risk visible early enough to be cheap instead of expensive.
Keeping it alive
The register only works if it's a living document. Set a recurring 30-minute monthly review: update any likelihood scores that incidents changed, close out remediations, and confirm each top-five control actually ran that month. Most of this is pulling an export and checking a log — the kind of repetitive verification that's easy to automate once your CRM and payment data are connected, so flagged exceptions land in front of an owner instead of waiting to be discovered.
Automate the monthly control checks with scheduled exports and a simple script to flag missing evidence.
The orgs that get value from a fundraising risk register nonprofit process aren't the ones with the prettiest heat map. They're the ones who treat it as an operational feedback loop: incident happens, control gets traced, owner gets notified, score gets updated. Do that consistently and the register earns its place — not as the thing you build before an audit, but as the thing that quietly keeps the audit boring.
The orgs that get value from a fundraising risk register nonprofit process aren't the ones with the prettiest heat map. They're the ones who treat it as an operational feedback loop: incident happens, control gets traced, owner gets notified, score gets updated. Do that consistently and the register earns its place — not as the thing you build before an audit, but as the thing that quietly keeps the audit boring.
Ready to elevate your fundraising efforts?
Join 2,000+ nonprofits using Givioly to save time, increase donations, and build lasting donor relationships.