CRM migration is a controlled data change, not a single spreadsheet upload. The plan should show what moves, what stays, how records match, how totals are reconciled, who approves the result, and how the business continues if an import fails. Begin with a small representative sample before changing the production workflow.
Inventory sources and owners
List every source containing customer information: the current CRM, spreadsheets, email tools, forms, accounting systems, support desks, calendars, and personal files. Assign a business owner to each source. Record record counts, date coverage, unique identifiers, required fields, attachments, relationships, and known quality problems.
Decide which source wins when values conflict. Do not merge every available field simply because it exists. Retain evidence of consent, account ownership, open opportunities, and customer commitments, while excluding obsolete or sensitive data that has no defined business use.
Design mappings and transformation rules
Create a field map from source to destination, including data type, allowed values, required status, default value, and transformation. Define how contacts connect to companies and opportunities. Specify whether a blank source value clears an existing destination value or leaves it unchanged. Preserve original IDs in a dedicated migration field when practical so errors can be traced.
| Control | Question | Test |
|---|---|---|
| Unique key | What prevents duplicate contacts? | Import the same sample twice |
| Picklist | How do old stages map? | Count records by old and new stage |
| Relationships | Do deals retain company links? | Inspect parent-child samples |
| Dates | Which timezone and format apply? | Check boundary dates and times |
Run a reversible pilot
Back up source exports and configuration before the pilot. Use records that include duplicates, missing fields, multiple companies, closed and open deals, historical activities, opt-outs, attachments, and non-English characters. Import into a sandbox or isolated test area when available. Record the exact file, settings, operator, start time, warnings, and result.
HubSpot documents that imports can add or update records and that unique identifiers affect matching. Other platforms use different rules. Read the destination provider’s current import documentation rather than assuming CSV behavior is universal.
Reconcile, cut over, and retain evidence
Compare counts by object, owner, stage, status, and date range. Check financial and operational totals such as open pipeline amount, active customers, upcoming tasks, and opt-out records. Have business users perform their daily workflow before approval. Log defects and repeat the pilot after corrections.
For cutover, set a source freeze or delta process, publish user instructions, monitor failed automations and integrations, and retain rollback access for an agreed period. After approval, restrict old-system editing, document the retention decision, and schedule a post-migration review.
Sources and verification starting points
Product features and documentation can change. Open current provider and authority pages before making a material decision.