Back to notes

May 12, 2026 · 6 min read

We Automated CRM Deduplication, Here's the Architecture

Manual CRM deduplication was consuming a full day of someone's week, every week. Here's how we automated it without the false-merge disasters that scare most teams off automating this in the first place.

Case StudyAutomation

A client's CRM admin was spending roughly a day a week manually reviewing and merging duplicate contact and account records. The volume kept growing because lead capture happened across six different forms and two different integrations, none of which checked against existing records before creating a new one. Automating it was obviously the right call. The reason it hadn't happened already was fear of automated false merges — merging two genuinely different people because they shared an email domain or a similar name.

The architecture that made it safe to automate

We split the system into two tiers: a high-confidence tier that auto-merges without human review, and a review-queue tier that flags likely duplicates for a human to confirm. High-confidence matching required at least two of three strong signals — exact email match, exact phone match, or exact full name plus matching company domain. Anything matching on a single weaker signal, like similar name alone, went to the review queue instead of auto-merging.

New or updated record
   │
   ▼
Match scoring
   ├─ exact email + exact phone        -> auto-merge
   ├─ exact email + company domain     -> auto-merge
   ├─ fuzzy name only                  -> review queue
   └─ no match signals                 -> create new record

Review queue: human confirms or rejects, decision logged for audit
The automation wasn't risky because it merged records, it was risky before we drew a hard line between what's confident enough to merge automatically and what isn't.

Results after three months

  • Auto-merge tier handled roughly 70% of all duplicate volume with zero reported false merges.
  • Review queue volume dropped the admin's manual workload from a full day a week to about ninety minutes.
  • Every merge, auto or manual, logged with the matching signals that triggered it, making any later dispute easy to trace and reverse.

The lesson that generalizes beyond CRM dedup: automation fear usually isn't really about automating the task, it's about automating the irreversible part of the task. Separate the reversible decisions from the irreversible ones and you can usually automate most of the volume safely.