Pipeline inflated by 100x. Fixed in 3 weeks.
Environmental Nonprofit · 70,000+ Records · Deduplication · AP Style Standardization · Governance Rules
Key Takeaways
An environmental nonprofit migrated 70,000 donor records without deduplication, field validation, or a test load. A cents-to-dollars conversion error inflated every financial value by 100x. The pipeline dashboard showed $4.2M. The actual pipeline was $42,000. The board approved a hiring plan based on the wrong number. CCC delivered a clean dataset in 3 weeks: 12,000 duplicates consolidated into 5,400 master records, 4,200 currency errors corrected, and governance rules deployed to prevent recurrence. The cleanup cost less than the original migration. A 15-minute test load review by business users would have caught the error before it went live.
At a Glance
Industry: Environmental Nonprofit
Platform: Salesforce (NPSP)
Scope: Data quality audit, deduplication, currency correction, AP Style standardization, and governance rules
Records Cleaned: 70,000+
Duplicates Merged: 12,000 consolidated into 5,400 master records
Orphaned Contacts: 8,000 with no parent Account
Pipeline Reporting Error: 100x inflation ($4.2M displayed vs. $42,000 actual)
Records with Currency Errors: 4,200
Time to Fix: 3 weeks
Root Cause: Migration executed without deduplication, field validation, or test load review
Key Lesson: A test load reviewed by business users would have caught the error in 15 minutes
The Situation
An environmental nonprofit migrated 70,000 donor records from a legacy database to Salesforce. The migration was done by a previous consultant without deduplication, field validation, or a test load reviewed by business users.
The immediate result: 12,000 duplicate Account records and 8,000 orphaned Contact records with no parent Account. Donor histories were split across multiple records. Recurring gift data was attached to the wrong Accounts.
The more serious problem was invisible for three months. A cents-to-dollars conversion error in the currency field mapping inflated every financial value by 100x. The pipeline dashboard showed $4.2M. The actual pipeline was $42,000. The board of directors approved a hiring plan and a new program budget based on the $4.2M number.
When the development director ran a manual spot check before a major donor meeting, she found that a donor listed at $15,000 in Salesforce had actually given $150. She called the previous consultant. The consultant was no longer under contract. The nonprofit called CCC.
What CCC Did
CCC ran SOQL validation queries against every donor-facing object. The audit quantified the damage: 12,000 duplicates, 8,000 orphans, 4,200 records with currency errors, and 15,000 records with non-standardized name formats (missing salutations, inconsistent capitalization, company names in the last name field).
CCC built matching rules and ran them against the full dataset. Each batch of proposed merges was reviewed by the development team before execution. No merge happened without business user sign-off. The 12,000 duplicates were consolidated into 5,400 master records with complete donation histories.
The field mapping from the legacy system stored amounts in cents. Salesforce currency fields expected dollars. CCC wrote a correction script, validated it against the source system, and ran it with a full audit trail. The pipeline dashboard dropped from $4.2M to $42,000, which matched the development director's manual calculations.
CCC applied AP Style standardization to all name and address fields: proper capitalization, standardized salutations, consistent formatting for organizational donors. Validation rules now prevent the same data quality issues from recurring. Duplicate matching rules run on every new record. Currency fields have validation that flags any value over $100,000 for manual review.
Clean dataset delivered in 3 weeks. Pipeline reporting was accurate within 48 hours of the correction. Governance rules now prevent the same errors from recurring.
The board received a corrected financial report with a full explanation of what happened and what was done to prevent it. The development director now runs a quarterly data quality check using the SOQL queries CCC provided. The cleanup cost less than the original migration. The governance rules cost nothing to maintain.
Before and After
| Metric | Before CCC | After CCC |
|---|---|---|
| Pipeline dashboard | $4.2M displayed ($42,000 actual) | Accurate within 48 hours |
| Duplicate Account records | 12,000 | Consolidated into 5,400 master records |
| Orphaned Contact records | 8,000 (no parent Account) | Reconnected to correct Accounts |
| Records with currency errors | 4,200 | Corrected with full audit trail |
| Name/address standardization | 15,000 inconsistent records | AP Style applied across all fields |
| Duplicate prevention | None | Matching rules on every new record |
| Currency validation | None | Values over $100,000 flagged for review |
| Time to resolution | 3 months undiscovered | 3 weeks from engagement start |
"The cleanup cost less than the original migration. It always does."
A test load reviewed by business users before the full migration would have caught the cents-to-dollars error in 15 minutes. That step was skipped. CCC includes test loads in every migration engagement. No data goes live until business users confirm the numbers match.
Ready to see what CCC can do for your org?
Take the Scorecard to see where you stand, or request a scoping call to discuss your project.

