GoodCRM provides two routes for reporting on donations, and the right choice depends on how flexible you need to be:
Built-in reports on the donations home page - the fastest way to pull a list of all donations, or all Gift Aid eligible donations, filtered by date and exported to CSV.
Chained segments - for anything more advanced, where you need to combine donation criteria with details about the donor (e.g. donors who gave more than £100 last year and live in Manchester).
This article covers both - start with the built-in reports if your question is straightforward, and move to chained segments when you need to slice the data further.
Option 1: The built-in donation reports
The 'Donations Home' page has two ready-made reports built in. They cover the most common reporting questions and need no setup.
All Donations report
This report returns every donation in the date range you choose, along with the details of each donor (name, contact information). It also includes the payment method for the donation, and the Campaign details, including any Campaign custom fields you've set up.
Use it when you need:
A complete list of donations for a financial year, quarter, or campaign window
A reconciliation file to send to your finance team or auditors
A backup export of donation activity to share with a trustee or board meeting
Gift Aid eligible donations report
This report returns only the donations that are flagged as Gift Aid eligible in the date range you choose.
Use it when you need:
To prepare your quarterly or annual Gift Aid claim for HMRC
To check that donations have been correctly marked as Gift Aid eligible
To reconcile Gift Aid totals against your accounting records
Filtering by date
Both reports use the same date filter. Pick a start and end date and the report will refresh in place - no need to reload the page.
Leave the start date blank to pull everything from the beginning of your records up to your end date. Useful for one-off "all-time" exports.
Exporting to CSV
Each report has an Export CSV button. Click it once you're happy with the date range and a CSV file will download to your computer. The file includes one row per donation.
Option 2: Chained segments
If the built-in reports don't go far enough - for example, you want to report on donors who gave over a certain amount, or donors in a particular city, or donors who attended a specific event - then you'll need to use chained segments.
A chained segment lets you start with one segment of records and then narrow the result by feeding it into another segment.
How chaining works in practice
The pattern is always the same: build a segment of Donations that matches your donation criteria, then build a segment of People that uses the donations segment as a filter. The contacts segment then returns the donors behind those donations.
Example 1: High-value donors in the last 12 months
Suppose you want a list of People who have donated more than £100 in the last 12 months.
Create a Donations segment with two criteria: Amount is greater than £100 AND donation date is in the last 12 months.
Create a People segment with a single criterion: Donor for a donation (Donations > Donor) in [the segment you just created].
The contacts segment now returns every donor who has at least one donation matching the criteria - perfect for a thank-you mailing or a major-donor stewardship list.
Example 2: Donors in a specific city
Say you want everyone who has made a Gift Aid eligible donation this year and lives in Manchester.
Create a Donations segment with: Gift Aid declaration signed is 'Checked' and donation date is in the current year.
Create a Contacts segment with: donor for a donation in [your Gift Aid donations segment] and Town / City contains 'Manchester'.
You now have a regional list of donors you can use for a local campaign or event invitation.
Example 3: Lapsed donors
To find donors who gave last year but haven't given this year, use two donations segments and combine them on the contact:
Create a Donations segment for last year's donations.
Create a Donations segment for this year's donations.
Create a People segment with: 'Donations > Donor' in [last year's segment] and 'Donations > Donor' not in [this year's segment].
The result is your lapsed-donor reactivation list.
Chained segments update live. As new donations come in, the segment results refresh - so a segment named "High-value donors" stays accurate as new donations come in, without you having to rebuild it.
Exporting a chained segment
Any Person or Donations segment can be exported to CSV from the 'Export data' tab on your segment, just like the built-in reports.
Which one should I use?
A quick rule of thumb:
If your question is "show me all donations" or "show me all GiftAid eligible donations" in a date range - use the built-in reports. They're faster and require no setup.
If your question involves the donor, the donation amount, the campaign, or any other filter beyond date and GiftAid status - use a chained segment.

