Nearly every Nigerian school starts with spreadsheets. One file for students, another for fees, a third for results, and a WhatsApp group holding it all together. It works, until it doesn't. The files drift out of sync, only one person understands the formulas, and a laptop dying takes the term's records with it.
The switch to proper software feels daunting mostly because schools imagine a big, risky migration. It doesn't have to be. Here is how to move over calmly, without losing a record or a week.
Decide what "going live" actually means
You don't need everything migrated to start. Going live means the daily work, enrolling students, invoicing fees, taking attendance, happens in the new system from a chosen date. Historical data can follow. Trying to move five years of archives before you begin is how migrations stall. Pick a start date, get the essentials in, and go.
Migrate in the right order
Some data unlocks everything else, so sequence matters.
Students and classes come first, because every other record, fees, results, attendance, hangs off a student. Get your roster in and organised into classes and you have the spine of the system. Fees come next, so this term's invoices start flowing through the system straight away, which is usually the fastest payback. Then staff and payroll, so your next pay cycle runs properly. History comes last, if at all. Past results and archives can be imported gradually or simply kept as reference, and shouldn't block go-live.
Use bulk import, not retyping
You should never retype your student list. A good system imports a spreadsheet directly. You map your columns once, and hundreds of students land in minutes. UnifyLearn's onboarding is built around this. A setup wizard walks you through the essentials, and a bulk student import turns your existing spreadsheet into a live roster without a single re-keyed name. It even checks the file first, flagging duplicate admission numbers and class names that don't match, so you fix problems on screen rather than after the fact.
Run the old and new side by side for one cycle
The nervous school runs both systems for a single term. Fees go through the new system, but the old spreadsheet stays as a safety net you check against. By the end of one cycle the numbers match, confidence is high, and the spreadsheet quietly retires. This parallel run costs a little duplicate effort and buys a lot of peace of mind.
Get your team on board before go-live
Software doesn't fail on technology, it fails on adoption. The bursar who secretly keeps a private spreadsheet undermines the whole thing. Bring the people who'll use it, bursar, exam officer, form teachers, into the setup early, let them enter real data, and answer their "but how do I do this?" questions before the pressure of a live term. A team that helped set it up defends it.
Expect to be live sooner than you fear
Schools consistently overestimate this. With students imported and this term's fees set up, most are running the daily essentials within a day. The archive migration trickles in over the following weeks, in the background, while normal school life continues.
The natural first workflows to switch are the ones that hurt most today: fee collection and result processing. Get those two into the system and the case for everything else makes itself. Because you'll be moving real student and family data, it's worth understanding upfront how it's protected, which we cover in data protection and the NDPR for schools.
Ready to bring your spreadsheet across? Start a free trial or compare plans first.