About UsBlogContact
Discuss your project

Guide · Apps & software

Data migration to a new system: planning and pitfalls

A new system is only useful when it contains the data people need: clients, orders, products, contracts, history. Moving that data from spreadsheets, an old program or another CRM is often the riskiest part of a project — underestimated at the start and rushed at the end. This guide describes a process that avoids the most common failures.

Updated · 3 min read · DealPro

[ 01 ]

In short

In short

  1. 01

    Inventory the data: what exists, where, in what quality, and what is actually needed in the new system.

  2. 02

    Map old fields to new ones explicitly, including rules for transforming values.

  3. 03

    Clean data before migrating — duplicates, inconsistent formats, obsolete records.

  4. 04

    Migrate with repeatable scripts, not by hand, and run full test migrations before the real one.

  5. 05

    Validate with counts, samples and business checks, and involve the people who know the data.

[ 02 ]

Guide

Step 1: inventory

  • Which sources hold the data: files, databases, the old system's exports.
  • Which entities: clients, contacts, deals, orders, products, invoices, documents.
  • Volume and time span.
  • Quality issues: duplicates, missing fields, free text where structured data is expected.
  • What must be migrated, what can be archived and what can be dropped.

Not everything needs to move. Old completed records can sometimes stay in an archive that remains searchable.

Step 2: mapping

For each target field, specify the source field and the transformation:

  • direct copy;
  • format change (dates, phone numbers, currencies);
  • value mapping (old status "3" → new status "Paid");
  • splitting or combining fields (full name into first and last name);
  • default values for missing data.

Relationships matter: orders must link to the right clients, contacts to the right companies. Keep the old IDs in the new system for traceability.

Step 3: cleaning

  • Deduplicate clients and contacts using rules (phone, email, tax number), with manual review of uncertain matches.
  • Normalise phone numbers, addresses and names.
  • Fix or flag records with missing critical data.
  • Decide what to do with records nobody can explain.

Cleaning is best done by or with the people who use the data daily; they know which "duplicates" are actually different clients.

Step 4: scripts and test runs

Write migration scripts that can run repeatedly on fresh exports. Run full test migrations into a staging environment, check results, adjust mapping and cleaning rules, and repeat. Each run should be faster and cleaner than the last. See staging and testing.

Step 5: validation

  • Record counts per entity: source vs target.
  • Totals: sums of order values, balances, stock quantities.
  • Samples: a set of records checked field by field by users.
  • Business scenarios: can a manager find a client and see their history? Does a report match the old one?

Step 6: cut-over

  • Choose a time with low activity.
  • Freeze changes in the old system.
  • Run the final migration with the latest data.
  • Validate quickly with the prepared checks.
  • Switch users to the new system; keep the old one read-only for reference for a period.

For systems that cannot stop, a phased approach or a period of synchronisation between old and new may be needed.

History and documents

Decide how much history to migrate: full history is valuable but multiplies effort; recent history plus an archive is often a good compromise. Attached files and documents need their own plan: storage, links to records and access rights.

Personal data

Migration is a good moment to delete data you no longer need and to check consents. Protect exports and staging copies that contain personal data. See personal data law.

[ 03 ]

FAQ

Frequently asked questions

Can we migrate by copying and pasting?

For a few dozen records, perhaps. For anything larger, manual copying introduces errors and cannot be repeated for the final cut-over.

How long should the old system be kept?

In read-only mode, long enough that users are confident the new system has what they need — often several months — and longer if legal retention requires it.

What if the old system cannot export data?

Options include database access, reports exported to files, or, as a last resort, automated extraction from the interface. Assess this early.

Related reading

[ 04 ]

Next step

Have a project in mind?

Describe the task in a few lines. We reply with questions and the next step — no commitment and no templated proposal.