SYNQ
Discuss your project

CRM data migration: Preserve contacts and their relationships

SYNQ Knowledge · Updated 24 September 2026

A CRM data migration transfers selected customer information into a new system. What matters is that organisations, contacts, opportunities and histories still belong together correctly afterwards. This guide explains how to define the scope, resolve potential duplicates and prepare a mapping that can be checked.

On this page

Define the records to be transferred

Start with an inventory. Which information lives in the current CRM, which in spreadsheets and which in other applications? For each source, record the data owner, available export methods and relationships to other records.

Separate the inventory into objects: organisations, contacts, opportunities, activities, notes and attachments. Rules for roles, pipeline stages and automations belong in the inventory too, but a data import does not automatically transfer them. They may require separate configuration.

Decide which information is needed for current work, which should remain accessible as history and which requires a separate decision. A contact is not worthless simply because it is old. Equally, the existence of a full export does not justify loading everything unchanged into the active CRM.

Retention and deletion decisions belong with the responsible people in the organisation. For technical preparation, use a clear status: transfer, keep separately accessible or decision pending. Unresolved records should not disappear through an automatic cleansing rule.

Merge contacts. Preserve relationships.

A name may appear twice. The important question is which relationships and history must remain.

SImport reviewExample
Contact match · Lea Sample

Possible duplicate found

Source contacts
C-18 + C-42
Company
Sample company
History
Note + opportunity
Decision
Manual review

Matching names alone are not enough to merge two contacts automatically.

Identity checked

Source contacts
C-18 + C-42
Company
Sample company
History
Both records checked
Decision
Merge

In this example an owner confirms that both records describe the same contact.

Relationships transferred

Source contacts
New contact C-18
Company
Sample company
History
Note + opportunity
Decision
Test import

The opportunity remains linked to the contact and company.

Target record checked

Source contacts
One contact C-18
Company
Sample company
History
Relationships checked
Decision
Approved

Review the record from the users’ perspective. The correct row count is not enough.

Illustrative interface with sample data. No connection to a real system.
Import reviewExample
  1. Matching names alone are not enough to merge two contacts automatically.

  2. In this example an owner confirms that both records describe the same contact.

  3. The opportunity remains linked to the contact and company.

  4. Review the record from the users’ perspective. The correct row count is not enough.

Illustrative interface with sample data. No connection to a real system.

Choose the transfer method around the data model

A spreadsheet import may be enough when the structure is manageable and the required relationships are supported. Check how identifiers, multiple associations, attachments and activities are handled. The ability to read a file does not mean it contains every part of the CRM record.

An import tool or API integration may be appropriate when multiple objects, repeated runs or specific transformations are required. An API is a system's technical interface. Check which data it exposes, which limits apply and how it reports errors in both systems.

Method Check first Particular limitation
CSV or spreadsheet import Supported objects, mandatory fields, data types and relationship keys Attachments or complex relationships may need a separate transfer.
Import tool Supported versions, objects, transformations and repeat runs An available connector does not prove support for every custom field.
Custom API transfer Read/write permissions, limits, error handling and restart behaviour Technical availability does not replace business mapping.

The appropriate method follows the agreed target model. If the relationships between organisations, people and opportunities are still unclear, define them first in the CRM requirements specification.

Map contacts, organisations and opportunities together

Mapping assigns each relevant source field to a target field. It also defines transformations and how relationships are resolved. A list of column names alone is insufficient.

Use stable source identifiers to trace each record. If identifiers change in the target system, retain a mapping between old and new IDs. A company name on its own is a problematic relationship key when businesses share a name or spelling differs.

The model below shows why objects and relationships need to be checked together. An imported contact with no correct company association may be visible in the CRM and still be wrong for business use.

Illustrative mapping A relationship follows an identifier, not a spelling.
Organisation
Source ID F-18 → target ID A-302.
Contact
Source ID P-41 → target ID C-906; the previous company reference F-18 is mapped to A-302.
Opportunity
Source ID V-07 → target ID O-115; organisation A-302 and contact C-906 are associated with it.
Check
The opportunity shows the same business customer and contact as the approved source records.
Fictional identifiers in a simplified model. The actual import order depends on relationships and the target system's capabilities.

Record formats, empty values and mandatory information as well. An unknown telephone number remains unknown; it should not be filled with an invented replacement. For choice fields, old and new categories must match in meaning. Assigning every open opportunity to the first pipeline stage would change its previous status.

Microsoft's documentation on CRM migration to Dataverse also identifies differing source and target structures, data quality and relationship dependencies as separate challenges. The specific import mechanisms remain system-dependent.

Treat duplicates as a business decision

Similar names or the same email address may indicate a duplicate. They do not prove one. A shared mailbox can serve several people; companies with identical names may be separate entities. Separate detection of a potential conflict from approval to merge records.

Define which signals create a review case and who decides it. For a merge, record which record survives, which field values are retained and where activities, documents and opportunities should point afterwards.

Contradictory information needs a rule too. The most recently modified record does not necessarily contain the correct business information. For significant conflicts, a named person should check the source and record the decision.

Illustrative conflict decision Resolve the question before merging.
  1. Review case: Two contacts have the same name and business email address.
  2. Conflict: Their company associations differ; both records contain activities.
  3. Decision: The responsible person checks whether this is a company change or a genuine duplicate.
  4. Approval: The target contact, retained relationships and treatment of history are documented.
Fictional review case: similarity creates a review task. It does not automatically authorise deletion or a merge.

Accept the test import using relationship checks

Select test records that cover your different cases: multiple contacts, parallel opportunities, former owners, long notes, attachments and known duplicates. A random handful of simple contacts will not test those differences.

After the import, compare counts and error logs first. The reconciliation needs to match the agreed scope: imported records, deliberate merges, excluded records and open errors. Matching row counts alone do not prove a correct transfer.

Then check the business meaning. Open a customer record and follow its relationships, recent activities, ownership and active opportunities. Check dates and relevant time zones. For histories, distinguish between preserving the original time and person as information and the target system creating new technical import timestamps.

Test with the intended user roles as well. An administrator may see a fully imported record while sales lacks the permissions to use it. Conversely, the transfer must not unintentionally broaden access.

Record the expected result, observed result and approval. Define in advance which failures prevent the production switch. A missing contact relationship on active opportunities could be one such stop condition. The responsible business role accepts the result; a successful import status is insufficient.

Control changes and running automations

Records continue to change between the test run and the switch. Agree a cut-off and how new or modified records will be handled. Use either an agreed pause on writes or a tested transfer of changes. The responsible people need to know when each system becomes authoritative.

Before the production import, test how automations and integrations react. New records could trigger tasks, notifications or further transfers. Decide which functions remain disabled during import and how they will be re-enabled under controlled conditions.

Prepare a fallback procedure with a backup, clear ownership and an abort decision. Account for changes already made in the new system. Simply returning to the old dataset could otherwise omit them. Also test how an interrupted import can be repeated without creating new duplicates.

After approval, run a defined follow-up period with an issue list and a responsible contact. The CRM implementation guide adds team preparation and the move into everyday use to this technical plan.

Download the mapping and review templates

The CSV template for mapping and review cases contains example rows for fields, relationships and duplicate decisions, plus room for your own entries. The Markdown approval template adds scope, cut-off, stop conditions and follow-up. These are planning documents, not files to import directly into a CRM.

Complete the templates with the business data owner. Record open questions explicitly and check the result against a sample export. If the transfer is part of a custom CRM solution, these documents provide a concrete starting point for defining the project scope.

All guides

Your workflow is the starting point.

Bring a real workflow and your open questions. They help define a useful first scope.

Discuss your project