Data migration services move business records from an old system, spreadsheet, database, or vendor into a new application. The work includes far more than copying files. Records must be inventoried, mapped, cleaned, transformed, tested, reconciled, secured, and cut over while the business continues operating.
A successful migration gives the new system data employees trust on its first working day. A failed one produces duplicate customers, missing history, broken relationships, and months of manual correction. The quality of the migration often matters more to adoption than the quality of the new interface.
What data migration includes
A complete migration may include:
- Identifying every source and its owner.
- Profiling fields, formats, duplicates, and missing values.
- Choosing which records and history must move.
- Mapping old fields and relationships to the new model.
- Cleaning and transforming inconsistent data.
- Extracting attachments and documents.
- Loading a test environment and reviewing exceptions.
- Reconciling counts, totals, and business outcomes.
- Planning the final cutover and rollback.
- Archiving or retiring the old system safely.
The final import script is only one part. Most of the risk lives in decisions about meaning and quality.
Start with a source inventory
List every system, workbook, shared folder, export, and personal file that contains relevant records. Identify the current source of truth and any downstream process that reads from it.
Ask departments what they use, not only what management believes they use. A formal CRM may hold customer contacts while operations relies on a separate location spreadsheet and accounting contains the corrected legal names. The migration must resolve those differences deliberately.
Record access method, owner, approximate volume, date range, file types, update frequency, and sensitivity for each source.
Decide what should move
More history is not always better. Active customers, open jobs, current inventory, unpaid invoices, and valid agreements usually need operational access. Ten years of closed activity may be suitable for a searchable read-only archive.
Classify data as:
- Operational: required for current work in the new system.
- Reference: useful history that should remain searchable.
- Retained: kept for approved legal or business reasons but rarely accessed.
- Retired: duplicate, obsolete, or unnecessary data approved for disposal.
Moving every old field creates cost and imports confusion. Deleting without an approved retention decision creates a different risk. Business owners and appropriate professional advisers should approve the boundary.
Map meaning, not only column names
An old field called `Status` may contain sales stage, account state, job outcome, or several meanings mixed together. `Customer` may identify a billing organization in one system and a service location in another.
For each destination field, document the source, transformation, default, allowed values, relationship, and handling of missing or invalid records. Examples include:
- Split a combined full name into person fields only when reliable.
- Convert local dates to an explicit time zone.
- Normalize phone numbers while preserving extensions.
- Map retired product codes to current identifiers.
- Create separate customer and location records from repeated rows.
- Preserve the original legacy ID for traceability.
The mapping document becomes the migration specification and the explanation for later differences.
Duplicates require business rules
Two records with the same email may be duplicates, family members sharing an address, or one person with separate business roles. Similar company names may represent branches, legal entities, or spelling differences.
Use exact identifiers where they exist. Apply conservative matching to generate candidates, then route uncertain cases for review. Preserve which records were merged and which source values survived.
Automatic aggressive merging can be worse than leaving duplicates because it combines histories belonging to different customers.
Relationships are easy to lose
Moving customer names and job rows is not enough. Jobs must remain linked to the correct customer and location. Documents must remain linked to their agreement or project. Invoice references, parent companies, contacts, assets, and recurring schedules need stable relationships.
Create or preserve identifiers before moving dependent records. Load parent records first, then translate legacy IDs to new IDs for related data. Reject orphaned records into a review report rather than attaching them to a generic placeholder silently.
Documents and attachments need their own plan
Files may live in database blobs, local folders, email, or vendor storage. Inventory type, size, naming, permissions, and related record. Decide whether the new system stores the file or a secure reference.
Check for missing files, duplicate attachments, unsupported formats, and unsafe content. Preserve the original filename and date where meaningful while giving users a descriptive display name.
Practice migrations are mandatory
Run the full extraction, transformation, and load into a safe test environment. Time every phase and record failures. Business users should inspect representative customers, jobs, reports, documents, unusual cases, and historical periods.
Repeat after corrections. A migration that has never completed end to end is not ready for cutover. The practice run also reveals how long the final outage or synchronization window may need to be.
Reconcile business facts
Row counts are useful but insufficient. Reconcile facts the business recognizes:
- Active customers and locations.
- Open opportunities, jobs, orders, and tasks.
- Inventory by item and location.
- Unpaid invoices or balances when in scope.
- Documents by requirement and status.
- Totals by month, department, or category.
- Random samples traced from source to destination.
Explain every difference. Some reveal migration defects. Others reveal that the old system contained invalid or duplicated data. The business must approve the corrected result.
Plan the cutover
Choose when the old system stops accepting updates, when final extraction begins, how new records created during transition are handled, who validates the result, and when users enter the new system.
Define a rollback condition and method. Keep protected source exports and old-system access until the agreed validation period ends. Make the old system read-only after successful cutover so employees do not create two sources of truth.
Protect sensitive data
Migration copies are easy to overlook. Use encrypted transfer and storage, restrict access, avoid personal devices, and remove temporary extracts after approval. Mask or synthesize sensitive values in development when full data is unnecessary.
Log who accessed production data and where copies exist. Align archives and disposal with the business's retention and security requirements.
What data migration costs
A clean export with a few thousand records and straightforward mapping may require dozens of hours. Several inconsistent systems, complex relationships, documents, historical transactions, and manual review can require hundreds.
Cost is driven by source access, number of record types, data quality, relationships, volume, files, reconciliation requirements, downtime tolerance, and the number of practice runs. Ask for discovery and profiling before trusting a fixed migration number.
Questions to ask a migration provider
- How will sources and downstream dependencies be inventoried?
- Who approves mappings and duplicate rules?
- How many practice migrations are planned?
- What reconciliation proves success?
- How are rejected records reviewed?
- How are temporary data copies protected and destroyed?
- What is the cutover and rollback plan?
- What archive or export remains after the old system closes?
Migration is part of the product
Data migration services for a small business should be scoped alongside the new application, not left for the final week. The data model, identifiers, permissions, and workflow all affect how information can move.
Begin profiling early, let business users approve meaning and reconciliation, and treat cutover as an operational event. The result should not merely load successfully; it should let employees recognize and trust the business they know.
Moving away from spreadsheets, an old CRM, or legacy software? Send Vertinus sample exports and the systems involved. We will profile the sources and scope mapping, cleanup, practice runs, and cutover separately.