Shift-curving a set of grades moves the whole class average to a target without changing anyone's rank relative to their classmates — the student who scored highest before the curve still scores highest after it. The entire technique is one number: the gap between where the class average actually landed and where you want it, added to every score.
A class averaging 69 with a target of 78 gets a flat +9 added to every score.
The example
Five raw scores averaging 69; the target average is 78, so every score shifts up by 9 points.
| A | B | C | |
|---|---|---|---|
| 1 | Student | Raw score | Curved score |
| 2 | Student 1 | 62 | 71 |
| 3 | Student 2 | 71 | 80 |
| 4 | Student 3 | 58 | 67 |
| 5 | Student 4 | 80 | 89 |
| 6 | Student 5 | 74 | 83 |
The formula
Calculate the shift once, then apply it to every score:
How it works
The shift amount is calculated once and applied identically to every row:
AVERAGE($B$2:$B$6)finds the class's actual raw average — 69 across the five scores.78-AVERAGE(...)is the gap between the target average (78) and the actual average: 78 minus 69 is a +9 shift.B2+adds that same +9 shift to this row's raw score. Because every student gets the identical shift, their order relative to each other never changes — only the whole distribution moves.
Cap curved scores at 100 with MIN(...,100) if a high scorer's curved result would otherwise exceed the maximum possible score.
Try it: interactive demo
Enter a raw score, the class's actual average and the target average.
Variations
Cap curved scores at the maximum possible
Wrap the shifted score in MIN so a student already near the top of the scale does not curve above 100 (or whatever the maximum point value is).
Curve to the median instead of the mean
If one very low outlier score is dragging the average down unfairly, shift to the target using MEDIAN instead of AVERAGE so the outlier does not distort the whole curve.
Pitfalls & errors
A shift curve can push a very high raw score above the maximum possible points (over 100) if it is not capped — decide on a cap before publishing curved grades, not after a student notices their score exceeds 100%.
A shift curve preserves rank and preserves the SPREAD of scores (the gap between the highest and lowest stays the same) — it only moves the whole distribution. If the real problem is that the spread is too wide or too narrow, a shift curve will not fix that; consider a different curving method.
Make sure the AVERAGE range and the target-average cell reference use absolute references ($) before filling the formula down a column, or each row will calculate the shift from a different (wrong) subset of scores as the range shifts with it.
Practice workbook
Frequently asked questions
Is a shift curve the same as "curving on a bell curve"?
Should the target average come from the whole class or just students who took the test?
Stop fighting formulas. Learn them in a day.
This recipe is one of hundreds of real-world formulas we teach. Our Excel Formulas & Functions class covers lookups, logic, text, and dynamic arrays hands-on — live in Dallas–Fort Worth, Houston, Austin, Oklahoma City, Denver, or online.
See the Formulas & Functions Class