How each rule is built
When you create a deduplication rule in Sweep, Sweep automatically creates two Salesforce components to support that rule:
A Duplicate Rule – determines when duplicate checks should run (for example, when a record is saved).
A Matching Rule – defines which fields are evaluated for potential matches.
These Salesforce components are created automatically as part of the configuration, while the Sweep managed package performs the underlying matching and deduplication logic.
Exact vs. Fuzzy matching
Every field in a rule is compared in one of two ways:
Exact — the values must be identical after normalization (case, whitespace, and common punctuation are ignored). "acme.com" and "Acme.com" match; "acme.com" and "acmeinc.com" don't.
Fuzzy — the values are compared using similarity algorithms tuned to the field type, so close-but-not-identical values still match. For example, the fuzzy Company Name method treats "Acme Inc.", "Acme, Incorporated", and "ACME" as the same company by discounting legal suffixes, punctuation, and word order. The fuzzy First Name method recognizes common nicknames — "Bob" and "Robert" can match.
Each rule as a whole also runs on one of two engines: a Fuzzy engine (FuzzyMatchEngine), which allows fuzzy methods in the criteria, or an Exact engine (ExactMatchEngine), where everything must match exactly.
💡 Blank fields never match. Every field in every default rule uses the Null Not Allowed setting: if a field is empty on either record, that field simply can't count toward a match. Two records will never be flagged as duplicates just because they both left the same field blank.
How to read the filter logic
Fields alone don't make a match — the filter logic does. Each matching rule combines its numbered criteria with AND/OR logic, so a rule can offer several independent "paths" to a match. The numbers in the logic refer to the row numbers (#) in each rule's field table.
For example, 1 OR (2 AND 3 AND 4) means: field 1 matches — or — fields 2, 3, and 4 all match together. If any one path evaluates to true, the records are flagged. Each detail article shows the exact filter logic plus a plain-English breakdown of every path.
Deduplication rules
Keep each object clean by catching records that are really the same person or company entered twice.
Lead to Lead Deduplication — the same person entered as a Lead more than once.
Contact to Contact Deduplication — the same person entered as a Contact more than once.
Account to Account Deduplication — duplicate company records.
Lead to Contact Deduplication — a "new" Lead who already exists as a Contact (cross-object).
Case & Opportunity Deduplication — ⚠️ no default rule pair; configure your own in the Sweep UI.
Matching rules
Connect records rather than clean them up — for example, linking an inbound Lead to the Account it belongs to.
Lead to Lead Matching — group Leads that come from the same company.
Lead to Account Matching — connect an incoming Lead to the right existing Account (two rules: strict + loose).
⚠️ Salesforce limits apply — check your headroom first. Salesforce allows up to 5 active Duplicate Rules and 5 active Matching Rules per object, and Sweep's rules count against these limits. Most orgs already have standard rules using slots (typically 2 on Lead and Contact), and cross-object rules count against Lead's limit — so Lead fills up fastest. If a limit would be exceeded, the deployment fails; deactivate unneeded rules in Setup → Duplicate Rules first. (Case and Opportunity dedupe don't consume slots.)
Good to know
First names match differently on Lead vs. Contact. The Lead deduplication rule matches FirstName exactly, while the Contact rule uses the fuzzy First Name method — for example, "Bob" vs. "Robert" could match on Contact but not on Lead.
Company names are always fuzzy. Every default rule that includes a company or account name field (
Lead.Company,Contact.Account,Account.Name) uses the fuzzy Company Name matching method, so formatting differences like "Inc." vs. "Incorporated" don't get in the way — except in Lead to Account Rule #1, which is intentionally exact.Blank values block matching on that field. Every criterion is set to Null Not Allowed — a blank value on either record prevents that field from matching.
Cross-object rules trigger on the source, match on the target. Lead to Contact and both Lead to Account rules are defined as Duplicate Rules on the Lead object, with Matching Rules defined on Contact or Account.
The rules detect; Sweep acts. All Sweep-created Duplicate Rules are set to Allow (never Block) on create and edit, in report-only mode, and bypass sharing rules so duplicates are detected across the whole org. Salesforce only flags the potential duplicate — the actions you configured in Sweep (alerting, populating the duplicate lookup field, merging, converting, assigning) are performed by Sweep. If records are being blocked at save time, another duplicate rule in your org is responsible.
Don't edit or deactivate these rules manually. Sweep manages them as part of the Dedupe & Matching feature; manual changes can cause the feature to behave inconsistently or stop detecting duplicates.
Case and Opportunity have no default rule pair. Case-to-Case and Opportunity-to-Opportunity deduplication run without a Salesforce Duplicate/Matching Rule counterpart.

