8 ERP Data Migration Mistakes That Derail Implementations — and How to Prevent Them
Forty-nine percent of ERP implementations hit data migration problems. The majority were predictable and preventable. The pattern is consistent: organizations discover data quality problems mid-project, after they have already committed timeline and resources to a schedule built on cleaner-data assumptions. The migration falls behind. The go-live date slips. The project team becomes demoralized.
ERP vendors pitch Excel templates as the migration solution. Real-world data — full of duplicates, inconsistencies, field mismatches, and structural problems — rarely fits those templates cleanly. Migrating it anyway creates a new system full of old problems.
This article breaks down the eight most common ERP data migration mistakes, the business impact of each, and the prevention steps that keep your implementation on schedule.
Key Takeaways
- Legacy systems typically contain 20–40% duplicate or incomplete records — discovered before migration costs little; discovered during migration costs weeks.
- Data migration accounts for 15–25% of total ERP implementation cost; redoing a failed migration adds four to eight weeks to the timeline.
- Organizations that invest in pre-migration data cleansing experience 30% fewer implementation issues overall.
- Data migration ownership belongs to business leaders (finance owns financial data, operations owns inventory data) — not exclusively to IT.
Mistake 1: Migrating Dirty Data Without Pre-Migration Audit
The Impact
Dirty data in the new system means every downstream process runs on a broken foundation. Duplicate customer records produce split AR balances and billing confusion. Incorrect vendor bank accounts produce failed payments. Inventory items with wrong costs distort COGS. These problems do not surface during testing with sample data — they surface when real users encounter real data after go-live.
The cost: weeks of data remediation in a live production system, with operations disrupted and user confidence in the new system eroded from day one.
How to Prevent It
Run a data audit in the first four weeks of the project — before any vendor configuration begins. For each data domain (customers, vendors, inventory, open transactions), assess:
- Duplicate record rate (how many records represent the same entity?)
- Completeness (what percentage of records have required fields populated?)
- Accuracy (spot-check sample against source documents)
- Structural compatibility (do field formats match the target ERP’s requirements?)
Findings from the audit become the data cleansing plan. Allocate dedicated resources and timeline to cleansing before migration begins.
Mistake 2: Underestimating Time and Resources for Migration
The Impact
Project timelines built on optimistic migration estimates compress every subsequent phase. Testing gets cut. Training gets compressed. The go-live date becomes the deadline even when the migration is not ready. Go-live on unvalidated data produces a launch that requires weeks of post-go-live remediation.
A failed migration that requires a redo adds four to eight weeks to implementation timeline — and all the associated cost.
How to Size the Effort Correctly
Data migration for a mid-market company requires:
- Two to four weeks of data audit and cleansing planning
- Four to six weeks of data cleansing (internal staff effort)
- Two to four weeks of migration development (mapping, transformation scripts, loading)
- Three to four weeks of testing (two to three full migration trial runs)
- One to two weeks of final validation and cutover preparation
Total: three to four months of migration work running in parallel with other project phases. This is not a two-week sprint at the end of configuration.
Neil J., IT Director at a $32M plastics manufacturer: His ERP project allocated three weeks for data migration. The data audit (run two months into the project) revealed 3,400 duplicate inventory items, 600 vendor records with incomplete payment information, and a customer master with 30% of addresses in non-standard format. Data cleansing alone took seven weeks. The go-live date moved from Q1 to Q3. “We built the timeline based on the template the vendor provided, not based on what our data actually required.”
Mistake 3: Treating Migration as an IT Task Only
Why Finance and Operations Must Own Data Quality
IT can build the extraction scripts, run the transformation logic, and load the data. They cannot know which of two conflicting customer records is correct — only the customer service team knows. They cannot know which inventory cost is accurate — only the purchasing manager knows.
Data quality decisions require business context that IT does not have. When IT owns migration without business involvement, decisions get made based on technical criteria (which record was created first, which has more fields populated) rather than business accuracy.
The right model: IT owns technical execution; finance owns financial data quality; operations owns inventory and customer data quality. Each domain has a named business owner who is accountable for the accuracy of their data in the new system.
Define these roles in the first four weeks of the project, before any migration work begins.
Mistake 4: Poor Data Mapping (Assuming Source = Target)
Common Mapping Failures
Data mapping is the process of defining how each field in the source system translates to the corresponding field in the target ERP. Mapping failures occur when:
- Fields exist in the source but have no equivalent in the target (what happens to that data?)
- Fields exist in the target but have no source data (what is the default value?)
- Field formats differ between source and target (a four-digit country code in the source, a two-digit code in the target)
- Business rules encoded in the old system need to be translated, not just copied (a discount code that means “10% for volume orders” in the old system needs to map to the ERP’s pricing rule structure)
How to Build a Proper Mapping Document
For every field in each data domain being migrated, document:
- Source system field name and format
- Target ERP field name and format
- Transformation rule (if conversion is required)
- Handling for null/missing values
- Handling for values that do not map to any target option
This document should be reviewed by the business owner for each domain before the first migration trial run. Mapping errors discovered during trial runs cost hours. Mapping errors discovered during the final migration cost days.
Mistake 5: Lifting and Shifting Broken Processes
Why Migration Is a Process Improvement Opportunity
Data migration is not a copy operation — it is a controlled transfer of the business’s operational state from one system to another. Companies that migrate all their data, including data that represents broken processes, import those broken processes into the new system.
Common examples: open purchase orders that should have been closed two years ago but were never marked complete. Customer pricing records that have been overridden so many times the list price is no longer meaningful. Vendor records created for one-time transactions that are now cluttering the master file with inactive records.
What to Fix Before You Migrate
Use the migration as a process cleanup trigger:
- Close open transactions that should have been closed
- Archive vendors with no activity in two or more years (after confirming no open transactions)
- Standardize customer pricing before migration (migrate the clean version, not the accumulated overrides)
- Reconcile inventory counts before migration (physical count, not system count, is the starting point)
The discipline of “we are not migrating that until it is correct” forces process improvement that would otherwise never happen.
Mistake 6: Insufficient Testing (Skipping Migration Trial Runs)
What Trial Runs Catch
Each migration trial run reveals a category of problems that the previous run did not:
- First run: Structural errors (fields that won’t load, format mismatches, required fields missing)
- Second run: Business logic errors (transformation rules that produce incorrect values, duplicate detection that misses edge cases)
- Third run: Volume and performance issues (migration that completes in four hours with 1,000 records takes 14 hours with 50,000)
Without trial runs, all three categories of problems surface during the final cutover migration — at 2 AM on go-live weekend.
Minimum Testing Rounds Required
Run at least two full trial migrations, and ideally three, before the final cutover migration. Each trial run should:
- Use a complete extract of current source data (not a sample)
- Run transformation scripts in their current state
- Load against a production-equivalent target environment
- Produce reconciliation reports comparing source totals to migrated totals
- Document every error with root cause and remediation
Error rates should decline meaningfully from one run to the next. If they do not, the root cause is systemic and needs deeper analysis.
Mistake 7: No Data Governance — Who Owns Data Quality?
The Cost of Ambiguous Ownership
Without named data owners, cleansing work accumulates without accountability. Someone finds 400 duplicate customer records and emails the team. Nobody responds because it is not clearly their job. The duplicates are migrated. Post-go-live, the customer service team encounters split AR balances and spends three weeks manually reconciling them.
Ambiguous ownership also means conflicting decisions. IT resolves a data conflict one way; finance expects a different resolution. The resulting data satisfies neither.
Data Steward Assignment
Before the data cleansing phase begins, name a data steward for each domain:
- Customer master: Customer service manager or sales operations lead
- Vendor master: Accounts payable manager or procurement manager
- Inventory master: Operations manager or inventory controller
- Chart of accounts: CFO or controller
- Open transactions (AR, AP, PO): Finance manager
Each data steward is accountable for: approving cleansing decisions in their domain, resolving data conflicts, signing off on migration validation for their domain, and certifying accuracy before go-live.
Liz F., Controller at a $45M distribution company: Her company named her as data steward for all financial data during the ERP migration. She scheduled two hours per week for eight weeks to review cleansing decisions from the IT team. When conflicting vendor records were found — two entries for the same vendor with different payment terms — she made the call immediately. “IT kept trying to make data decisions they had no context for. When I took ownership, the decisions happened in hours instead of sitting in a queue for a week.”
Mistake 8: Migrating All Historical Data Instead of Archiving Selectively
What to Migrate vs What to Archive
Not all data needs to live in the new ERP. Migrating everything — every transaction from the past 10 years — increases migration complexity, extends testing time, and creates a cluttered system from day one.
The migration decision by data type:
- Must migrate: Open transactions (all AR, AP, POs, sales orders in progress), current-year transactional data, current inventory positions, master data for active entities
- Consider migrating: Prior-year transactional data for reporting comparability (typically one to three years)
- Archive (do not migrate): Data older than your reporting lookback period, closed transactions that are not referenced by open items, inactive master records with no recent transaction history
Decision Criteria for Historical Data
For each historical data category, ask: Will users in the new system ever need to access this data in their daily work? If the answer is “rarely, and only to answer historical questions,” archive it rather than migrate it. Archive in a format (CSV export, read-only legacy system access) that allows retrieval if needed.
The simpler the migrated data set, the faster the migration runs, the fewer errors occur, and the cleaner the starting state of the new system.
What to Do If You’re Mid-Migration and It’s Going Wrong
Stop and assess. Continuing a migration that is producing 30% error rates creates more problems than it solves. Stop the current migration attempt and assess what is causing the errors.
Do not skip reconciliation. Under timeline pressure, teams sometimes skip the reconciliation step after a trial migration. This hides errors until the final migration, where they are more expensive to fix.
Escalate to business owners. If errors are rooted in data quality problems rather than technical issues, the data steward for that domain needs to be escalated. IT cannot fix business data problems without business guidance.
Request a timeline adjustment. If data quality problems will take three more weeks to resolve, the go-live date needs to move three weeks. A forced go-live on bad data is worse than a delayed go-live on good data.
Conclusion
Data migration is the phase where most ERP implementations lose time and confidence. The eight mistakes in this article are not obscure edge cases — they are the most common sources of migration failure, observed repeatedly across hundreds of mid-market implementations.
Every one of them is preventable. The prevention requires time, resources, and organizational accountability — not technical sophistication. Companies that invest in a thorough pre-migration audit, clear data ownership, and multiple trial runs consistently experience faster, cleaner go-lives.
Frequently Asked Questions
How long does ERP data cleansing take? For a mid-market company, data cleansing takes four to eight weeks of dedicated internal effort. Volume matters, but data quality is the primary driver. A company with 5,000 customer records that are 40% complete takes longer to clean than a company with 20,000 clean records.
Should we hire a data migration specialist? For complex migrations — multiple source systems, large volumes, non-standard formats — a specialist accelerates the process and reduces the risk of technical errors. Budget $15,000–$50,000. For simpler migrations (one source system, standard format), in-house execution is feasible with the process described in this guide.
What is the most dangerous data migration mistake? Migrating dirty data without a pre-migration audit. It is the most common and most impactful mistake. Every other mistake is recoverable before go-live. Migrating dirty data produces a broken system from Day 1, and cleaning production data is significantly harder than cleaning source data before migration.
Can we migrate data ourselves without a consultant? Yes, with the right process. The data audit, cleansing, mapping, and trial runs can all be done internally. The risk is experience: a consultant who has done ERP migrations before will catch problems earlier and faster than an internal team doing it for the first time. For first-time implementations with complex data, hybrid (internal team + specialist oversight) is often the best approach.