You are here:
Create Customizable Rollups
Find out more about customizable rollups.
- Create a Customizable Rollup
You can create as many Customizable Rollups as you need. Keep in mind that you can also edit the out-of-box NPSP rollups and any other User Defined Rollups previously created in your org. - Clone a Customizable Rollup
To quickly create a new rollup that's similar to one that already exists, simply clone it. - Deactivate or Delete a Customizabel Rollup
You can delete or deactivate rollups as needed.
Create a Customizable Rollup
You can create as many Customizable Rollups as you need. Keep in mind that you can also edit the out-of-box NPSP rollups and any other User Defined Rollups previously created in your org.
For example, say you want to know the total amount of in-kind gifts that a Contact has donated. With Customizable Rollups, you can easily find that information and put it in a custom field called Total In Kind Gifts. We illustrate how to create this sample aggregate rollup in the instructions below.
Customizable Rollups roll up data to a custom field (that you choose during the creation process). But that field must exist, so be sure to create the custom field before creating a new rollup! We recommend that you make these custom fields read only for all users (including Sys Admins). This example we walk through in the steps below assumes that you have an existing custom field on Contacts called “Total In Kind Gifts.” If you want to follow along, you'll need to create that custom field first.
- Go to the NPSP Settings tab. If you don't see the tab in your org, you can find it from the App Launcher.
- Click .
- Click
Configure Customizable
Rollups.Important If you see an error when you click the Configure Customizable Rollups button, your profile may not have access to the CRLP_RollupUI_SVC Apex class. For more information, see Configure Customizable Rollups.
- On the Customizable Rollups page, click New Rollup. To edit an existing rollup, in the appropriate row, click the drop-down arrow and then click Edit.
- Choose the Target Object and Field that the data should roll up
to. The Target Object can be Account, Contact, General Allocation Unit, or Recurring
Donation. The Target Field is limited to custom, writeable fields on the Target
Object that aren't currently used by another rollup. Note Be careful if your Target Field can only accept certain values, for example, if the target field has validation rules or is a restricted picklist. If your source value is not accepted in the Target object, you will get an error when the nightly batch job runs.To create our example rollup, choose Contact as the Target Object and Total In Kind Gifts as the Target Field.Important When creating a Recurring Donation rollup, ONLY use your own custom fields as the Target field. Selecting an NPSP field as the Target field will break your Recurring Donations.Note Remember, this is just an example and it assumes that this custom field already exists. If you want to follow along, you'll need to create the Total In Kind Gifts field.
- Enter a detailed description of this rollup. This is very important because the description is what you (and others) will use to distinguish this rollup from all of your other rollups. For the example, enter "Sums up a Contact's total In Kind Gifts from the Opportunity Fair Market Value field."
- Enter the Operation. Your choices are limited based on the Type
of the Target field you selected. For the example, choose Sum.
The type of Operation you choose determines whether your rollup will be an aggregate rollup or a single result operation rollup. If you want to create an aggregate rollup, you'd choose Sum, Average, or Count. If you want to create a single result operation rollup, you'd choose First, Last, Largest, Smallest, Best Year, Best Year Total, Years Donated or Donor Streak.
-
Smallest: Selects the minimum value stored in Field to Roll Up across all of the records that meet the time frame and filter group criteria. Specify the same field in both the Field to Roll Up and Amount Field settings.
-
Largest: Selects the maximum value stored in Field to Roll Up across all of the records that meet the time frame and filter group criteria. Specify the same field in both the Field to Roll Up and Amount Field settings.
-
First: Selects the value stored in Field to Roll Up from the first record that meets the time frame and filter group criteria when those records are sorted by Date Field in ascending order.
-
Last: Selects the value stored in Field to Roll Up from the last record that meets the time frame and filter group criteria when those records are sorted by Date Field in ascending order.
-
Count: The number of records that meet the time frame and filter group criteria.
-
Sum: The total of the values in Amount Field when added together across all records that meet the time frame and filter group criteria.
-
Average: The mean of the values in Amount Field across all records that meet the time frame and filter group criteria.
-
Best Year: Selects the four-digit calendar year (or fiscal year if Use Fiscal Year is enabled) from the value in Date Field that corresponds to the time frame with the largest sum of amounts in Amount Field across all records that meet the filter group criteria.
-
Best Year Total: Selects the largest sum of amounts from Amount Field after grouping records by the four-digit calendar year (or fiscal year if Use Fiscal Year is enabled) based on the value in Date Field across all records that meet the filter group criteria.
-
Years Donated: Concatenates a unique set of four digit calendar years (or fiscal years if Use Fiscal Year is enabled) separated by semi-colons (;) from the values in Date Field across all records that meet the filter group criteria.
-
Donor Streak: The current number of consecutive calendar years (or fiscal years if Use Fiscal Year is enabled) that records meeting the filter group criteria exist. Current is as-of this year if there's a record in the current year. Otherwise this is calculated as-of last year.
Note When you choose First or Last as the Operation, the First or Last record is determined based on the Date Field in the Advanced Customizations section. You can choose any of the available Date Fields listed in the drop-down. If there is more than one record that matches the criteria based on the selected Date Field, we use the Created Date as a tie-breaker to determine which record to use.
-
- Choose the Timeframe for this rollup. For the example, choose
All Time.
- To roll up data for all time, choose All Time.
- To roll up data for a certain number of days back, choose Days Back. You will then see a Days Back field where you can enter the number of days back (from today) that you want to roll up data for. It's important to note that entering a value of 0 will roll up data for today, while entering a value of 1 will roll up data for today and yesterday. The maximum number of days back you can enter is 10000.
- To roll up data for a specific year, choose Years Ago. You will then see a Years Ago field where you can choose the number of years ago that you want to roll up data for. Keep in mind that only the data for that calendar (or fiscal) year will roll up. So, if the current year is 2018 and you choose 2 years ago, the roll up will include data for 2016. Select the Fiscal Year checkbox to calculate rollups based on fiscal year settings (instead of calendar year). 20 is the maximum amount of years ago you can select.
- Choose the Rollup Type. The Rollup Type is a combination of the object to roll up along with whether it will be a soft credit or hard credit rollup. For the example, choose Opportunity > Contact (Hard Credit).
- Choose the filter
group to apply to this rollup. The filter group is a collection of filter
rules that determine what records get rolled up. If you want to include all records,
use the default No Filter Group
(Include All Records). For the example, choose Opp: Won (HC). Note You'll see all available filter groups that exist in your org, but be sure to select one that uses the same object that you selected in the Rollup Type field.
- In the Advanced Customizations section, enter the required
information. The fields that appear are determined by the Operation you selected.
- Field to Roll Up: Choose the field from the result of the rollup operation that you want to copy to the Target Field. This field is available if the Rollup Type is a single result operation (First, Last, Largest, or Smallest). Additionally, only fields with field types that are compatible with the selected Target field appear in the list.
- Date Field: Choose the date field to use when calculating the rollup. The Timeframe depends on this field.
- Amount Field: Choose the amount field to use when calculating the rollup. For the example, choose Opportunity: Fair Market Value.
- Click Save. Your rollup will
look something like this:
Note If you get a timeout error when trying to save your rollup, you may need to refresh the page. See Save Timeout Error Customizable Rollups for more information.
Since we already showed you an aggregate rollup above, it's only fair that we also show you how to create a single result operation rollup. And this one is particularly cool because it provides a lookup to another record. Cue the fireworks! Let's say you want to find the largest gift that a Contact donated and link to the Campaign that brought in the donation (from the Contact's record). Here's how you do it:
- Create a custom field on the Contact object that is related to the Campaign object. Name it Largest Gift Campaign.
- Create a new rollup with the following values:
- Target Object = Contact
- Target Field = Largest Gift Campaign
- Description = A lookup on the Contact record to Campaign associated with their largest donation, as determined by the Opportunity Amount field.
- Operation = Largest
- Time Frame = All Time
- Rollup Type = Opportunity > Contact (Hard Credit)
- Filter Group = Opportunities: Won (HC)
- Field to Roll Up: Opportunity: Campaign ID
- Amount Field: Opportunity Amount
- Click Save.
To see the updated field on the record right away, you'll need to manually recalculate rollups. Here's how it should look:
A note about creating custom fields for use in Customizable Rollups . . .
As we mentioned in the steps for creating a Customizable Rollup, the field you select as the Target Field must be a unique, writeable, custom field. And the field must exist before you create the Customizable Rollup.
It's also important to note that you should limit all users' access to the fields you're using as Target Fields in your rollups. We recommend that you make these custom fields read only for all users (including Sys Admins). Rollups will function properly even if the user creating the rollup or viewing the record with the rollup Target Field doesn't have Edit or View access to the field.
Clone a Customizable Rollup
To quickly create a new rollup that's similar to one that already exists, simply clone it.
Keep in mind that you'll need to choose a unique Target Field for your new rollup before you save it. Use an existing field, or create a custom field to use as the Target Field. For more information on creating custom fields, see Create Custom Fields.
-
Click the NPSP Settings tab. If you don't see the tab, find it in the App Launcher (
). - Click .
- Click Configure Customizable Rollups.
- On the Customizable Rollups page, click the name of the rollup you want to clone.
- Click Clone. NPSP clones the entire rollup, with the exception of the Target Field.
-
Select the Target Field, and optionally make any other changes.
-
Save your work.
Deactivate or Delete a Customizabel Rollup
You can delete or deactivate rollups as needed.
Deactivating a rollup simply prevents NPSP from calculating the rollup moving forward, but you will still see it in the list of Customizable Rollups and could activate it again if needed. Deleting a rollup removes it from the list. Since NPSP no longer calculates deleted or deactivated rollups, you will see stale data in any deleted or deactivated rollups' Target fields. For any rollup you deactviate or delete, we recommend that you either clear the value out of the Target field or reuse the Target field in a new rollup.
To deactivate a rollup:
- In the list of Customizable Rollups, click the Name of the rollup you want to deactivate.
- Unselect the Active checkbox.
- Click Save.

To delete a rollup:
- In the list of Customizable Rollups, click the Name of the rollup you want to delete.
- Click Delete.
- Click Delete again to confirm that you want to delete.
