Math Runs locally Ready to use Built-in examples No tracking

Weighted Average Calculator

Enter values and weights to get the weighted average with a per-item contribution breakdown.

A course mark of "30% coursework, 70% exam", a bonus scheme with a different weight per metric, a portfolio whose holdings differ in size — in each case the items do not matter equally, so a plain average is the wrong answer. Enter each value with its weight and the weighted average comes back with every item’s contribution listed, so it is clear where the total came from.

Weights can be percentages that add up to 100 or plain numbers such as credits or quantities; this tool normalises by the sum of the weights, so both ways of entering the same data give the same answer, and a shortfall or overshoot is handled rather than rejected. The arithmetic mean is shown alongside — when the two differ sharply, the weights are what moved the result.

How to use

  1. Enter each value and its weight.
  2. Read the weighted average and the total weight.
  3. Check each item’s contribution to see what moved the result.
  4. Compare with the arithmetic mean shown beside it.

How it works

The weighted-average formula

The formula is direct: weighted average = Σ(value × weight) ÷ Σ weights. Take "coursework 85 at 30%, final 90 at 40%, homework 78 at 30%": (85×30 + 90×40 + 78×30) ÷ 100 = 86.4. The table's "contribution" column is exactly value × weight; add the contributions and divide by the total weight.

Weights don't need to sum to 100

Weights can be percentages (30/40/30), credits (3/2/4) or any positive proportions (1/2/7) — as long as the relative sizes are right the result is identical, because the tool divides by the weight sum internally. No need to force them to 100, one of the most common misconceptions.

How it differs from the arithmetic mean

Versus the arithmetic mean: the plain mean weights every item equally (85, 90, 78 average to 84.33), while the weighted mean lets heavy items dominate (86.4 above, because the 90 carries a large weight). When all weights are equal the two coincide — a handy self-check for typos.

Calculation basis: weighted average = Σ(value × weight) ÷ Σ weights, where weights can be percentages, credits or any positive ratio and are normalised to their total; the arithmetic mean is shown alongside for comparison.

Code example

JavaScript A weighted average with normalised weights

function weightedAvg(items) {   // [{value, weight}]
  const wSum = items.reduce((a, x) => a + x.weight, 0);
  const vSum = items.reduce((a, x) => a + x.value * x.weight, 0);
  return vSum / wSum;           // weights need not total 100; they are normalised automatically
}

weightedAvg([
  { value: 90, weight: 30 },
  { value: 85, weight: 30 },
  { value: 78, weight: 40 }
]);   // 84.7 (a final course grade)

Python The same formulas in Python

def weighted_avg(items):
    w = sum(x[1] for x in items)
    return sum(v * k for v, k in items) / w

weighted_avg([(90, 30), (85, 30), (78, 40)])   # 84.7

# With numpy:
import numpy as np
np.average([90, 85, 78], weights=[30, 30, 40])   # 84.7

FAQ

How do coursework and final exam scores combine?

Weight them: coursework 30% and final 70% means coursework × 0.3 + final × 0.7. If the coursework itself is several assignments, give each a row and assign weights per the syllabus — three assignments at 10% each, for instance.

Do weights have to add up to 100?

No. The tool divides by the weight sum, so 1/2/7 and 10%/20%/70% give identical results. Knowing this saves you the trouble of normalizing weights.

Is the weighted average always higher than the arithmetic mean?

Not necessarily. It's higher when high scores carry big weights and lower when heavy weights sit on weak scores. In the example the arithmetic mean is 84.33 and the weighted 86.4 because the 90 is weighted heavily.

Credit weights vs. percentage weights — any difference?

Mathematically none; only the meaning differs. Credits express course importance, percentages express assessment shares. Entering credits yields the credit-weighted average — exactly what many schools publish.

Does a missed exam count as 0?

Enter whatever your instructor's policy produces. If the school excludes a missed exam from the total, just delete that row — the weight sum adjusts to the remaining items and the result stays correct.

Which tool should I use for GPA?

The GPA calculator. It maps percentage scores to grade points first (4.0/5.0 bands) and then weights by credits — a different quantity from a raw weighted average, and the one study-abroad applications ask for.

Are my grades uploaded?

No. Values and weights only take part in local multiply-add operations — nothing is sent to a server, nothing is tracked. History lives only in this browser, clears with one click, and disappears when an incognito window closes.