Student Grade & Assignment Tracker
Made for students at school, college or university.
Keep track of your modules, every assignment's deadline and hand in status, the marks you get back, and your running average. The summary carries a chart that redraws itself as you type.
Of the 16 columns, you fill in 9 and the other 7 work themselves out, and all 10 figures on the summary do too. There is room for 100 rows of your own.
£4.99one payment, yours to keep
- Opens in Excel, Google Sheets and Numbers
- Delivered straight away
- No macros, nothing to install
- Change it free before you buy
Payment is handled by Stripe. Your card details go to them and never to us. Sales are final, which is why every tab, column and calculation is shown on this page first.
Already have a spreadsheet of your own? Check it for mistakes, free.
- A new row is typed into the Assignments tab, one cell at a time, in the white cells a person fills in.
- The shaded cells in that row fill themselves in.
- The figures on the Summary tab change to include the new row.
- The chart, Assignments by status, recounts with it.
Everything inside, before you pay
This is the whole design: every tab, every column and how each calculated one is worked out. White cells are yours to fill in; the shaded ones work themselves out and are locked so a formula cannot be overwritten by accident. There is room for 100 rows. Open any tab to see its columns.
Modules
6 columns
| Column | What goes in it | Worked out as |
|---|---|---|
| Module | Type any text. | |
| Code | Type any text. | |
| Credits | Type a number. | |
| Weight Marked | How much of this module's assessment has been marked so far.Fills itself in. | The total of Worth on Assignments where Module matches this row's Module and Mark is not blank. The formulaIF(ISBLANK([module]), "", SUMIFS([Assignments!weight], [Assignments!module], [module], [Assignments!mark], "<>")) |
| Average So Far | Weighted average of the marks you have received in this module.Fills itself in. | Worked out from this row's Module, using Weighted Mark, Module, Worth and Mark on Assignments. The formulaIF(ISBLANK([module]), "", IFERROR(SUMIFS([Assignments!weighted], [Assignments!module], [module]) / SUMIFS([Assignments!weight], [Assignments!module], [module], [Assignments!mark], "<>"), "")) |
| Credit Points | Credits multiplied by the module average. Used for your overall credit weighted average.Fills itself in. | Worked out from this row's Module, Credits and Average So Far. The formulaIF(OR(ISBLANK([module]), ISBLANK([credits])), "", IFERROR([credits] * [module_average], "")) |
Assignments
10 columns
| Column | What goes in it | Worked out as |
|---|---|---|
| Assignment | Type any text. | |
| Module | Pick one of the Module entries on Modules. | |
| Worth | Share of the module grade this assignment is worth, e.g. 25%.Type a percentage, like 20%. | |
| Deadline | Type a date. | |
| Status | Pick one: Not started, In progress, Handed in or Marked. | |
| Mark | Enter as a percentage, e.g. 68%.Type a percentage, like 20%. | |
| Days Left | Negative means the deadline has passed.Fills itself in. | Worked out from this row's Deadline and Status. The formulaIF(OR(ISBLANK([deadline]), [status]="Handed in", [status]="Marked"), "", [deadline] - TODAY()) |
| Due | Fills itself in. | Worked out from this row's Deadline and Status. The formulaIF(ISBLANK([deadline]), "", IF(OR([status]="Handed in", [status]="Marked"), "Done", IF([deadline] < TODAY(), "Overdue", IF([deadline] - TODAY() <= 7, "Due this week", "Upcoming")))) |
| Outstanding Deadline | Only shows a date for work not yet handed in.Fills itself in. | Worked out from this row's Deadline and Status. The formulaIF(OR(ISBLANK([deadline]), [status]="Handed in", [status]="Marked"), "", [deadline]) |
| Weighted Mark | What this mark adds to the module grade.Fills itself in. | The Mark times the Worth. The formulaIF(OR(ISBLANK([mark]), ISBLANK([weight])), "", ROUND([mark] * [weight], 4)) |
Summary
10 figures
| Figure | Worked out as |
|---|---|
| Due in the next 7 days | The number of rows on Assignments where Due is “Due this week”. The formulaCOUNTIF([Assignments!due_flag], "Due this week") |
| Overdue | The number of rows on Assignments where Due is “Overdue”. The formulaCOUNTIF([Assignments!due_flag], "Overdue") |
| Earliest outstanding deadline | The soonest deadline for work you have not handed in yet. The smallest Outstanding Deadline on Assignments. The formulaIF(COUNT([Assignments!pending_deadline]) = 0, "", MIN([Assignments!pending_deadline])) |
| Still to hand in | Worked out from Status on Assignments. The formulaCOUNTIF([Assignments!status], "Not started") + COUNTIF([Assignments!status], "In progress") |
| Handed in, awaiting mark | The number of rows on Assignments where Status is “Handed in”. The formulaCOUNTIF([Assignments!status], "Handed in") |
| Average mark so far | Simple average of every mark received. The average of Mark on Assignments. The formulaIFERROR(AVERAGE([Assignments!mark]), 0) |
| Weighted average so far | Bigger assignments count for more. Worked out from Weighted Mark, Worth and Mark on Assignments. The formulaIFERROR(SUM([Assignments!weighted]) / SUMIFS([Assignments!weight], [Assignments!mark], "<>"), 0) |
| Credit weighted average | Each module's average weighted by its credits, counting only modules with marks back. Worked out from Credit Points, Credits and Weight Marked on Modules. The formulaIFERROR(SUM([Modules!credit_points]) / SUMIFS([Modules!credits], [Modules!marked_weight], ">0"), 0) |
| Highest mark | The largest Mark on Assignments. The formulaIFERROR(MAX([Assignments!mark]), 0) |
| Total credits | The total of Credits on Modules. The formulaSUM([Modules!credits]) |