Complete Platform Guide

How SchoolVote Kenya Works

A complete step-by-step walkthrough of everything you need to know — from registering your school to running your first digital election, viewing results, and managing your account.

Watch the full walkthrough video
School Registration School Admin Teachers Student Voting Results Help & Support
Step 1

Registering Your School

Getting started is simple. Register your school, choose a plan, verify your email, make payment, and receive approval. The entire onboarding process typically takes 2–5 hours.

1.1
Fill in the Registration Form
Visit the registration page and provide your school details

Navigate to the Register page from the homepage. You will be asked to fill in a multi-step form with the following information:

  • School Details — School name, email address, phone number, county, and school type (Primary, Secondary, Mixed, College/Tertiary, or Special Needs)
  • Subscription Plan — Choose from Starter (KES 10,000), Standard (KES 14,999), Growth (KES 19,999), or Premium (KES 29,999) per year
  • Administrator Info — Full name, personal email, and a secure password (minimum 8 characters with uppercase, lowercase, number, and special character)
  • Terms Agreement — Accept the Terms of Service and Privacy Policy
Tip: Use a permanent, official school email address (e.g. info@yourschool.ac.ke). Disposable email addresses are not accepted. This email will receive your verification code, payment receipt, and important notifications.
1.2
Verify Your Email Address
A 6-digit verification code is sent to your school email

After submitting the registration form, a 6-digit verification code is immediately sent to the email address you provided. You will be redirected to the verification page where you must enter this code.

  • The code expires in 5 minutes — enter it quickly
  • You get a maximum of 5 attempts to enter the correct code
  • If the code expires or you run out of attempts, click "Resend Code" to get a new one (60-second cooldown between resends)
  • Check your spam/junk folder if you don't see the email in your inbox
Security: The verification code is hashed using BCrypt before being stored in the database. At no point is your code stored in plain text. This ensures your account remains secure even in the unlikely event of a database breach.
1.3
Complete Payment
Pay for your chosen subscription plan via Paystack or M-Pesa

After verifying your email, you will be redirected to the Payment page. Select your plan and complete the payment using one of the available methods:

  • Paystack — Pay securely via card, mobile money, or bank transfer through the Paystack payment gateway
  • M-Pesa — For manual payment, submit your M-Pesa phone number and follow the STK push instructions

Once payment is confirmed, you will receive a payment receipt email containing your transaction reference, amount paid, plan selected, payment method, and date.

Receipt: The payment receipt is automatically sent to your registered email. Keep it for your records. It includes the Paystack reference number for tracking purposes.
1.4
Wait for Account Approval
Verification takes 2–5 hours. You will receive an email once approved.

After successful payment, your account enters the verification queue. Our team reviews your school details and payment information to ensure everything is in order.

Immediately
Payment confirmed. Account status set to "Pending Approval." You can log in but cannot access the dashboard yet.
2–5 Hours
Our team reviews your registration and payment. Most schools are approved within this window during business hours (8 AM – 6 PM EAT).
Once Approved
You receive an approval email with a link to log in. Your dashboard becomes fully accessible and you can start setting up elections.
Please Note: During weekends, public holidays, or outside business hours, approval may take longer. If you have not received your approval email within 24 hours, please contact our support team using the details at the bottom of this page.
1.5
Login and Access Your Dashboard
Use your school email and the password you created during registration

Once approved, go to the Login page, select the "School" tab, and sign in with your school email and password. You will be taken to your school dashboard where you can:

  • View your subscription details, payment history, and account status
  • Create and manage elections
  • Add and manage teachers
  • Manage student lists
  • View election results and generate reports
  • Update your school profile and subscription plan
Forgot Password? Click the "Forgot Password?" link on the login page. Enter your school email and a secure password reset link will be sent to you. The link expires in 15 minutes.
Step 2

School Admin — Managing Elections

As the school administrator, you have full control over the election process. Here is everything you can do from your dashboard.

2.1
Create a New Election
Set up the election details, dates, and positions

From your dashboard, navigate to Elections → Create Election. Fill in the following details:

  • Election Title — e.g. "2025 Prefect Elections" or "Form 4 Representative Vote"
  • Election Type — Student (regular) or BOM/Staff (board members vote via secure link)
  • Start Date & End Date — The voting window during which students can cast their votes
  • Positions — Add the positions being contested (e.g. School Captain, Vice Captain, Secretary, Treasurer, Sports Captain)
  • Candidates — For each position, add the candidates (student names, photos, manifestos)
Important: When you create an election, it is saved in "Draft" mode. It will NOT be visible to students or teachers until you explicitly activate it. This gives you time to add all positions, candidates, and review everything before going live.
2.2
Add Teachers
Teachers supervise the voting process and can monitor in real time

Navigate to Teachers → Add Teacher. For each teacher, provide:

  • Full Name — The teacher's official name
  • Email Address — Their personal or school email (this becomes their login)
  • Phone Number — Kenyan phone number for notifications
  • Role/Department — e.g. "Mathematics Department", "Senior Teacher"

Each teacher receives an email invitation with their login credentials. They can log in using their email and the temporary password provided, then change their password after first login.

Teacher Limits: The number of teachers you can add depends on your subscription plan — Starter (5 teachers), Standard (10 teachers), Growth (20 teachers), Premium (unlimited).
2.3
Activate the Election
Go live! Students can now vote during the election window

Once you have finished setting up positions and candidates, and you are satisfied that everything is correct, navigate to the election and click "Activate Election."

Here is what happens when you activate:

  • The election status changes from "Draft" to "Active"
  • Students can now access the voting page during the election date/time window
  • Teachers can monitor the voting progress in real time from their dashboard
  • Live results become visible on the results page
  • Each student can vote only once — the system prevents double voting
Create Election (Draft)
Add Positions & Candidates
Add Teachers
Activate Election (Live)
Students Vote
View Results
Activation Tip: You can activate an election days or hours before the voting start date. Students will only be able to vote once the current date/time falls within the election window you defined. This gives you a buffer to test everything.
2.4
Manage Students
Import or manually add students who are eligible to vote

From your dashboard, navigate to Students. You can add students in two ways:

  • Manual Entry — Add students one by one with their name, admission number, and class/form
  • Bulk Upload (CSV) — Download a template, fill in student details, and upload the file to import all students at once

Each student is identified by their admission number, which they will use to verify their identity before voting. Only students added to your school's list can vote in your elections.

Student Limits: Starter (1,000 students), Standard (1,500 students), Growth (2,000 students), Premium (2,500+ or unlimited). You can upgrade your plan at any time from your dashboard.
Step 3

Teacher Dashboard

Teachers play a supervisory role. They log in to monitor elections, view live voting progress, and manage election-day activities.

3.1
Teacher Login
Teachers log in using the credentials sent by the school admin

Teachers go to the Login page, select the "Teacher" tab, and sign in with the email and password provided by the school administrator. On first login, they will be prompted to change their temporary password to a secure one of their choice.

From the teacher dashboard, they can:

  • View all active elections assigned to their school
  • Monitor real-time voting progress — see how many students have voted vs. total eligible
  • View live results as votes come in
  • See election details including positions, candidates, and voting window
  • Update their own profile and password
3.2
Supervising Election Day
Teachers oversee the voting process in real time

On election day, the teacher's role is to:

  • Guide students to the voting stations or devices
  • Monitor progress via the dashboard — see the total votes cast, turnout percentage, and any issues
  • Ensure integrity — each student votes only once, and the system automatically prevents duplicate votes
  • Report issues — if a student cannot vote due to a technical problem, the teacher can contact support for immediate resolution
Security: Teachers cannot modify election settings, add/remove candidates, or change results. Only the school admin has these permissions. Teachers have read-only access to election data and results.

School Admin

Creates elections, adds teachers and students, activates elections, views full results, manages subscriptions, and controls all school settings.

Teacher

Monitors elections in real time, supervises students during voting, views live results, and reports issues. Cannot modify election settings.

Student (Voter)

Enters admission number to verify identity, reviews candidates, casts vote, and sees confirmation. Each student votes exactly once per election.

Step 4

Student Voting Process

The voting process is designed to be simple, secure, and transparent. Each student verifies their identity with their admission number, reviews candidates, casts their vote, and hands the device to the next student.

4.1
Access the Voting Page
Students navigate to the voting URL provided by the school

The school admin or teacher provides the voting page link to students. This is typically the school's dedicated voting URL (e.g. your-school.schoolvote.co.ke/vote). Students can access this link from any device with a web browser — computers, tablets, or smartphones.

No Login Required: Students do NOT need to create an account or log in. They simply enter their admission number to verify their identity and start voting.
4.2
Enter Admission Number & Verify Identity
The student enters their admission number to confirm they are eligible

On the voting page, the student is prompted to enter their admission number. The system checks:

  • Is this admission number registered in the school's student list?
  • Has this student already voted in this election?
  • Is the election currently active (within the date/time window)?

If all checks pass, the student is shown a confirmation screen displaying their name and class to confirm their identity before proceeding.

Already Voted: If a student has already cast their vote, the system will display a message: "You have already voted in this election." Each student can vote only once. This is enforced by the system and cannot be overridden by anyone except the school admin in exceptional circumstances.
4.3
Review Candidates & Cast Vote
The student selects one candidate for each position

After confirming their identity, the student sees the ballot — a list of all positions and the candidates running for each position. The process is:

  • Position by position — The student sees one position at a time (e.g. School Captain first)
  • View candidates — Each candidate's name and photo are displayed (and optionally their manifesto)
  • Select one candidate — The student taps/clicks on their preferred candidate
  • Next position — Move to the next position and repeat
  • Review & Confirm — Before final submission, the student sees a summary of all their selections
  • Submit vote — Click "Cast Vote" to finalize. The vote is immediately recorded and cannot be changed.
Enter Admission Number
Confirm Identity
Select Candidate (Position 1)
Select Candidate (Position 2...)
Review All Selections
Cast Vote
4.4
Next Student
Hand the device to the next student. No logout needed.

After voting, the student sees a "Thank You" confirmation screen. They should then:

  • Step away from the device
  • The next student steps up and enters their own admission number
  • No need to log out or refresh the page — the voting page automatically resets
Privacy: The system does not track which candidate a specific student voted for. Votes are recorded anonymously. Only the total count per candidate is stored. This ensures ballot secrecy.
Step 5

Election Results

Results are available in real time and can be accessed by school admins, teachers, and authorized viewers.

5.1
Live Results Page
Results update in real time as votes come in

Navigate to the Results page. The results page shows:

  • School selector — Choose which school's results to view (for admin view)
  • Stats bar — Total eligible voters, votes cast, not yet voted, and turnout percentage with a progress bar
  • Position-by-position results — Candidates ranked by vote count, with the winner highlighted (1st, 2nd, 3rd place)
  • Visual charts — Doughnut charts, horizontal bar charts, and turnout donut chart powered by Chart.js
  • Auto-refresh — The page automatically refreshes every 30 seconds to show the latest results
Real-Time Updates: Results update automatically. You can also manually refresh the page to see the latest numbers. The LIVE indicator at the top of the results page confirms you are viewing current data.
5.2
After the Election
What happens when the voting window closes

When the election end date/time is reached:

  • Voting automatically closes — students can no longer cast votes
  • Final results are displayed on the results page
  • The school admin can generate a full results report from the dashboard
  • The election status changes to "Completed"
  • The admin can archive the election or keep it visible for reference
Support

Need Help? We're Here for You

If you encounter any problems during registration, payment, verification, election setup, voting, or anywhere else on the platform, our support team is ready to assist.

Get in Touch

Whether you have a question, need technical assistance, or want to report an issue — we're just one call or email away.

Support hours: Monday – Friday, 8:00 AM – 6:00 PM EAT
Saturday: 9:00 AM – 1:00 PM EAT  |  Sunday & Holidays: Closed

Frequently Asked Questions

Account approval typically takes 2 to 5 hours during business days (Monday to Friday, 8 AM to 6 PM EAT). During weekends, public holidays, or outside business hours, approval may take up to 24 hours. Once approved, you will receive an email notification with instructions to log in.
First, check your spam/junk folder. If the email is not there, return to the verification page and click "Resend Code". Make sure you entered the correct email address during registration. If the problem persists, contact us at support@schoolvote.co.ke or call our support line.
No. Each student can vote exactly once per election. The system tracks votes by admission number and immediately blocks any attempt to vote again. After casting their vote, the student sees a confirmation screen and cannot re-enter the ballot.
Yes! You can upgrade your plan at any time from your school dashboard. Navigate to your account settings and select "Upgrade Plan." You will only pay the difference between your current plan and the new plan. Downgrades take effect at the next renewal date.
If payment fails, try again using a different payment method (card, mobile money). If you were charged but your account is not activated, contact us immediately at support@schoolvote.co.ke with your Paystack reference number (found on your payment receipt email). We will resolve the issue within 1 business hour.
No. Votes are recorded anonymously. The system only stores the total number of votes each candidate receives. Neither teachers, admins, nor anyone else can see which specific student voted for which candidate. This ensures ballot secrecy.
Yes, depending on your subscription plan. Starter allows 3 elections per term, Standard allows 5, Growth allows 10, and Premium allows unlimited elections. You can have multiple elections active simultaneously.
The school admin or teacher can look up the student's admission number from the Students section in the dashboard. This is why it's important to keep the student list accurate and up to date before election day.

Ready to Transform Your School Elections?

Join hundreds of Kenyan schools already using SchoolVote Kenya for secure, transparent digital voting.

Register Your School Now