# How to calculate a z-score in Excel

Subtract the mean and divide by the standard deviation: `=(B2-AVERAGE($B$2:$B$9))/STDEV.S($B$2:$B$9)`.

**Excel:** `=(B2-AVERAGE($B$2:$B$9))/STDEV.S($B$2:$B$9)` (Excel 2010 and later)

**Google Sheets:** the same formula works.

## Example

Sample data (row 1 is the header):

| A | B | C |
| --- | --- | --- |
| Student | Exam score | Z-score |
| A | 68 |  |
| B | 74 |  |
| C | 81 |  |
| D | 90 |  |
| E | 77 |  |
| F | 85 |  |
| G | 59 |  |
| H | 72 |  |

Formula in C2, filled to C9: `=(B2-AVERAGE($B$2:$B$9))/STDEV.S($B$2:$B$9)`

Result: -0.79; -0.18; 0.53; 1.45; 0.13; 0.94; -1.71; -0.38

## How it works

The mean is 75.75 and the standard deviation about 9.82. Student D's 90 is 14.25 above the mean, which is 1.45 standard deviations, so the z-score is 1.45. Negative z-scores are below the mean. The `$` signs keep every row comparing against the same mean and spread.

## Other ways

- `=(B2-AVERAGE($B$2:$B$9))/STDEV.P($B$2:$B$9)`: Use the population standard deviation when the list is the whole group. (Slightly larger z-scores, because STDEV.P is smaller.)

## Common mistakes

- Without `$`, the mean and standard deviation ranges shift as you fill down and each row compares against a different group.
- Calculating AVERAGE and STDEV.S in every row is fine for small lists; for large ones, put them in two cells and refer to those.

## Questions

**Is there a built-in function?**

Yes, STANDARDIZE: `=STANDARDIZE(B2,AVERAGE($B$2:$B$9),STDEV.S($B$2:$B$9))` gives the same result.

**How do I turn a z-score into a percentile?**

Use `=NORM.S.DIST(C2,TRUE)`, the share of a normal distribution below that z-score.

Every formula and result on this page was checked by running it in the Spreadsheet Practice formula engine on 2026-10-30.

Source: https://spreadsheetpractice.com/formulas/calculate-a-z-score
