Switching CRMs is one of the most disruption-prone technology projects a business can undertake — not because the software is hard to learn, but because the data migration almost always goes wrong in at least one place. Contacts with missing fields. Deals that lost their notes. Custom fields that didn't map. The team reverts to the old system for weeks.
This guide is built from what we've seen break repeatedly. Follow these steps and you'll arrive on the other side with your data intact.
Before You Start: Audit What You Actually Have
Most businesses dramatically underestimate how much data they've accumulated in their current CRM. Before exporting anything, do a clean audit:
- Record types: contacts, companies, deals/opportunities, notes/activities, tasks, emails, attachments, custom objects
- Custom fields: anything beyond the standard set — these require manual remapping
- Relationships: contact-to-company links, deal-to-contact associations, contact ownership
- Historical data: closed deals, archived contacts, deleted records (if relevant)
- Automation rules: sequences, workflows, lead scoring — note these separately, they don't transfer
Step-by-Step Migration
Export from your current CRM
Each platform exports differently. Key pointers:
- HubSpot: Settings → Data Management → Export → choose object type. Export contacts, companies, deals, and tickets separately. Notes export as a separate "engagements" file — don't miss it.
- Salesforce: Data Export Service (Setup → Data → Data Export) — scheduled or immediate. Use Data Loader for large datasets (>10k records). Export all standard and custom objects.
- Pipedrive: Each section has an Export button (deals, contacts, organisations, activities). Pipedrive's export format is clean but limited to core fields.
Clean your data before importing
Raw exports from CRMs are always messy. Common issues:
- Duplicate contacts (same person with two email addresses, or merged from multiple sources)
- Inconsistent field formats — phone numbers in 15 different formats, dates in mixed locales
- Incomplete required fields — contacts with no email, companies with no name
- Renamed column headers that won't auto-match on import
Deduplicate before importing, not after. Post-import deduplication is significantly more complex.
Import into the new CRM
This is where platform choice matters most. Standard CSV import requires manual column mapping for every field — a task that's error-prone on large, messy exports. Response365's AI-powered import reads your column headers and automatically maps them to the right fields, including messy or renamed headers. It runs a validation step before writing anything, so errors surface before they cause problems.
For businesses migrating from a connected platform, Response365 also offers direct import — no spreadsheets needed:
What You Can Import Directly (No Spreadsheet Needed)
| Source Platform | Type | What Imports |
|---|---|---|
| HubSpot | CRM | Contacts, Companies, Deals → direct connector |
| Salesforce | CRM | Contacts, Accounts, Opportunities → direct connector |
| Pipedrive | CRM | Contacts, Organisations, Deals → direct connector |
| Shopify | E-commerce | Customers, Products, Orders |
| WooCommerce | E-commerce | Customers, Products, Orders |
| Magento | E-commerce | Customers, Products |
| Xero | Accounting | Customers / contacts, Invoices |
| MYOB | Accounting | Customers, Invoices |
| Stripe | Payments | Customers, Payments |
| Mailchimp | Marketing | Subscribers → Customers |
Test with a subset first
Never do a full import on the first run. Import 50–100 records, check that key fields transferred correctly, verify relationships (contact → company links), confirm custom fields populated. Only then import the full dataset.
What doesn't transfer — and what to do about it
- Automation rules and sequences — recreate in the new CRM. Export documentation of your existing flows before you cancel the old subscription.
- Email attachments and file attachments — download these manually from the old CRM before cancellation.
- Custom dashboards and reports — recreate from scratch. Screenshot the old ones for reference.
- Activity history (calls, meetings) — usually transferable via CSV but relationships may need manual reconnection.
The Three Things That Always Break
1. Contact-to-company relationships
Almost every CRM exports contacts and companies as separate files, and the link between them (which contact belongs to which company) lives in a reference field. If that field is exported with an internal ID rather than the company name, re-linking on import requires a matching step. Export company names, not IDs, wherever possible.
2. Deal / opportunity history
Current pipeline stages transfer. Historical deal stages — what a deal was worth six months ago, when it was in negotiation — often don't. If deal history matters for reporting, export it separately and import as a notes field or attachment.
3. The cutover period
If your team is still actively using the old CRM while you're setting up the new one, you'll end up with diverged data. The cleanest approach: set a hard cutover date, do the final export that morning, and turn off access to the old system the same day.