The reason CRM migrations take three months is almost never technical. It is that somebody, usually with good intentions, decides the new system should contain everything the old one did. Eleven years of closed jobs. Contacts who have not answered since 2019. A spreadsheet tab nobody has opened but nobody will delete.
That decision converts a two-week switch into a data project, and data projects are where CRM rollouts go to die. The businesses that switch successfully move a deliberately small amount and archive the rest somewhere they can still read it.
The only four things that must come across
- Active customers. Anyone you have worked for in the last 24 months, or who is on a recurring plan. This is your actual book of business.
- Open quotes and open jobs. Anything with money still in play. If it is unresolved, it moves.
- Recurring agreements and their renewal dates. Maintenance plans, service contracts, anything that bills on a schedule. Missing one of these costs real revenue.
- Anything with a legal or warranty obligation attached. Work under warranty, signed agreements, compliance records.
That is the list. Everything else is history, and history belongs in an export you keep, not in a system you are trying to start using on Monday.
Clean before you import, not after
Every CRM will happily import your duplicates, your inconsistent phone formats, and the eleven contacts named "Customer". Once they are in, cleaning them is far more work than it was in a spreadsheet, because now they are attached to records and history.
- De-duplicate on phone number first, not name. Names are inconsistent; numbers rarely are.
- Standardise phone formatting before import, since matching and texting both depend on it.
- Split any field that holds two things. "Address" that contains a unit number and a gate code needs to become two fields, or the gate code will be invisible to whoever is standing at the gate.
- Decide what an empty field means. Blank email on a customer who genuinely has no email is different from blank because nobody asked, and only one of those is worth chasing.
The fields people forget and then miss
Names, addresses, and phone numbers always make it. The ones that get dropped and then hurt are the operational details that lived in a notes column: gate codes, dog on property, which door to use, who signs off, preferred appointment windows, and the reason a customer left last time.
These are the fields that make the difference between a CRM your technicians trust and one they work around. If your old notes column is a wall of unstructured text, the migration is the moment to pull the repeating items out of it into their own fields.
A missed call answers itself in 90 seconds — while she is still holding the phone.
Built on the truck, sent before you pull away, with the chase already scheduled.
Photos and notes land on the customer record, not in someone's camera roll.
Invoice, review request, and next spring's tune-up — all without a Monday to-do list.
Run both systems for two weeks. Not two months.
A short overlap is sensible. A long one is how you end up maintaining two systems forever, because there is never a day when someone declares the old one dead.
Set the date before you start. New work goes into the new system from day one; the old system becomes read-only for reference. If something is missing, you add it as you hit it, which surfaces the genuinely important gaps within a fortnight and ignores the ones that never come up.
- 01Export everything, keep it safe
Full export from the old system to CSV, stored somewhere you can search. This is your safety net and it removes most of the anxiety about leaving things behind.
- 02Import the four categories
Active customers, open quotes and jobs, recurring agreements, and anything under warranty or contract.
- 03Spot-check twenty records
Pick twenty across different types and check them field by field against the old system. Twenty is enough to find systematic problems and few enough to actually do.
- 04Switch new work over
From an agreed date, everything new is created in the new system only. No exceptions, because exceptions are what keep the old system alive.
- 05Close the old system to writing
Read-only after two weeks. If nobody has needed it for a month, export a final copy and turn it off.
What actually goes wrong
| Symptom | Usual cause | Fix |
|---|---|---|
| Duplicate customers everywhere | Matched on name instead of phone | Re-run de-duplication on phone; merge rather than delete |
| Texts failing to send | Phone numbers imported with inconsistent formatting | Normalise to a single format before import |
| Technicians still using the old system | The field they rely on did not come across | Ask them which field. It is usually one specific thing |
| Recurring work stopped billing | Agreements imported as customers, not as agreements | Re-import agreements with their renewal dates |
| Nobody trusts the data | Migrated everything, including junk | Archive aggressively; a small clean dataset beats a large dirty one |
Common questions
How long should a CRM migration take?
For a service business with one location, about two weeks including the overlap period. If it is taking longer than a month, the usual cause is scope: someone has decided to bring across historical data that nobody will act on.
Should I import all my old customers?
Import anyone active in the last two years or on a recurring plan. Export the rest to a file you keep. You can always import an old customer later if they come back, and you will rarely need to.
What if I have data in several places?
Pick the one that is most current as your source of truth, migrate that, then reconcile the others against it rather than importing all of them. Importing three overlapping sources is how you create duplicates at scale.
Can I migrate without any downtime?
Yes. Run both systems briefly, with all new work going into the new one. There is no moment where nothing works; there is a fortnight where you occasionally look something up in the old system.