---
schema_version: "1"
id: f55fb34388c515d9788198e1e749ba6bc78991c40a212a1c120c6c2e6b366d89
title: Test Customizable Rollups in your Sandbox
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/sfdo/264-0-0/npsp_test_custom_rollups.md
canonical_url: https://help.salesforce.com/s/articleView?id=sfdo.npsp_test_custom_rollups.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 3e3744cde23b549186ccfb131aca66091cf565833c858dcb750dd745cbee8b99
description: Before enabling Customizable Rollups in your Production org, we highly recommend testing and validating the results in a Full or Partial Sandbox. The best way to validate rollup values after enabling Customizable Rollups is to use field history tracking.
products:
  - Nonprofit
release: "264"
---
# Test Customizable Rollups in your Sandbox

Before enabling Customizable Rollups in your Production org, we highly recommend testing and validating the results in a Full or Partial Sandbox. The best way to validate rollup values after enabling Customizable Rollups is to use field history tracking.

![Important](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-sfdo-nonprofit_success_pack-264-0-0-production-enus/bd2879e2-2bdc-4012-aa32-dc0c697c4538/images/icon_important.png)

Important Make sure that Customizable Rollups is NOT enabled in your org when you start this process.

- **[Track Field History](https://help.salesforce.com/s/articleView?id=sfdo.npsp_test_custom_rollups.htm&release=264.0.0&type=5)**  
    By enabling field history on the rollup target fields on Accounts, Contacts, and General Accounting Units (GAU), you can easily identify changes to rollup field values after switching to Customizable Rollups.
- **[Expected Differences](https://help.salesforce.com/s/articleView?id=sfdo.npsp_test_custom_rollups.htm&release=264.0.0&type=5)**  
    The first time Customizable Rollups jobs are run, there may be changes to a few of the rollup fields.

## Track Field History

By enabling field history on the rollup target fields on Accounts, Contacts, and General Accounting Units (GAU), you can easily identify changes to rollup field values after switching to Customizable Rollups.

1. Click the **NPSP Settings** tab. If you don't see the tab, find it in the App Launcher (![App Launcher icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-sfdo-nonprofit_success_pack-264-0-0-production-enus/bd2879e2-2bdc-4012-aa32-dc0c697c4538/resources-product/images/app_launcher_icon.png)).
2. Click **Bulk Data Processes**. Run the Rollup Donations Batch and Rollup Allocations Batch jobs.
3. After those jobs have successfully completed, [enable field history](https://help.salesforce.com/s/articleView?id=xcloud.security_field_history_tracking.htm&type=5&language=en_US) on the rollup target fields on the Account, Contact, and GAU objects.
4. Add the Field History related lists (Account History, Contact History and General Accounting Unit History) to the appropriate page layouts.
5. In **NPSP Settings**, go to ****Donations** | **Customizable Rollups**** and enable Customizable Rollups.
6. In **NPSP Settings**, go to **Bulk Data Processes** and run the Rollup Donations Batch and Rollup Allocations Batch jobs.
7. Spot check (or use a report) to look at changes to the rollup fields that you enabled field history on.

## Expected Differences

The first time Customizable Rollups jobs are run, there may be changes to a few of the rollup fields.

Here are some reasons why the data may be different:

![A History related list showing differences in calculations from legacy rollups to Customizable Rollups](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-sfdo-nonprofit_success_pack-264-0-0-production-enus/bd2879e2-2bdc-4012-aa32-dc0c697c4538/nonprofit_success_pack/images/crlp_calc_diffs.png)

- **Average Gift**: There may be a rounding difference in how Customizable Rollups calculates and stores the Average Gift amount on the Contact and Account record. In the image above, the amounts appear to be the same but behind the scenes there is a difference in the decimal places, causing Salesforce to _think_ the field values are different.
- **Last and First Gift Amount**: With legacy rollups, there isn't consistent logic for determining the very first or very last gift when there was more than one gift on the same date. When Customizable Rollups is enabled, the First and Last Gift Amounts are explicitly determined by looking at the CreatedDate timestamp on the Opportunity record. This ensures that the First Gift Amount is actually from the very first Opportunity created on the earliest date and the Last Gift Amount is the from the very last Opportunity created on the latest date.
- **N Day Rollups**: If Customizable Rollups jobs are run the day after legacy rollups were run, you may see a change to Gifts in the Last N Days (since the rollup jobs were run on different days). This is completely normal. To avoid N Day differences when comparing Legacy Rollup results to Customizable Rollup results, be sure to run the legacy rollup job before the Customizable Rollups jobs on the same day.
- **Multicurrency**: Legacy rollups convert everything into the corporate currency and then back into the Contact or Account's currency. This causes some inaccuracies in conversion. Customizable Rollups calculations for multicurrency are more accurate, and they support Advanced Multicurrency (with Dated Exchange Rates).
- **Contact Roles**: There may be some discrepancies in hard credit rollup calculations for Household gifts, if the Primary Contact on the Opportunity is different than the Primary Opportunity Contact Role. That is because Customizable Rollups look at the Primary Contact on the Opportunity, while legacy rollups look at the Opportunity Contact Role marked as Primary.