Migration Strategy
Before extracting a single record, establish a clear strategy that defines what you're migrating, how much history to bring, and what your success criteria are.
The Three Migration Questions
Every migration strategy must answer these fundamental questions:
1. What Data to Migrate?
Not all data deserves to move to the new system. For each data type, ask:
- Is this data still relevant to ongoing business operations?
- Is it required for regulatory or audit purposes?
- Does it have business value that justifies the migration effort?
- Can it be recreated if needed, or is it irreplaceable?
2. How Much History?
Historical data migration is often the most time-consuming part. Consider:
- Open transactions: Always migrate—open orders, unpaid invoices, outstanding POs
- Recent history: Usually 1-3 years for reporting and trend analysis
- Deep history: Archive in legacy system or data warehouse; don't migrate
3. What's the Cutover Approach?
How will you transition from old system to new?
- Big Bang: Full cutover on go-live date; old system turned off
- Parallel: Both systems run simultaneously for a period
- Phased: Migrate different areas or entities at different times
Data Categories
Organize your migration by data category. Each has different characteristics and dependencies.
| Category | Examples | Typical Approach | Dependencies |
|---|---|---|---|
| Setup Data | Chart of accounts, tax codes, payment terms | Manual configuration or import | None—migrate first |
| Master Data | Customers, vendors, items, employees | CSV import | Setup data |
| Opening Balances | GL balances, inventory, AR/AP aging | Journal entries, inventory adjustments | Master data, chart of accounts |
| Open Transactions | Open sales orders, open POs, pending invoices | CSV import or manual entry | Master data |
| Historical Transactions | Closed orders, paid invoices, historical data | Summary journal entries or data warehouse | All other data |
Migration Scope Decision Framework
The biggest mistake in data migration is trying to migrate everything. Challenge every request for historical data with: "How often will you actually use this?" Most "must have" historical data is accessed once or twice a year—not worth the migration effort. Keep legacy system accessible for occasional lookups.
Migration Timeline Planning
Data migration is not a single event—it's a process with multiple iterations.
Plan for at least three full test migrations before production. Each iteration reveals issues you couldn't anticipate. The third migration is your "dress rehearsal"—it should be identical to production and timed to verify your cutover window is realistic.