Data ManagementMerge Duplicates

Find and merge duplicate CRM records, in bulk, safely.

Identify duplicate contacts, companies, deals, and custom objects with matching your CRM cannot do natively. Then merge thousands at once with full control over which record survives and which data is kept. Preview every merge before it happens.

Keeps HubSpot-Salesforce sync activeFull audit trail
Step 2 · Review

Duplicate groups

1,284 found

Preview only
Acme Software · 3 recordsExpand ↑

Acme Software, Inc.

acme.com · Salesforce ID present

Likely master

Acme Software

www.acme.com · 14 activities

Review

Akme Software LLC

acme.net · created yesterday

Review
No CRM records changedExport groups
The risky part is now the controlled part

Find every likely duplicate. Decide exactly what survives. Preview the result before anything changes.

Insycle turns bulk deduplication into a controlled sequence: configure the match, review the groups, define master and field-retention logic, simulate the run, then update with a complete audit trail.

Why native deduplication falls short

The obvious matches are only the beginning.

Duplicates make reps collide on the same account, split activity history, distort attribution and reporting, and feed AI agents records that disagree about the customer. Native CRM tools usually find simple name or email matches and merge them one pair at a time.

How bulk CRM deduplication works

First, configure the fields and matching methods that identify likely duplicates. Next, review the resulting groups and define which record becomes the master and which field values it keeps. Then preview the complete result in a CSV before running the update. Afterward, schedule the saved template so new duplicates are handled continuously.

Find

Find the duplicates your CRM cannot see.

Build matching around the way your data is actually messy. Combine exact criteria with fuzzy methods, ignored noise, partial values, related fields, and group-level conditions.

Similar matching

Catch typos and one-character variations: Acme matches Akme, and ursula@graso.co can match ursula@graso.com.

Ignored elements

Match through symbols, whitespace, subdomains, TLDs, URL paths, business suffixes, or custom substrings your team defines.

Match parts

Compare only what matters: the first two words of a company name, the last characters of an ID, or any consecutive words.

Related fields

Match Email against Additional Email, Phone against Mobile or WhatsApp, and Email Domain against Website.

Conditions

Require populated values, limit matches to a timeframe, require one record to meet a criterion, or skip ambiguous groups.

Step 1 · Find duplicates

Company matching template

Company Name

First 2 words

Similar

Ignore common terms

Website

Domain

Exact

Ignore subdomain + TLD

Created date

Group condition

Last 20 minutes

At least one record

1,284 groups foundNothing has been merged

Already know which records are duplicates? Upload a CSV of approved record-ID pairs and skip detection entirely.

Save every matching template and run several passes: a tight exact-match pass first, then carefully widen the criteria for harder cases.

Review

Review duplicate groups before a single record changes.

Matches cluster into one expandable group per real-world person, company, deal, or object. Add the columns you need, inspect every record, and exclude the pairs that are genuinely different.

  • Inspect the full context. Owners, lifecycle, activity, external IDs, and any custom field can sit beside the match.
  • Make exclusions stick. Excluded pairs remain excluded across future runs and templates.
  • Collect stakeholder approval. Export groups for offline review and feed approved ID pairs back through CSV.
Group 37 of 1,284

Potential duplicate

Ursula Graso · 2 contacts

Exclude pair
FieldRecord ARecord B
Emailursula@graso.comursula@graso.co
OwnerActive ownerUnassigned
Activity28 events3 events
CreatedMay 2024Today
Merge

Decide which record wins, and which data does.

Use one ordered rule system to select the surviving record and another to control the value retained in every important field.

Master selection: which record remains

Evaluate rules from top to bottom until one record uniquely wins. In HubSpot, the master also controls which primary email survives.

  1. 1

    Prefer an active owner

    Skip deactivated or blank owners

  2. 2

    Prefer a work email

    Deprioritize free and role-based addresses

  3. 3

    Prefer the most engagement

    Keep the record with the strongest history

  4. 4

    Prefer a Salesforce-linked record

    Protect the sync relationship

  5. 5

    Use earliest create date

    Final tiebreaker

Field retention: which values remain

Keep the master's value by default, fill its blanks from the most recently updated duplicate, and override field by field where the business requires it.

  • Lifecycle stageMost advanced value
  • Annual revenueHighest number
  • First conversionEarliest date
  • Lead sourceMost frequent
  • NotesCombine and append
  • Additional EmailPreserve non-master emails

Safe defaults are already on. Groups larger than five records are skipped by default. Associated records, activities, and attachments move to the master. Values not retained remain available in CRM history.

Preview, audit, limits

Bulk is the safe way to merge.

The risky version of deduplication is one-by-one in the CRM, where every merge is a separate judgment call with no consistent record of why. Insycle generates a complete preview of what will merge, which record becomes master, which values will be kept, and which groups will error, before anything touches the CRM.

Preview-first workflowFull audit trailGroup-size guardrailsManual mode for high-value records
Preview report.csv

Groups evaluated

1,284

Ready to merge

1,241

Skipped or error

43

GroupMasterResult
037104928Ready
038117204Ready
039, Skipped: 7 records

Preview complete · no CRM changes made

The hard cases

The merges other tools refuse.

Keep HubSpot-Salesforce sync active

Deduplicate Salesforce first, then match HubSpot masters by Salesforce Account ID. The documented sequence prevents the sync from recreating company duplicates.

Go past HubSpot's 250-merge limit

Synthetic merge bypasses the native limit when more than 250 duplicate records belong under one master.

Merge objects with no native merge

For Salesforce opportunities and custom objects, Synthetic merge inspects the schema and reparents related records to the master.

Preserve the master Record ID

Synthetic merge keeps the master's existing ID, protecting external systems keyed to that record. Synced records can also be excluded entirely.

Native vs. Synthetic merge, explained

Keep

Merge once. Then keep it that way.

Duplicates return whenever imports, forms, users, or integrations create new records. Save the configuration as a template, schedule it from hourly to monthly, chain it into a Recipe, or trigger it from a HubSpot Workflow or Salesforce Flow.

Use timeframe conditions for a precise standing sweep: catch records created in the last day without repeatedly scanning all of history.

New CRM record

Import · form · integration

Saved match template

Precise recent-record criteria

Controlled merge

Master · retained values · audit

Native CRM dedupe vs. Insycle

More control at every step of the merge.

CapabilityNative CRM dedupeInsycle Merge Duplicates
FindingExact name or email pairsFuzzy matching, ignored elements, match parts, related fields, and conditions
MergingOne pair at a timeBulk, logic-driven merging across supported object types
MasterManual pick per pairOrdered selection logic applied consistently at scale
Data keptCRM default behaviorPer-field retention; multi-select values consolidated; non-selected values remain in history
SafetyNo complete preview or centralized logPreview CSV, audit trail, group-size limits, and permanent exclusions
SyncHubSpot company merges can conflict with Salesforce syncDocumented sequential workflow that keeps the sync active
RecurrenceRestart the process when duplicates returnTemplates, schedules, Recipes, and Workflow or Flow triggers
Proven at CRM scale

Confidence comes from seeing the result before you run it.

Preview every match and field-level outcome before anything is written, then run the same rules across the whole database.

“We’ve been able to match and merge records using custom rules, and the preview function gives us peace of mind before making changes. You get much more control and transparency.”

Carlos L. · CRM Admin / Developer · Mid-Market

G2 review

4.6 out of 5 on G2

Based on 209 reviews from CRM and operations teams.

Read the reviews on G2
Frequently asked questions

What happens in the cases native tools cannot handle?

Can I merge more than 250 duplicate records in HubSpot?

Yes. Insycle's Synthetic merge can bypass HubSpot's native limit of 250 records per master while preserving the selected master's Record ID.

Can I deduplicate while HubSpot-Salesforce sync is active?

Yes, using a sequential process: deduplicate Salesforce first, then match the corresponding HubSpot masters using the Salesforce Account ID. This prevents the integration from recreating the duplicates.

What happens to data that is not kept on the master record?

Associated records, activities, and attachments are reassigned to the master. Field values that are not retained remain available in CRM history, and non-master emails can be preserved in Additional Email.

Can I preview merges before running them?

Yes. Preview mode produces a CSV showing each duplicate group, the selected master, retained field values, exclusions, and errors before any CRM record changes.

Start with the duplicates in front of you

Connect your CRM and run your first duplicate scan in minutes.

See what native deduplication missed before deciding what to merge.

From cleanup to integrity

Make the last cleanup the last one.

Duplicates keep coming back because merging fixes records, not the process that creates them. See how teams turn cleanup into a continuous system for Data Integrity.

See the complete system