Back to Home

Matching Rules

Configure how True Record identifies duplicate records in your Salesforce data.

Matching Modes

True Record offers three matching modes to suit different needs. Configure your matching mode in Settings → Matching Rules.

Rules Only

Traditional field-by-field comparison using configured weights and thresholds. Best for structured data with consistent formatting.

Pros
  • + No AI Credits required
  • + Fastest performance
  • + Predictable results
Cons
  • - May miss variations (typos, abbreviations)
  • - Requires careful field configuration

AI Only

Uses AI embeddings to find semantically similar records. Best for catching variations and fuzzy matches.

Pros
  • + Catches typos and variations
  • + Handles abbreviations
  • + Cross-language matching
Cons
  • - Requires AI Credits
  • - May surface false positives

Hybrid

Combines AI similarity with rule-based matching for best accuracy. Uses OR logic—matches if either AI or rules detect a duplicate.

Pros
  • + Best accuracy
  • + Catches both exact and fuzzy matches
  • + Configurable AI weight
Cons
  • - Requires AI Credits
  • - Slightly slower than rules-only

When to Use Each Mode

Choose the right mode based on your data quality and goals.

Rules Only

Clean, standardized data with consistent formatting. High-volume scans where speed matters. Users who prefer fewer matches to review.

Higher precision, lower recall. May miss duplicates with typos, abbreviations, or formatting variations.

Hybrid

Messy data with typos, abbreviations, or inconsistent formatting. When thoroughness is more important than speed. Catching edge cases that rules miss.

Higher recall, more matches to review. May include some false positives that require manual review.

Start with Rules Only for initial cleanup. Use Hybrid for final passes or when you suspect hidden duplicates.

Automatic Blocking

Blocking is automatic. When you configure matching rules, the system uses those same fields to intelligently group records before comparison, dramatically improving performance.

How Blocking Works

Instead of comparing every record to every other record (O(n²)), blocking groups records by shared field values and only compares within groups. This reduces complexity to O(n × block_size). The system automatically generates blocking keys based on your configured matching fields and their types (email domains, phone suffixes, name prefixes, etc.).

Example

If you match on Name and Email, blocking will group records that share similar name prefixes or email domains. A record 'John Smith at acme.com' will be compared against other records with similar names or the same email domain, not against unrelated records.

How It Works

  1. 1Configure your matching fields in Settings → Matching Rules
  2. 2The system automatically uses field types to create blocking keys
  3. 3Email fields → groups by domain and local-part prefix
  4. 4Name fields → groups by prefix and phonetic similarity (Soundex)
  5. 5Phone fields → groups by last 4-7 digits
  6. 6Company fields → groups by normalized name prefix

Best Practices

  • Configure multiple matching fields for better blocking coverage
  • Email domain blocking works great for B2B contacts
  • Name and phone fields provide additional blocking dimensions
  • The system handles normalization (case, punctuation, common suffixes) automatically

Field Weights

Assign weights (1-100) to each field to control their importance in the match score calculation.

FieldWeightDescription
Email100Highest weight—email is typically unique per person
Name80High weight—names are strong identifiers but can have variations
Phone70Good identifier but may be shared or formatted differently
Company60Important context but people change jobs
City30Lower weight—provides context but many people share locations

Score Calculation

The final match score is a weighted average: Σ(field_similarity × weight) / Σ(weights). Fields with null values in either record are excluded from the calculation.

Match Thresholds

Thresholds determine which pairs are flagged as potential or exact duplicates.

70%

Potential Match (70%)

Records with scores between 70-89% are flagged as potential duplicates. Review these manually to confirm.

90%

Exact Match (90%)

Records with scores 90% or higher are considered strong duplicates. These can often be merged with confidence.

Thresholds can be adjusted in Settings → Matching Rules to match your data quality requirements.

Frequently Asked Questions

Why aren't duplicates being detected for my object type?

Blocking is automatic and based on your configured matching fields. Ensure you have matching fields configured for the object type in Settings → Matching Rules. The system creates blocking keys from email domains, name prefixes, phone numbers, and other field types. If no matching fields are configured, only basic fallback blocking is applied.

Should I use high or low weights for optional fields?

Use lower weights (20-40) for optional fields that may often be empty. High weights on sparse fields can skew scores when the field is missing from one record.

Can I have different rules for different objects?

Yes. Each object type (Lead, Contact, Account) has its own matching configuration. Configure each in Settings → Matching Rules.

How do I handle name variations like 'Bob' vs 'Robert'?

AI matching handles common variations automatically. For Rules Only mode, the fuzzy matching algorithm catches minor variations, but nickname mappings require AI mode.