A private primary school in Ruiru, Kiambu County, 310 students, Grade 1 to Grade 9 (JSS). The school asked us not to use their name.
Term 3, 2023
Margaret had been head teacher at the school for six years. She'd built a stable staff, improved CBC results, and earned a parent community that trusted the school.
Every end of term, she dreaded the same two weeks.
Her secretary and two class teachers spent the final days locked in the staffroom, reformatting report cards in Microsoft Word. One teacher used a different template. Another left fields blank. Margaret reviewed 310 cards, found errors in a third of them, sent batches back for correction. They missed the last official day of term by two days, sending parents home without cards and explaining the delay over WhatsApp.
Meanwhile, the bursar was fighting a different problem. Forty-three families had outstanding fee balances. Some disputed what they owed — their records showed a payment she couldn't find in the ledger. Two parents had paid, but their M-Pesa notifications got missed on a busy collection day. The school absorbed those quietly. Another twelve had rolled over balances so many times that the correct figure was unclear to both sides.
"I was spending Monday mornings chasing money instead of running a school. And term-end felt like a crisis, three years in a row."
After another chaotic November, she decided to change the system.
Finding the Right System
Margaret had heard of school management software before. A colleague in Nairobi had tried one — it didn't support CBC properly and reports needed reformatting before printing. Another school nearby tried a free system, then abandoned it when support went quiet.
She listed what she needed:
- CBC report cards that printed correctly without reformatting — all seven learning areas, the four-level rubric
- Fee tracking that matched M-Pesa payments to student accounts without manual entry
- Something her secretary and bursar could learn without IT support
- A parent portal so families could check balances without calling the office
- A support team she could phone, not just email
She ran the DiraSchool trial in December 2023, during the school holiday, before committing to Term 1.
"I entered marks for one class and generated the report cards. They came out correctly — rubric, learning areas, format, all right. That was the moment I knew."
Term 1, 2024: Going Live
The onboarding team migrated the school's student list from Excel in the first week of January. 310 students, guardian contacts, class assignments, and fee structures loaded before the term started.
The first week had problems.
Two teachers forgot passwords on day one. The bursar spent an afternoon setting up the fee structure — six line items (tuition, activity, lunch, uniform, exam, development levy) and she wanted them right before recording any payments. One parent called Margaret directly, asking about an SMS for a portal they hadn't signed up for.
"Small problems in week one. But the support team picked up the phone every time I called. That made all the difference."
By week two, attendance had changed. Teachers marked it at 8am on their phones. Margaret saw which classes had submitted by 8:30am. Absent students triggered an automatic SMS to their guardian.
"Before, I'd walk around at 9am checking registers. Now I open the dashboard. If a class hasn't submitted, I send the teacher a message. Five minutes instead of forty-five."
Fees
The biggest change in Term 1 wasn't reports or attendance. It was fees.
Parents pay via M-Pesa to the school's paybill. Before DiraSchool, the bursar monitored her phone for notifications and updated the ledger manually. Payments made in the evening or on weekends piled up and got entered in batches, sometimes a week late.
With M-Pesa C2B integration, each payment matched to the student's account within seconds of the parent paying. The bursar received a notification. A receipt generated automatically. The parent's portal balance updated.
"In the first month, three parents who'd disputed balances the previous term came in to ask about their current balance. I showed them their payment history on screen — every payment, date, amount. Two paid immediately. One apologised. After that, there were no more disputes."
By the end of Term 1: 11 families with outstanding balances, down from 43. The bursar's fee work dropped from 15 hours a week to 5.
End of Term 1
Class teachers had entered results after each assessment throughout the term. No end-of-term data scramble — most of it was already in the system.
On the second-to-last day of term, Margaret asked teachers to finalise marks, add remarks, and submit for review. By 3pm, all 11 classes had submitted.
She reviewed and approved the batch that evening.
The following morning — the last day of term — the secretary printed 310 report cards before noon. Every card correct. No reprints.
"I stood in the staffroom and watched them come out of the printer. The right format, the right rubric, the right learning areas. No corrections. We gave them out at pickup and finished before 3pm. That had never happened in six years."
After a Full Year
By the end of 2024 — three terms on DiraSchool — the numbers were clear.
Fees:
- Outstanding balances at term end: average of 9 families, down from 43
- Payment disputes: zero in the last two terms
- Fee income recovered through better tracking: approximately KES 800,000
- Bursar time on fee work: 5 hours a week, down from 15
Report cards:
- Full process: under 2 hours, down from 3 days
- Reprints due to errors: zero, down from 10–15 per term
- End-of-term overtime: none
Parent communication:
- Office calls about fee balances: down approximately 70%
- Parent portal: 74% of families logged in at least once in Term 3
Principal's time:
- Monday morning admin: under 30 minutes, down from 3–4 hours
- Time for classroom observation: up
What Margaret Would Tell Another Head Teacher
"The problems feel normal because they've always been there. Late report cards, fee disputes, calls about balances — you stop seeing them as problems. You start seeing them as how it is.
They're not how it has to be.
The switch isn't as hard as it looks. We were nervous about moving data, training staff, learning something new. After two weeks we felt comfortable. By week three it was just how we worked.
What I didn't expect was what it did for my confidence. When a parent asks about fees, I know the answer is accurate. When a teacher asks about results, I know the process is consistent. When a new term starts, I'm thinking about teaching, not admin. That's what I didn't know I was missing."
This school is a real DiraSchool customer in Ruiru, Kiambu County. Details withheld at their request. Fee recovery figures come from the school's own records comparing Term 3 2023 with Terms 1–3 2024.
See what DiraSchool can do for your school — 30-day free trial →