Loading legacy data into a new CAFM system sounds straightforward. It is not. The majority of CAFM implementation delays come from underestimating data migration. The software is ready, the users are trained, but the data isn't clean enough to go live. This guide is how to avoid that outcome.
What data to migrate
Not everything gets migrated. Focus on what's essential for go-live operations:
- Asset master, all active assets with location, manufacturer, model, serial
- Location hierarchy, campus, buildings, floors, rooms
- Positions (if using Position model) and current asset linkages
- Vendor master, active suppliers
- Item/spare parts master, currently used items
- PM plans and schedules, active PMs
- User accounts, with roles and organisation assignments
- Open work orders, only if they need to continue post go-live
- Warranty and contract records, active only
What NOT to migrate
Historical transactions are usually not worth migrating
Resist the urge to migrate 10 years of historical work orders. It's expensive, never gets used post go-live, and corrupts your new reporting baseline. Archive the old system read-only and reference it when needed. Start fresh in the new system.
Where data comes from
- Excel spreadsheets (most common, most problematic)
- Existing CAFM/CMMS database exports
- Business Central or ERP master data (for items, vendors, UOMs)
- Vendor-provided asset lists (from commissioning or handover)
- Project handover documentation (as-built drawings, nameplate data)
Validation before upload
Before any data hits the new system, validate it:
Completeness
All mandatory fields populated. No blanks in required columns.
Coding Consistency
Same meaning = same code. No variations like "HVAC" / "A/C" / "AC".
No Duplicates
Same asset shouldn't appear twice with different codes.
Hierarchy Integrity
Every child references a valid parent. No orphans.
Migration controls
- Final files approved before import. Business sign-off on the upload-ready spreadsheets.
- Test migration first. Full load into a test environment. Verify counts, spot-check records, run reports.
- Error logs and corrections. Every failed row logged with reason. Fix at source, re-test.
- Cutover plan. Exactly when data freeze happens, when final extract runs, when go-live happens.
- Reconciliation post-load. Counts match, spot checks pass, totals reconcile.
The data cleanup effort
On most implementations, data cleanup takes longer than the software configuration. Budget it honestly. For a mid-sized estate with 5,000-10,000 assets, expect 4-8 weeks of focused cleanup before you can start loading. That effort is not optional, skipping it means loading bad data into a new system and inheriting every legacy problem.
Cutover day
- Freeze changes in legacy system at defined cutoff.
- Extract final data.
- Apply final transformations and validations.
- Load into production.
- Reconcile (counts, spot checks, key reports).
- Business validation and sign-off.
- Go-live authorisation.
Conclusion
Data migration is the unsexy work that decides whether your CAFM go-live succeeds or stalls. Invest in cleanup early, validate ruthlessly, test fully before production, and plan the cutover with discipline. The implementations that deliver on time are almost always the ones that took data migration seriously from day one.
Written by Muhammad Abbas
Enterprise integration specialist. Led CAFM/EAM data migrations across dozens of implementations.