CRM migration checklist: what to map, clean and test before you switch
The checklist I use on every migration, in the order I use it, from 18+ moves into a new CRM.
By Lucas Nobre ·
I've done more than 18 CRM migrations, mostly into GoHighLevel, from FranConnect, Salesforce, Kajabi, Klaviyo, systeme.io and other GoHighLevel accounts. This is the checklist I actually use, in the order I use it, plus the mapping spreadsheet you can download and the mistake that taught me the most.
A CRM migration checklist has five parts: map everything in the old CRM, check what the new one can do, clean the data, test with a sample before the full import, and compare record counts before you switch. Between two different CRMs, contacts are usually the only thing that moves cleanly. Automations, pages, domains and integrations get rebuilt.
Step 0: make sure migrating is the right fix
One lesson first, because it cost a client money. I once migrated a company from a CRM their team didn't use to a better one. The work was done right, and the team still didn't use it. Changing software doesn't fix a problem that's cultural. A CRM only works when the team lives in it, every day.
Before you migrate, answer honestly: does the team use the current CRM, even badly? If not, fix the habit first. If yes, and the tool is what's holding you back, keep going.
Step 1: learn both platforms
Before touching any data, understand how each CRM stores things. One may use companies and deals as separate records, the other may put everything on the contact. One may have unlimited custom fields, the other may cap them. These differences decide the whole plan.
- List the objects each CRM uses: contacts, companies, deals or opportunities, tickets, custom objects
- Check field types and limits in the new CRM
- Check how each one handles tags, lists, pipelines and stages
- Check the import tools and API of both
Step 2: map everything in the old CRM
This is the step most migrations rush, and where most of the later problems come from. Open the old CRM and write down everything that exists in it, in the mapping spreadsheet:
- Number of contacts, companies and deals
- Every custom field, with its type and an example value
- Tags and lists, and what each one means
- Pipelines and stages
- Every automation: its trigger, what it does and whether it's still in use
- Forms, landing pages, funnels and websites, and how each was built (native builder, WordPress, custom code)
- Email and SMS templates
- Integrations, with the API keys or apps that power them
- Domains connected: website, email sending domain, tracking
- Users, roles and permissions
- Reports and dashboards people actually open
- Consent and opt-in records
Step 3: decide where each item goes
For every line in the map, pick one of four outcomes:
| Outcome | When | Example |
|---|---|---|
| Moves as data | The new CRM has an equivalent field or object | Contacts, tags, deal values |
| Rebuilt natively | The new CRM can do it, but it can't be copied | Automations, forms, pipelines |
| Rebuilt with an integration | The new CRM can't do it alone | A custom app, Zapier or n8n |
| Left behind | Nobody uses it | Old lists, dead automations, unused fields |
The last row matters more than it looks. A migration is the cheapest moment you'll ever have to delete what nobody uses.
What never transfers between different CRMs
Between two different platforms, assume only contacts and their basic data move cleanly. Plan to rebuild:
- Technical settings: email sending domain, DNS records, tracking
- Integrations and API keys
- Automations and sequences
- Websites, funnels, landing pages and forms
- Reports and dashboards
- Often, email and conversation history and file attachments
Between two accounts of the same platform, much more moves. In GoHighLevel, for example, snapshots carry almost the whole setup, and only contacts and conversations move separately.
Step 4: clean the data before it moves
The cleanest moment to fix data is before the import, not after. My checklist:
- Merge duplicate contacts, using email and phone as keys
- Format phone numbers with country code, so texts and WhatsApp work
- Remove or flag invalid emails
- Standardize values in dropdown fields (“TX”, “Texas” and “texas” become one)
- Decide what to do with contacts inactive for years
- Keep consent and unsubscribe status, so nobody who opted out gets messaged
Of everything in a migration, contacts deserve the most care. They're the one thing you can't rebuild.
Step 5: build the new CRM
- Create custom fields, pipelines and stages from the map
- Connect the domains and set up the email sending domain
- Rebuild the automations still in use
- Rebuild forms, pages and funnels
- Reconnect integrations with new API keys
- Create users with the right permissions
Step 6: test with a sample, then import
- Import a small sample first, around 50 to 100 contacts with every type of record
- Check that every field landed in the right place
- Run each automation with a test contact
- Fix the mapping, then run the full import
Step 7: prove nothing was lost
This is why the map from Step 2 matters. After the import, go back to it and check every line:
- Compare record counts between the old and new CRM: contacts, companies, deals
- Spot-check 20 records at random, field by field
- Confirm that every automation, form and integration in the map exists and works
- Confirm that unsubscribed contacts stayed unsubscribed
Step 8: switch, train and keep the old CRM on
- Keep the old CRM running until the new one is proven, and don't delete anything there until you confirm
- Train the team on the new CRM before the switch, not after
- Pick a switch date and tell everyone
- Watch the first 30 days closely: new leads, automations, reports
New Breed, a HubSpot partner, estimates that most migrations take one to two months. Mine have ranged from a few weeks to about a month, depending on how much has to be rebuilt.
A real example: 18,000 contacts in one month
A wellness franchise network in the US moved from FranConnect to GoHighLevel. The project took one month and moved more than 18,000 contacts with their pipelines and automations, with no data lost and no downtime for the franchisees. The network now saves US$22,800 a year in software.
The mapping spreadsheet
The download has six tabs, one for each part of this checklist:
| Tab | What goes in it |
|---|---|
| Inventory | Counts of contacts, companies, deals, users, automations, forms and integrations in the old CRM |
| Field mapping | Old field, type, example, new field, type, transformation needed |
| Automations | Name, trigger, what it does, still in use, outcome (rebuild, integration, leave behind) |
| Assets | Forms, pages, funnels, templates, how each was built and its outcome |
| Integrations and domains | Tool, what it connects, API key or app, owner, rebuilt (yes/no) |
| Validation | Each check from Step 7, with the old number, the new number and who confirmed it |
Frequently asked questions
How long does a CRM migration take?
From a few weeks to about two months, depending on data volume and how much has to be rebuilt. My largest, with 18,000+ contacts, took one month. There's a full breakdown of how much a migration costs.
What should I migrate and what should I leave behind?
Migrate active contacts, open deals and what the team uses. Leave behind dead automations, unused fields and lists nobody remembers.
Do I lose my email history?
Often, between different CRMs. Export it and keep it before the switch if you need it.
Can I keep using the old CRM during the migration?
Yes, and you should. Turn it off only after the new one is tested and the counts match.
Do I need a migration tool?
Usually not. Most migrations work with each platform's own import and export. Integrations like Zapier, n8n or a custom app fill the gaps.
Can you migrate my CRM?
Yes. I map, migrate, rebuild and test, and the old CRM stays on until the new one is proven.

Lucas Nobre
I'm Lucas Nobre, a freelance marketing and CRM specialist based in Fortaleza, Brazil. I started as a software developer at HP, which is why I test everything before it goes live.
Since 2021 I've built 150+ GoHighLevel sub-accounts and 100+ websites across 20+ industries, for clients in the US and 6+ other countries. Certified by CXL and the Interaction Design Foundation. My client work is under NDA, so names stay private.
Planning a CRM migration?
Tell me which CRM you use, where you want to go and roughly how many contacts you have. I'll reply with a plan and a fixed quote.
Email me