The problem
KUCCPS places students using cluster points. These are calculated from specific subject grades with an official formula, then compared with each course's cutoff. Most students can't work out their points accurately by hand. They apply without knowing which courses they qualify for, or how likely they are to get in. A wrong guess can mean wasted choices, or missing a course they could have had.
Context
- The same decision happens every year, for a whole national cohort, inside a short application window.
- The official information exists, but it's spread across PDFs and the KUCCPS portal. For TVET and teacher-training colleges, there are no official cutoffs at all.
- We saw how hard it was for students to understand their results, cluster points, eligible courses, institutions, and career options, each from a different source. So we built one platform that brings them together.
Approach
We started with the one thing that had to be exactly right: the calculation. Everything else depends on it.
- Get the formula right. We implemented the official KUCCPS midpoint-marks method for all 18 clusters. An early version used a simpler approximation, and we replaced it once it proved inaccurate.
- Get the data in. We collected course and cutoff data from the KUCCPS portal and official PDFs: about 1,000 TVET, KMTC, and TTC courses across more than 14,000 offerings, plus several years of degree cutoffs. Sub-clusters were rebuilt to match the portal's 18 clusters.
- Turn points into decisions. We matched each student against courses across five pathways, with a plain admission-chance label.
- Add help where people get stuck. That meant an AI guide that answers questions using the student's own results, reading grades straight from a result slip, and mentors who've been through it.
The solution
- Cluster points calculator: all 18 KUCCPS clusters, using the official formula. It works without an account and exports to PDF.
- Course matcher: degree, diploma, KMTC, TVET, and TTC courses, labelled Very High / High / Medium / Low chance. It has filters, CSV export, and shareable links.
- Cutoff trends: history charts for each course, with a trend direction and an expected range for the next intake.
- CareerNext AI: a chat guide grounded in the student's saved KCSE results and the course database.
- Result-slip scanner: reads grades from a photo or PDF.
- Directories: institutions and courses, with requirements, cutoff history, and reviews.
- Career profiles and a career quiz.
- Mentorship: paid one-to-one sessions with university students, booked and paid by M-Pesa, with calendar invites and automatic refunds.
Demonstration data
Public KUCCPS dataTechnology
Built with: Python · Django · PostgreSQL · Redis · OpenAI GPT-4o · M-Pesa (IntaSend) · PWA · Render
Result
CareerNext is live. We haven't published usage numbers yet. We'll share them once they're verified.
What we haven't measured yet: we haven't yet tested calculation accuracy against a set of official KUCCPS placement results, or whether students made better choices because of CareerNext. Both are on the list (see What's next).
What we learned
- "Nearly right" isn't good enough when it's someone's future. Our first formula was a reasonable simplification, and it was wrong. A later bug in how the weaker language subject was handled made some students' points 3–5 too low. Accuracy now comes first, and gets tested first.
- Official data is messy, even when it's official. Most of the work was rebuilding clusters, reconciling sources, and being honest about where no official data exists.
- Payments fail in ordinary ways. Callbacks get missed and checkouts get abandoned. Reliable M-Pesa needed webhooks, manual checks, automatic refunds, and a background scheduler that works on our hosting.
- AI has to be grounded and paid for. The assistant only helps if it uses the student's real results, and it only stays affordable with limits and credits.
What's next
- From bands to probabilities: a machine-learning model that estimates admission odds from several years of cutoffs, instead of trend rules.
- Recommendations based on interests, results, and the choices of similar students.
- Courses to careers: connecting courses to job-market demand.
- Better AI answers, with retrieval over the full course database.
- Dashboards for counsellors and counties, so schools can support whole classes.