More of your school, connected. Admissions, the school store, homework and everyday operations.

SchoolKit
← Back to blog
results · October 5, 2026 · 9 min read

Nigerian School Grading System: How to Calculate CA, Exam Scores, Grades and Positions

Broadsheet showing CA and exam scores, totals, grades and positions for a Nigerian class

Every term, a Nigerian school turns thousands of individual marks into a single sheet of paper per child: a total for each subject, a grade, an average, a position and a comment.

Most of the arguments parents have with schools about results are not about what a child scored. They are about how the scores were combined — how the CA was weighted, why two children with the same average got different positions, or why a second-term score seems to have "disappeared" from the cumulative.

This guide walks through the full calculation, step by step, with worked examples you can check against your own broadsheet.

Step 1: Agree the Assessment Structure

Before a single score is entered, the school needs a written answer to one question: how are the 100 marks for each subject made up?

The most common structures in Nigerian schools are:

StructureCAExam
40/6040 marks (e.g. two tests of 20)60 marks
30/7030 marks (e.g. test 10, test 10, assignment 10)70 marks
30/70 (classwork-heavy)30 marks (classwork 10, assignment 5, test 15)70 marks
50/5050 marks (common in nursery and lower primary)50 marks

There is no national rule that every private school must follow for internal results — what matters is that every teacher uses the same structure, and that it is written down. Most "result wahala" comes from one teacher marking a test out of 20 and another out of 30.

Step 2: Scale Each Score to Its Weight

If every test is already marked out of its share of the total, there is nothing to do. When it isn't, convert it first:

Scaled score = (score ÷ marks available) × weight

Example: the first test is worth 20 marks in the CA, but the teacher marked it out of 50. A student scored 35.

(35 ÷ 50) × 20 = 14 out of 20

Do this for every component before you add anything up. Adding a raw 35/50 to a 15/20 is the single most common error on Nigerian broadsheets.

Step 3: Add CA and Exam to Get the Subject Total

Subject total = CA + Exam

Example (40/60 structure):

ComponentScore
1st test (20)16
2nd test (20)14
CA total (40)30
Exam (60)45
Subject total (100)75

Step 4: Convert the Total to a Grade

Each school publishes its own grading scale. A widely used one for internal results is:

ScoreGradeRemark
70 – 100AExcellent
60 – 69BVery good
50 – 59CCredit
45 – 49DPass
40 – 44EFair
0 – 39FFail

Many secondary schools — especially for SS classes — mirror the WAEC (WASSCE) nine-point scale instead, so students get used to it before the real exam:

ScoreWAEC gradeInterpretation
75 – 100A1Excellent
70 – 74B2Very good
65 – 69B3Good
60 – 64C4Credit
55 – 59C5Credit
50 – 54C6Credit
45 – 49D7Pass
40 – 44E8Pass
0 – 39F9Fail

Two practical points:

  • Decide how to round before you grade. Is 69.5 a B or an A? Pick a rule — usually "round to the nearest whole number, then grade" — and use it everywhere.
  • Grade boundaries are inclusive. 70 is an A on the first scale, not a B. Spreadsheet formulas that use > instead of >= get this wrong.

Step 5: Calculate the Student's Average

Average = sum of subject totals ÷ number of subjects the student offered

Example: a JSS 2 student offers 12 subjects and their subject totals add up to 798.

798 ÷ 12 = 66.5

Divide by the number of subjects the student actually offered, not the number on the class timetable. A student who does not take French should not have a zero averaged into their result.

Step 6: Work Out Class Positions — and Handle Ties

To rank a class:

  1. Calculate every student's average.
  2. Sort from highest to lowest.
  3. Number them — and give equal averages the same position.

When two students tie, they share the position and the next one is skipped. This is called standard competition ranking:

StudentAveragePosition
Adaeze82.41st
Tunde79.12nd
Halima79.12nd
Emeka76.84th

Emeka is 4th, not 3rd, because three students scored higher than him. Writing "3rd" here is what produces the parent at the gate asking why their child "dropped".

Decide in advance how many decimal places you compare. If you rank on averages rounded to one decimal place, 79.14 and 79.06 are a tie; rank on two and they are not. Either is defensible — changing the rule mid-term is not.

Subject positions work exactly the same way, using the subject total instead of the average.

Many schools have stopped publishing class positions for younger pupils, or show only the top three. If your school ranks, rank consistently. If it doesn't, leave the column off the card rather than printing blanks.

Step 7: Class Average, Highest and Lowest

Report cards often show how the class did as a whole, so a parent can read their child's score in context:

  • Class average for a subject = sum of all students' totals in that subject ÷ number of students who took it
  • Highest / lowest in class = the maximum and minimum subject totals

A 58 in Mathematics reads very differently when the class average is 41 than when it is 72.

Step 8: Cumulative (Third-Term) Results

At the end of the session, many schools show a cumulative score per subject. The most common method:

Cumulative = (1st term total + 2nd term total + 3rd term total) ÷ 3

Example:

TermMathematics total
First term64
Second term70
Third term73
Cumulative(64 + 70 + 73) ÷ 3 = 69

Agree beforehand what happens when a student joined mid-session or missed a term's exam. The usual options are averaging only the terms the student sat, or treating the missing term as absent rather than zero — but the rule should be written down and applied to every student.

The cumulative average usually drives the promotion decision: promoted, promoted on trial, or advised to repeat, against a pass mark the school sets for the session.

Doing It in Excel — and Where It Goes Wrong

Excel can do all of this. A typical broadsheet uses formulas like:

  • Total: =SUM(C2:E2)
  • Grade: nested IF statements such as =IF(F2>=70,"A",IF(F2>=60,"B",IF(F2>=50,"C",IF(F2>=45,"D",IF(F2>=40,"E","F")))))
  • Position: =RANK.EQ(G2,$G$2:$G$41,0) — which handles ties correctly

The formulas aren't the problem. The problems are everything around them:

  • A dozen copies. Each teacher has their own sheet, and the broadsheet is rebuilt by hand from all of them.
  • Broken ranges. Insert one late-admitted student and every RANK range is now off by a row.
  • Silent overwrites. Someone pastes values over a formula and nobody notices until a parent does.
  • No approval trail. There's no record of who changed a score after the principal signed off.

This is why schools move result processing into software once they have more than a handful of classes. In SchoolKit, the school sets its CA/exam structure and grading scale once; each teacher enters scores for their own subjects; totals, grades, averages and positions — ties included — are calculated automatically; and report cards are approved before parents can see them.

For what to look for when choosing a system, see Best School Result Management Software in Nigeria. And once the numbers are done, our list of 150+ report card comments for teachers will help with the remarks.

Quick Reference

CalculationFormula
Scaled score(score ÷ marks available) × weight
Subject totalCA + exam
Student averagesum of subject totals ÷ subjects offered
Class average (subject)sum of totals ÷ students who took it
Positionrank by average, ties share a position, next is skipped
Cumulative(1st + 2nd + 3rd term totals) ÷ 3

Frequently Asked Questions

What is the grading system in Nigerian secondary schools?

There is no single scale every school must use for internal results, but a common one is A (70–100), B (60–69), C (50–59), D (45–49), E (40–44) and F (0–39). For WASSCE, WAEC uses nine grades from A1 (Excellent) to F9 (Fail), and C6 or better is a credit.

How do you calculate CA and exam scores?

Add the student's continuous assessment scores and exam score, each already scaled to its share of the total. With a 40/60 split, a student who scores 32 out of 40 in CA and 48 out of 60 in the exam has a total of 80 out of 100. If a test was marked out of a different number, scale it first: (score ÷ marks available) × weight.

How do you calculate a student's position in class?

Calculate each student's average (total of all subject scores divided by the number of subjects offered), sort from highest to lowest and number them. Students with equal averages share a position, and the next position is skipped — for example 1st, 2nd, 2nd, 4th.

How do you calculate a cumulative result for the session?

The most common method averages the three term totals for each subject: (first term + second term + third term) ÷ 3. Schools should decide in advance how to treat a student who missed a term, and apply that rule consistently.

What is a credit pass in WAEC?

In WASSCE, grades A1, B2, B3, C4, C5 and C6 are credit passes (C6 is 50–54%). D7 and E8 are passes, and F9 is a fail. Most universities and many employers require credits in English Language and Mathematics.

Be one of our pioneer schools

Join the SchoolKit early-access waitlist — full setup support, a direct line to the team.

Join the waitlist