# Clean Up Duplicates From a CRM Migration | Dedupely

> Deduplicate before, during and after a CRM migration: clean each source, control what lands, and merge what the move created, in any CRM Dedupely supports.

- URL: https://dedupe.ly/solutions/migrations
- Section: solutions
- Site index: https://dedupe.ly/llms.txt
- Any page: append `.md` to its URL for this plain-text form

---

Solutions Migrate to a new CRM without duplicates
Migrations & Acquisitions

## Clean Up Your CRM Migration Before, During and After the Move

Deduplicate each source before you export, control what lands during the move, and merge what the migration created once the new CRM is live.
[Try for free](https://v2.app.dedupe.ly/signup)[Talk to sales](https://meetings.dedupe.ly/meetings/gaby-salinas/talk-to-sales)

### What we hear from teams in the middle of a migration

18%
of companies find that CRM migrations create massive amounts of duplicates.
25%
of companies find that native deduplication tools miss duplicates due to formatting or spelling differences.
37%
of teams are afraid of merging the wrong data, losing history, or breaking their system.
Source: Dedupely customer call research

### Why migrations create duplicates

A migration combines records from systems that never checked each other. A customer who exists in both arrives twice, and any duplicates already in the old CRM move over with everything else.
- **Different record IDs:** the old system's ID means nothing to the new CRM unless it's carried over in a field.
- **Field mapping:** emails in secondary fields, mixed phone formats and split company names stop records from matching.
- **Imports without a key:** rows with no email, domain or record ID usually become new records instead of updating existing ones.
- **Bulk loads skip the usual checks:** built-in deduplication behaves differently on imports and API loads than on records created by hand.

### How Dedupely compares for migrations

| Criterion | Native CRM tools | Other dedupe tools | Custom scripts | Dedupely |
| --- | --- | --- | --- | --- |
| Merging in bulk | Most merge a few records at a time. Bulk merging needs a higher plan, or a request to support, in some CRMs. | Most support bulk merging. | Possible, if someone builds and maintains the logic. | Bulk merge with select-all, on every plan. |
| Cleaning files before import | Most match on a single key, like email, name or domain, at import. Rows that don't match exactly become new records. | Several compare an import file against the CRM. Fewer clean the duplicates inside the file itself. | Possible, if someone writes and runs them. | Merges duplicates inside one or several CSV files before you import. |
| Choosing which values survive | Most let you pick values one merge at a time, with few or no saved rules. | Most offer merge rules, with varying detail. | Whatever the script is written to do. | Field-level and Primary record-level win/lose Merge Rules. |
| Record of what changed | Few keep a full record of what changed in each merge, and in some CRMs a merge can't be undone. | Most keep a merge log. | Only if you build logging. | Preview every merge and Merge Rules outcome first. Merge History keeps the original records. |
| HubSpot–Salesforce sync | HubSpot blocks company merges on the legacy sync. | Just one accounts for the sync. | Risky: merges can break the link between systems. | Merges the records in HubSpot and Salesforce in one action, so the sync doesn't re-create them. |
Native CRM tools as of October 2026, from the help documentation of HubSpot, Salesforce, Pipedrive, Close, Nimble and Google Contacts.

### How to clean up a CRM migration before, during and after the move

-
Step 1 Before

#### How do you clean CRM data before a migration?

Deduplicate each source system on its own, then agree on the field records match on. Cleaning in the old CRM is easier, because nothing in the new one depends on those records yet.
-
Connect the old CRM and run the [default Duplicate Searches](https://dedupe.ly/knowledge-base/duplicate-searches), or [upload its exports as CSV files](https://dedupe.ly/knowledge-base/merge-duplicates-in-spreadsheets), combined into one file or separately, and merge them before the move.
-
Agree on the matching field: email for people, website domain for companies, the old record ID for deals. Use [domain root matching](https://dedupe.ly/glossary/domain-root-matching)
so country domains group under one company.
- Leave test records and bounced contacts behind, and keep an archive export.
-
Step 2 During

#### How do you stop a migration from creating new duplicates?

Load a test batch first and check it for duplicates before loading the rest. Import companies, then people, then deals, and run every import on the agreed field.
- Connect the new CRM and run a Duplicate Search right after the test batch lands.
- List every form, sync and integration that writes to the new CRM during cutover, and avoid two-way syncs until each field has an owner.
-
Turn on [Auto Match](https://dedupe.ly/knowledge-base/auto-match)
so new duplicates are flagged while the rest of the data loads.
-
Step 3 After

#### How do you merge the duplicates a migration created without losing data?

Find them by creation date, import batch or old record ID, then merge in stages. Decide field by field which value wins, and review unclear matches before you merge them.
-
Use [Advanced Filters](https://dedupe.ly/knowledge-base/filters)
to keep matches where one or more records were created after the import date. [Dedupely Intelligence](https://dedupe.ly/knowledge-base/dedupely-intelligence) finds the duplicates exact-field rules miss.
-
Set [Merge Rules](https://dedupe.ly/knowledge-base/merge-rules)
for owner, lifecycle stage and email opt-out, where mistakes cost the most.
-
Send near matches to [Manual Review](https://dedupe.ly/knowledge-base/manual-review). [Merge History](https://dedupe.ly/knowledge-base/merge-history) keeps every original record.
[58,000+ duplicate records merged Read the case study](https://dedupe.ly/case-studies/saas-pipedrive-migration-duplicates)
-
Step 4 Automate

#### How do you keep duplicates out once the new CRM is live?

Let Auto Merge handle the clear duplicates that syncs and imports keep creating, and let Auto Match flag the edge cases for review. If HubSpot syncs with Salesforce, link both CRMs in Dedupely, so every merge updates both.
-
See [Merge incoming duplicates automatically](https://dedupe.ly/solutions/auto-merge) and
[Review new duplicates before they merge](https://dedupe.ly/solutions/auto-match).
-
With the [HubSpot–Salesforce sync](https://dedupe.ly/knowledge-base/merging-with-hubspot-salesforce-integration), each merge updates both CRMs, so the next sync doesn't bring the duplicate back.

### What makes Dedupely different

-

#### All features included in yearly subscriptions.

Merge Rules, Auto Merge and Auto Match come with every plan. Yearly subscriptions add Dedupely Intelligence in full.
-

#### Priced by records, not seats.

Unlimited users, with no per-user fees.
-

#### Every merge on record.

Preview each merge first. Merge History keeps the original records, so you can see exactly what changed.
Test your matching on a spreadsheet export before the move.
[Upload a CSV and find duplicates](https://v2.app.dedupe.ly/signup)

### See how Dedupely works

[Pipedrive SaaS How a SaaS Company Merged 58,000+ Duplicate Pipedrive Records Created by Its Migration from HubSpot, with Dedupely 58,000+ duplicate records merged Read the case study](https://dedupe.ly/case-studies/saas-pipedrive-migration-duplicates)
[Guide How to Dedupe Before and After a CRM Migration Read the guide](https://dedupe.ly/knowledge-base/how-to-dedupe-before-and-after-a-crm-migration)
[Guide Your First Deduplication Project Read the guide](https://dedupe.ly/knowledge-base/your-first-deduplication-project)

### Frequently asked questions

#### When should you deduplicate during a CRM migration?

Three times. Before the move, clean each source so old duplicates stay behind. During the move, check a test batch before loading the rest. After the move, merge the duplicates created wherever the same customer existed in both systems.

#### Which field should you match records on during a migration?

Email for people and website domain for companies. For deals, store the old system's record ID in a field on every migrated record. That lets a second import update existing records instead of creating new ones.

#### Can Dedupely merge records between two different CRMs?

Dedupely cleans one CRM at a time, with one exception: it matches and merges across the HubSpot–Salesforce sync. For other pairs, upload both exports as CSV files, merge them in Dedupely, and import one clean file.

#### Does merging records change their IDs?

It depends on the CRM. In HubSpot, the merged record usually gets a new ID. In Salesforce, the surviving record keeps its ID and the others go to the Recycle Bin for 15 days. Update any integrations, reports or spreadsheets that store IDs.

#### What about merging CRMs after an acquisition?

The same steps apply, plus a few business decisions: which system is the source of truth, who owns shared accounts, and how to keep regional offices apart when they share a name or domain. See [Merging CRM Data After an Acquisition](https://dedupe.ly/glossary/crm-data-after-an-acquisition).

### Start your new CRM without the old duplicates

[Try for free](https://v2.app.dedupe.ly/signup)[Talk to sales](https://meetings.dedupe.ly/meetings/gaby-salinas/talk-to-sales)

### Related resources

[Glossary CRM Migration Read more](https://dedupe.ly/glossary/crm-migration)
[Blog How to deduplicate before, during and after a CRM migration Read more](https://dedupe.ly/blog/why-every-crm-migration-needs-deduplication-first)
[Knowledge base Merge duplicates in spreadsheets Read more](https://dedupe.ly/knowledge-base/merge-duplicates-in-spreadsheets)

### Explore other use cases

[Merge CRMs after an acquisition Combine two companies' CRMs without mixing up owners or offices. Learn more](https://dedupe.ly/solutions/acquisitions)
[Clean up an inherited CRM Clear years of duplicates from a CRM you didn't build. Learn more](https://dedupe.ly/solutions/inherited-crm)
[Clean a CSV before importing Merge one spreadsheet or several before they reach your CRM. Learn more](https://dedupe.ly/integrations/csv)
Skip to content
