Data & migration

Salesforce Duplicate Rules: How to Stop Duplicate Leads and Contacts

Salesforce duplicate rules are included in Professional, Enterprise and Unlimited. Set up matching rules, alerts and reports, then clean up duplicates.

Your sales team calls the same prospect twice in one week. Marketing sends a campaign to three versions of one contact. A rep cannot tell which account record holds the real contract history. Duplicates rarely look like a crisis, but they quietly erode trust in the CRM. The good news: Salesforce duplicate rules and matching rules are included at no extra cost in Professional, Enterprise and Unlimited editions, and an admin can tighten them in an afternoon. This guide shows how to set them up properly, which settings matter, and how to clean up what already slipped through.

Official Salesforce cloud logo from the Salesforce newsroom media kit
Salesforce logo — image: Salesforce

How Salesforce duplicate rules and matching rules work together

Salesforce splits duplicate management into two building blocks, as explained in the Trailhead module Improve Data Quality in Salesforce:

  • A matching rule defines how two records are compared: which fields, and whether each field must match exactly or approximately.
  • A duplicate rule defines what happens when a matching rule finds a likely duplicate: block the save, or allow it with an alert, and optionally log it for reporting.

Duplicate management covers business accounts, contacts, leads, person accounts and custom objects. Orgs created in Spring '15 or later already have standard duplicate rules for accounts, contacts and leads; older orgs may need to create them.

| Building block | Question it answers | Typical setting |
|---|---|---|
| Matching rule | Are these two records the same company or person? | Email exact, or name + company fuzzy |
| Duplicate rule | What should the user see when a match is found? | Alert on create, block on edit for exact matches |
| Duplicate record set | Where are flagged duplicates stored for review? | Filled when the rule's Report option is on |

Choose the right matching method for each field

The matching method decides whether you catch "Margaret Chan" and "Maggie Chan", or only identical strings. According to Salesforce's help article on matching methods used in matching rules, the Exact method works for almost any field, including custom fields, and is recommended for international data. Fuzzy methods only exist for common standard fields on accounts, contacts and leads (first name, last name, company name, phone, city, street, ZIP and title), each with its own algorithm and threshold.

Two practical consequences for French and European orgs:

  • Fuzzy street and ZIP matching split values into sections and score them. Trailhead notes that address matching works best with North American data, so test it on your own French addresses before relying on it.
  • Fuzzy company name matching strips terms such as "Inc" or "Corp". Legal forms like "SAS" or "SARL" are worth testing, since the help page does not list them.

For B2B companies in France, a robust baseline is: email exact for contacts and leads, and company name fuzzy + city or postcode exact for accounts. If you store a SIREN or VAT number in a custom field, an exact match on that field is often the most reliable account rule of all.

A man types on a laptop showing a CRM setup page while a colleague watches at a wooden table.
CRM administrator configuring duplicate detection settings on a laptop with a sales director

Step-by-step: set up Salesforce duplicate rules in under an hour

The procedure below follows the hands-on unit Resolve and Prevent Duplicate Data in Salesforce. Test it in a sandbox first.

  1. Activate the standard matching rules. In Setup, search Matching Rules and activate the standard account and lead rules if they are inactive.
  2. Create a custom matching rule where the standard one is too loose or too strict. Click New Rule, pick the object (for example Contact), add your criteria (for example Email exact, or Last Name fuzzy + Mailing Street fuzzy), then save and activate.
  3. Create or edit the duplicate rule. In Setup, open Duplicate Rules, click New Rule, choose the object, select your matching rule and decide the action on create and on edit: Allow with an alert, or Block.
  4. Tick the Report option. When users save a record despite the alert, Salesforce stores it in a duplicate record set, which is what your reports read from.
  5. Build a report type. In Setup, open Report Types, create a custom report type with Accounts (or Leads) as primary object and Duplicate Record Items as related object. Repeat per object.
  6. Communicate the change. Tell reps what the new alert means and when to choose the existing record instead.

A rule of thumb that avoids friction: block only on exact, high-confidence matches (same email, same SIREN). For fuzzy matches, alert and report, because blocking on approximate matches frustrates users and pushes them to invent workarounds.

Know the limits before you rely on them

Duplicate rules are a safety net, not a guarantee. Salesforce's own duplicate prevention guide (PDF) lists several situations where rules do not run, including:

  • records created through Quick Create;
  • leads converted to accounts or contacts, unless Use Apex Lead Convert is enabled;
  • records restored from the Recycle Bin or merged manually;
  • edits that do not touch a field used in the matching rule.

The same guide states a limit of five active duplicate rules per object and three matching rules per duplicate rule. Check the current documentation for your release before designing a complex setup, and remember that imports and integrations behave differently from manual entry: test your Data Loader jobs and middleware against the rules before a migration, not after. Our guide to data migration to Salesforce covers that sequencing in more detail.

What to do now: clean up existing duplicates

Prevention stops new duplicates; it does not remove the old ones. Your options depend on your edition:

| Situation | Native option | Who can use it |
|---|---|---|
| A handful of duplicates spotted by users | Merge from the record (up to 3 records at a time) | Users with merge permissions |
| Duplicates flagged by rules with Report on | Duplicate Record Items report, then merge | Admins and managers |
| Org-wide scan of an object | Duplicate Jobs | Performance and Unlimited editions |
| Large historical backlog | Export, deduplicate, re-import with care | Admin or migration specialist |

On merging, the merge() API documentation confirms that up to three records, including the master, can be merged in one request, and that leads, contacts, accounts and individuals are supported. In Performance and Unlimited editions, Duplicate Jobs scan an object with a chosen matching rule and produce record sets you can compare and merge; running them requires the Customize Application and View All Data permissions.

Hands typing on a keyboard beside a checked paper list, in front of a CRM report screen.
Sales representative reviewing a CRM duplicate report next to a printed cleanup checklist

A quick weekly checklist for admins:

  • Review the Duplicate Record Items report and merge confirmed pairs.
  • Check which users bypass alerts most often, and find out why.
  • Look at the source of new duplicates (web-to-lead, imports, integrations) and fix it upstream.
  • Re-test the matching rules after any change to address or company fields.

If duplicates are one symptom among many (unused fields, overlapping automations, inconsistent picklists), it is usually a sign of broader CRM technical debt. Our CRM audit reviews data quality, duplicate settings and automation in one pass, and our CRM migration services include deduplication before any data lands in Salesforce.

Conclusion

Salesforce duplicate rules are one of the cheapest data quality wins available: they are already in your org, they need no code, and a well-tuned setup changes how much your teams trust their CRM. Start with exact matches on email and company identifiers, alert rather than block on fuzzy matches, switch on reporting, and schedule a regular cleanup. Small, consistent steps beat a one-off "big clean" that decays within months.

Sources

Read next

More on Data & migration

All 3 articles

Got a CRM project in mind?

Tell us where you are. We will tell you honestly what it takes, in a 30-minute call.