Step 1: freeze, copy and decide scope

Pick a cut-over date. Make a copy of each spreadsheet and work only on the copy. Decide what to bring across:

  • Contacts — people and companies.
  • Open deals or jobs — anything still in progress.
  • History — notes, last contact date. Decide how much is useful; years of old notes may be better left in an archive.
  • Consent — whether each person agreed to marketing. Don't assume; if it wasn't recorded, treat it as not given.

Step 2: clean the data

ProblemFix
Several people in one rowSplit into one row per person
Names in one columnSplit first and last name if the CRM uses both
Inconsistent phone formatsPick one format, ideally international
Mixed-case or padded emailsLower-case and trim
DuplicatesMerge in the spreadsheet before importing
Status written as free textMap to your new pipeline stages
Dates in different formatsConvert to one format the CRM accepts
Sensitive notesRemove or move to an appropriate system; see customer data in automations

Step 3: map columns to CRM fields

Create a mapping table: spreadsheet column → CRM property. Create any custom properties you need before importing. Decide which field is the unique identifier for matching — usually email for people. HubSpot's import guide explains how one CRM handles mapping and deduplication; others are similar.

Step 4: test with a small batch

Import 10–20 records first. Check:

  • Every field landed in the right place.
  • Dates and phone numbers look right.
  • Contacts are linked to the right companies and deals.
  • Re-importing the same file updates records instead of duplicating them.
  • Owners are assigned correctly.

Delete or fix the test batch, adjust the mapping and repeat until clean.

Step 5: import and verify

Import the full set. Compare counts: rows in the cleaned spreadsheet versus records in the CRM. Spot-check a sample of records against the original. Run a duplicate check; see fixing duplicate CRM leads.

Step 6: switch the team over

  • Point new leads (forms, booking tools) at the CRM from the cut-over date.
  • Make the old spreadsheet read-only so nobody keeps updating it.
  • For a week or two, have someone check that nothing new is landing in the old sheet.
  • Train the team on the few things they'll do daily: find a contact, log a call, move a deal.

After the move

Give it a month, then review: are people using it, are fields being filled, are there new duplicates? Small adjustments early prevent the CRM from becoming another spreadsheet nobody trusts.

Questions

Should I import everything?

No. Import active and recent records with a clear purpose. Archive the original spreadsheet securely and decide how long to keep it.

How long does a migration take?

For a small business with one or two spreadsheets, preparation usually takes longer than the import itself. Plan for cleaning, a test import and a short period of parallel checking.

Sources and further reading

Official documentation changes. Check the current version before you rely on a rule, limit or setting.

Next step

Start with one workflow worth fixing.

Bring the real steps, the tools you already use and the place the handoff gets stuck. We review feasibility, access and approval points before quoting — no instant integration promise.

See Business Automations for what we scope, or prepare a custom quote brief.