Grade Calculator

Compute weighted-average grades from any number of assignments with custom weights, plus an unweighted average and US-style letter grade.

How this works

Most courses use weighted averages: a final exam is worth more than a homework set, a midterm sits between them. The grade is Σ(score × weight) / Σ(weight). If weights are normalised (sum to 100%), the divisor drops out and you just take Σ(score × weight). Most students lose grades not by failing the calculation but by miscounting weights — copy them straight from the syllabus.

When weights don't sum to 100%. Either you missed an assignment (the syllabus listed quizzes that haven't been graded yet), or there's an extra-credit row inflating the total above 100%. The calculator normalises automatically — but the result is only accurate if you actually have all the rows. For a mid-semester estimate, leave the un-graded rows out; the answer is conditional on completing the rest at the average level.

Letter grades vary by system. **US standard**: A ≥ 90, B ≥ 80, C ≥ 70, D ≥ 60, F < 60. Some schools use ±: A− 90–93, A 93–96, A+ 97+. **UK**: First ≥ 70, Upper Second 60–69, Lower Second 50–59, Third 40–49. **EU (5-point)**: 5 = excellent, 1 = fail. **Japan**: 秀 90+, 優 80–89, 良 70–79, 可 60–69, 不可 < 60. The calculator returns the US convention; convert to your local system using a published rubric. For courses with a forced curve, the raw average is what gets ranked — letter grade depends on the cohort, not the absolute score.

The formula

weighted_avg = Σ(score_i × weight_i) / Σ(weight_i) unweighted_avg = (1/n) × Σ(score_i) letter_grade = lookup(weighted_avg) using US bands.

score_i = your score on assignment i (typically 0–100). weight_i = the weight from the syllabus (typically a percentage). The calculator handles weights that don't sum to 100 by normalising; this is mathematically equivalent to scaling all weights to fit.

Example calculation

  • Homework 90% (weight 30%), Midterm 75% (weight 30%), Final 82% (weight 40%).
  • Weighted avg = (90×0.3 + 75×0.3 + 82×0.4) = 27 + 22.5 + 32.8 = 82.3% → letter grade B.

Frequently asked questions

My weights don't sum to 100% — does that matter?

It depends why. If you're missing an assignment that'll be graded later, the result is a partial average — it's the right number for "what's my grade so far." If the syllabus genuinely sums to less than 100% (some classes drop the lowest quiz, etc.), the calculator's normalisation gives the correct end-state grade. If it's more than 100% (extra credit), normalising under-weights the bonus — to be fair to your bonus points, score them at face value and let the calculator add the boost.

How do I figure out what I need on the final?

Rearrange the equation: required_final_score = (target_grade − current_weighted_partial) / final_weight. If you have 80% going in, the final is worth 40%, and you want to finish at 85%: required = (85 − 0.6×80) / 0.4 = (85 − 48) / 0.4 = 92.5%. If the answer comes back > 100%, you can't hit your target without extra credit. If < 0%, you're already there even with a zero on the final.

Why doesn't the letter grade match my school?

The calculator uses the most common US scale (A 90+, B 80+, etc.). Some schools use stricter cutoffs (A 93+, B 85+), some use ± (A− 90–93, A 93–96, A+ 97+), and many universities outside the US use entirely different systems. Check your syllabus for the exact rubric — for an unweighted percentage like 82%, the conversion to a letter is the part that varies most.

Related calculators