📖 How to Use SmartGrade Analytics
👤 Teacher
Browser Print → Save as PDF for an offline copy
SmartGrade Analytics is Kenya's CBE school management platform for Grades 1–12. This guide covers every feature — from first-time setup through Finance, Attendance, Parent Portal, Timetable and beyond. Follow sections in order when setting up a new school.
🚀 1. Getting Started — Register Your School
1
Register your school

Visit the SmartGrade registration page. Select your school level — Primary & Junior Secondary (Grades 1–9) or Senior Secondary (Grades 10–12). Enter your school name, a unique code (e.g. GPS001), county, sub-county, and create the admin account. The admin account belongs to the Head of Institution or System Administrator.

💡 You can change the school level later from School Profile without losing any data.
2
Complete your school profile

Go to School Profile in the sidebar. Upload your school logo, enter the motto, mission, vision, and Head of Institution name and signature. These appear on all printed report cards and official documents.

3
Activate your subscription

Go to Subscription. Choose a plan (Termly or Yearly) and pay via M-Pesa — either through Safaricom M-Pesa or KCB M-Pesa. Enter your phone number, choose your provider, and enter your PIN when prompted. Your subscription activates immediately after payment is confirmed.

⚠️ The system enters your phone number. Do not close the page until you receive the PIN prompt on your phone.
⚙️ 2. Initial Setup — Grades, Subjects & Grading
1
Review your Grades & Streams

SmartGrade automatically creates the standard CBE grades during registration. Go to Grades & Streams and add streams to each grade (e.g. East, West, North, or A, B, C). Each stream is a separate class list with its own learners and timetable.

💡 A grade with no streams cannot have learners. Add at least one stream per grade you intend to use.
2
Review your Subjects

Go to Subjects. Your standard CBE subjects were created automatically. Add any additional subjects (e.g. Computer Science, Agriculture) or edit existing names and codes. Then go to Timetable → Subject-Grade Links to map which subjects are taught in which grades.

3
Configure the Grading System

Go to Grading to confirm the CBE grade boundaries — EE (Exceeds Expectation), ME (Meets Expectation), AE (Approaches Expectation), BE (Below Expectation). Each band carries points (EE=4, ME=3, AE=2, BE=1). You can create additional grading systems for different uses or adjust boundaries.

👦 3. Adding Learners
1
Add learners individually

Go to Learners → Add Learner. Enter surname, first name, other names, admission number, assessment number (KNEC), gender, and assign to a stream. Set whether the learner is a Day Scholar or Boarder — this controls which fee items are charged on their invoice.

2
Add parent / guardian contacts

While adding or editing a learner, scroll down to the Parent / Guardian Contacts section. Add up to two contacts (Primary and Secondary) — name, phone number, and relationship. These contacts receive SMS results and can log into the Parent Portal.

💡 A parent can log in at /parent/ using their phone number + the learner's admission number + surname — no password or account needed.
3
Bulk import learners via CSV

Go to Learners → Bulk Import. Download the CSV template, fill in learner details in Excel (surname, first name, admission number, stream), save as CSV, and upload. Existing records are matched by admission number and updated.

4
Update boarding status in bulk

Go to Learners → Bulk Boarding Status. Filter by grade or stream, then set each learner as Day or Boarder using the radio buttons. Use the All Day / All Boarding buttons to change the whole class at once. Changes only affect future invoices — past records are not changed.

✨ New feature — manage boarding status for whole classes in one step.
📝 4. Creating Exams & Entering Marks
1
Create a new exam

Go to All Exams → New Exam. Give it a name (e.g. End Term 1 2026), select the academic year and term, then choose which grades and subjects to include and set the maximum marks per subject.

2
Enter marks

Open the exam and click Enter Marks for a grade and stream. Marks are auto-saved as you type. Tick the ABS checkbox for absent learners — their percentage shows as 0 in calculations.

💡 Subject teachers only see their assigned subjects. Class teachers see all subjects for their stream. Admins see everything.
3
Lock marks when done

Once marks are verified, click Lock Marks. Locked exams cannot be edited without admin access, preventing accidental changes after results have been shared with parents.

4
Create a Term Report (merged exam)

Go to Reports → Term Reports → New Merged Exam. Select the component exams (e.g. CAT1 + Midterm + End Term) and set the weight for each. The system computes a weighted total to produce a single term report.

💡 Weights are percentages. Example: CAT1=30%, End Term=70%. They must add up to 100%.
📊 5. Generating Reports
1
Grade report — whole class ranked

Go to Reports → Generate Reports. Select an exam and grade. The grade report shows all learners ranked by total marks, with CBE grade letters, points, and comparison to the previous exam. Choose a report mode — Marks & Rank, Points Order, Grades Only, or Full Report.

2
Individual learner report card

From any grade report, click a learner's name. The report card shows marks, grades, points, position, and teacher/principal remarks. Print directly or download as PDF (formatted for A4, one page per learner).

3
Share a report card with parents

On a learner's individual report card, click 📤 Share. A secure link is generated that is valid for 30 days. Send it to the parent via WhatsApp, SMS, or email. The parent opens it in any browser — no login required.

✨ New — parents receive a professional report card link without needing an account.
4
Send results via SMS

Go to SMS Results → Send Results SMS. Select an exam and grade. Preview the message, then send to all registered parent contacts. Each parent receives their child's results as a text message.

⚠️ SMS credits must be purchased first. Check your balance under SMS Credits.
👨‍🏫 6. Staff Accounts & Subject Assignments
1
Create staff accounts

Go to Staff Accounts → Add Staff. Assign each person a role: School Admin (full access), Deputy Head, Director of Studies, Class Teacher (one stream), Subject Teacher, Accountant, or Bursar. Each role controls exactly which pages and actions the person can access.

2
Assign subjects to teachers (Subject Assignments)

Go to Subject Assignments (admin side). For each subject, select the teacher responsible for it in each grade/stream. This controls mark entry access, timetable generation, and homework posting.

⚠️ A subject with no teacher assigned will show as "??" in the timetable and the teacher cannot enter marks for it.
3
My Assignments (teacher view)

Subject teachers see My Assignments in their sidebar — a list of all grades and subjects they are responsible for. This is their quick reference for what they teach each term.

💰 7. School Finance — Fees, Invoices & Payments
1
Create a Fee Structure

Go to Finance → Fee Structures → Create. Add fee categories (Tuition, Activity Fee, Boarding Fee, etc.) with amounts. Set boarding scope per item — All (charged to everyone), Boarding only, or Day only. Day scholars are not charged boarding fees; boarders get all items.

💡 Draft and Pending structures can be edited. Once Activated, they are locked — create a new version for changes.
2
Generate Invoices

Go to Finance → Invoices → Generate Invoices. Select the fee structure, academic year, and term. The system creates one invoice per active learner based on their boarding status. Learners with credit from a previous term have it automatically deducted.

✨ New — overpayments from previous terms carry forward automatically as credit on new invoices.
3
Record a Payment

Go to Finance → Record Payment. Select the payment method (Cash, M-Pesa, Bank Deposit, Cheque, Donation, Supply of Goods, Bursary — or add your own custom method). Then select Grade → Stream → Learner, enter the amount, and post. A printable receipt is generated automatically.

💡 If you select Supply of Goods, an expense entry is automatically created to balance the books. Enter a description of the goods supplied.
4
Print Receipt

After posting a payment, the system takes you directly to the receipt page. Two receipt formats are shown side by side — a narrow Thermal/POS receipt (76mm) and a wider A5 receipt with school logo and signature lines. Click Print to print either format.

5
View Learner Statement

From a learner's finance profile, click Full Statement. The statement shows every invoice and payment in chronological order with a running balance. Green = credit (overpaid), Red = owes money. Print or save as PDF for the parent.

6
Manage Expenses

Go to Finance → Expenses → New Expense. Record any school expenditure — electricity, supplies, salaries, etc. Tick Tax/VAT was charged to enter a tax rate. Choose Inclusive (tax is already inside the amount) or Exclusive (tax is added on top). The breakdown updates live as you type. Leave unticked for zero-rated or exempt expenses.

7
Fee arrears and reminders

Go to Finance → Arrears Report. Filter by amount threshold to see which learners owe above a certain amount. From the same page, send SMS reminders directly to parents of learners in arrears.

8
Custom payment methods

Go to Finance → Payment Methods to add your own payment modes (e.g. Mpesa Till, Wire Transfer, CDF Bursary). Activate or deactivate methods at any time. Methods marked as Supply of Goods automatically create a matching expense entry when used.

✨ New — fully customisable payment methods per school.
✅ 8. Attendance
1
Record daily attendance

Go to Attendance. Select a stream and date, then mark each learner as Present, Absent, Late, or Excused. Attendance can be recorded per period (Morning, Afternoon, Full Day) or as a full-day entry.

2
Download attendance report

Go to Attendance → Download Report. Filter by stream and date range. The report shows a summary table with present/absent/late counts per learner and a per-day grid. Print or save as PDF for official records.

3
Parents see attendance in the portal

When a parent views their child's report on the Parent Portal, the Attendance Summary section shows total days, present, absent, late and excused counts, the attendance percentage, and a list of recent attendance records. No extra steps needed — it updates automatically.

📅 9. Timetable Generator
1
Step 1 — Map subjects to grades

Go to Timetable → Subject-Grade Links. Tick which subjects are taught in each grade. This tells the generator which subjects to schedule for each grade and filters the lesson config form.

2
Step 2 — Assign teachers to subjects

Go to Subject Assignments. Every subject that appears in the timetable must have a teacher assigned for that grade/stream. Subjects with no teacher assigned will show as "??" in the generated timetable.

3
Step 3 — Create a configuration

Go to Timetable → New Configuration. Set the school start/end time, lesson duration in minutes, which days school runs, and add break windows (morning break, lunch, etc.) with their times.

💡 Break windows are automatically excluded from lesson slots. Lessons are never placed during breaks.
4
Step 4 — Configure lessons per grade

Click Lessons on your configuration. For each subject and grade, set how many lessons per week it needs. Use grade-level settings to apply the same config to all streams. Tick Double Lesson for subjects that need two consecutive periods (e.g. Practical, Art).

5
Step 5 — Set teacher constraints (optional)

Go to Constraints on your configuration. Select a teacher and click on any period cell to mark it as Unavailable (teacher cannot teach then) or Possible (can teach but prefer not to). The generator respects these when placing lessons.

6
Step 6 — Generate

Click ⚡ Generate Timetable. The system checks all requirements first and shows clear error messages if anything is missing (no lesson config, no teacher assigned, too many lessons for available periods). Fix the errors, then generate. On success, every lesson is placed with zero teacher collisions and zero stream collisions guaranteed.

💡 If some lessons are unplaced, the system tells you exactly which subject/stream failed and whether it is a double-lesson issue. Reduce lessons per week or add a school day to fix it.
7
Step 7 — Publish and export

Review the timetable on screen. Click Publish to make it visible to all teachers. Export PDFs: Block (all streams), Teacher (one page per teacher), Grade (one grade block), or Venue (room-by-room schedule).

👨‍👩‍👧 10. Parent Portal NEW
1
How parents log in — no account needed

Parents go to the SmartGrade login page and click 👨‍👩‍👧‍👦 Parents / Guardians — Login Here at the bottom. They enter: the learner's Admission Number, the learner's Surname, and their own phone number (as registered by the school). No password, no email, no account creation required.

⚠️ The parent phone number must be registered on the learner's record first. Add it when creating or editing the learner.
2
What parents can see

Once logged in, parents see a dashboard with all their children registered at the school (one login covers multiple children if the same phone is registered for each). From there they can view:

Exam Results — marks, grades, points per subject for any exam
Performance Trend Chart — a line graph of total CBE points across all exams
Attendance Summary — present/absent/late counts and recent records
Homework Assignments — all active homework with instructions and file downloads

3
Share a report card link

Staff can generate a secure share link for any individual report card. The link is valid for 30 days and requires no login. Send it to any parent via WhatsApp or SMS. Go to the learner's report → click 📤 Share → copy the link.

📝 11. Homework Assignments NEW
1
Post homework (subject teacher)

Go to Homework Assignments in your sidebar. Click Post Homework. Select the subject (only your assigned subjects appear), grade, and optionally a specific stream. Add a title, instructions, due date, and attach a PDF or document if needed. Click Publish Homework.

💡 Homework immediately appears in the Parent Portal under the learner's Assignments tab. Parents can download attachments directly.
2
Mark as submitted

Once you have confirmed that learners have received and acknowledged the homework, click ✅ Submit on the homework row. This records your name and timestamp. The button changes to Done and cannot be submitted again.

3
Admin sees submission status

Admins and Directors of Studies see a Submission Status table at the bottom of the Homework Assignments page showing which teachers have marked their homework as delivered, when, and for which subject/grade.

🎓 12. Senior School Pathways (Grades 10–12)
1
Set up pathways

Go to Senior School → Grade 10 → Setup Pathways. Click Create Default Pathways to set up STEM, Social Sciences, and Arts & Sports Science with their standard CBE courses. You can also create custom pathways.

2
Assign learners to pathways

Go to Class Management for the grade. Use the dropdowns to select each learner's pathway and course. Save the assignments. A learner's pathway determines which subjects appear on their report card and their personal timetable.

3
Register learners for subjects

Go to Senior School → Subject Enrollment. Subject teachers tick the learners enrolled in their subject. Filter by pathway to see only relevant learners. This drives both the timetable generator and individual learner report cards.

💳 13. Subscription & SMS Payments
1
Pay your SmartGrade subscription

Go to Subscription. Choose Termly or Yearly plan. Enter your M-Pesa phone number and choose your provider — 🟢 Safaricom M-Pesa (Daraja/Paybill) or 🏦 KCB M-Pesa (KCB Buni). Click the provider button. You receive a PIN prompt on your phone. Enter your M-Pesa PIN. Subscription activates automatically when payment is confirmed.

💡 If you already paid manually and have the M-Pesa receipt code, expand "Already paid manually?" and enter the code to activate without an STK push.
2
Buy SMS credits

Go to SMS Credits. Enter the number of credits to buy (minimum 10, 1 credit = 1 SMS = KES 1). Choose your M-Pesa provider and enter your phone. Credits are added automatically after payment confirmation. You can also use the manual code entry if STK push fails.

3
Check your SMS balance

Your current SMS balance is shown at the top of the SMS Credits page and in the sidebar. Each SMS sent (results, arrears reminder, custom broadcast) deducts one credit per recipient.

🔐 14. Security & Account Settings
1
Enable Two-Factor Authentication (2FA)

Go to Two-Factor Auth at the bottom of the sidebar. Scan the QR code with Google Authenticator, Microsoft Authenticator, or any TOTP app. On future logins, you enter both your password and the 6-digit code from the app. Strongly recommended for admin accounts.

2
Session auto-logout

For security, SmartGrade logs you out automatically after 10 minutes of inactivity. This protects learner and financial data if you leave a browser tab open on a shared computer.

3
Change your password

Go to Change Password at the bottom of the sidebar. OTP verification is required before you can save a new password. Admins can reset any staff member's password from Staff Accounts.

4
Role-based access summary

School Admin — full access to all features
Deputy Head — all features except billing and staff creation
Director of Studies — exams, reports, timetable
Class Teacher — their stream's marks, attendance, reports
Subject Teacher — mark entry for assigned subjects, homework posting
Accountant / Bursar — Finance module only
Parent — read-only portal (results, attendance, homework)

SmartGrade Analytics · Updated July 2026 · Kenya CBE Curriculum · Grades 1–12