Migration is the most cited reason schools delay an ERP switch — and the most overestimated. Done right, it's a week, not a quarter.
Day 1–2: Take stock
We start with a 60-minute call: which spreadsheets exist, who owns each, and what's the freshest data. The output is a one-page inventory.
- Student master (admission no., name, class, parents, contact)
- Fee schedules (by class, category, scholarship rules)
- Staff list (with pay scale if payroll is in scope)
- Historical attendance and exam results (if you want them imported)
Day 3: Cleanup, not reformatting
Your existing format is almost always usable. We don't ask schools to reformat — we adapt to whatever's there. The only cleanup that matters: deduplicate students, normalise phone numbers, and resolve any "two parents, two records" mess.
Day 4–5: Test import + walkthrough
Data lands in a sandbox. Office staff click through, find the obvious problems (a missing class, a wrong scholarship), we fix in place. By day 5 the office can run a real test fee receipt.
Day 6: Train + dry-run
Three 45-minute sessions: admin, teachers, and one for the principal. Each role gets a checklist of what to do on Monday morning.
Day 7: Go live
Production switch. Old system stays read-only for 30 days. We sit on the call for the first hour to handle anything weird.
That's it. Most schools are running smoother on day 8 than they were on day 0 — and the data team isn't bracing for a six-week project anymore.
What actually goes wrong (and how we catch it)
The same handful of issues show up in almost every migration: duplicate admission numbers from a copy-pasted row, guardian phone numbers stored as text with stray spaces that break SMS delivery, and fee categories that drifted out of sync with what the office actually charges. None of these are migration blockers — they're just things a script can't safely guess at, so we surface them as a review list on day 3 rather than silently importing bad data.
The two objections we hear most
“What if we lose historical data?” The old system stays read-only for 30 days post-launch specifically so nothing is a one-way door. If a number doesn't match, you can always cross-check the source.
“What if this happens mid-term and disrupts classes?” It doesn't need to touch classroom activity at all — migration runs entirely in the office and admin layer. Teachers only see the new system once training happens on day 6, by which point the data is already validated.
What happens to your old spreadsheets
Nothing is deleted. Original files are archived as-is in your school's Schoolo storage, exportable at any time, for as long as your account is active — useful for audits or if a number needs tracing back to its original source years later.
Wondering what pricing looks like once you're on Schoolo? See why we avoid the per-student pricing trap most ERPs fall into. And once you're migrated, here are 5 tools most schools stop paying for.