standarddeviationcalculator.net

Updated

Reference ranges and mean ± 2 SD

The "normal range" printed next to a blood test result is usually not a line between healthy and ill. It is a statistical summary of healthy people: the band that holds the middle 95% of their results. That definition has consequences, the most important being that one healthy person in twenty will fall outside it on any given test.

33.544.555.566.5700.10.20.30.40.50.60.70.80.9 4.025.98 result (mmol/L) density

━ healthy results, mean 5.0, SD 0.5 mmol/L   ━ outer 2.5% on each side

The shaded tails beyond 4.02 and 5.98 mmol/L are healthy people too: together they are the 1 in 20 that a mean ± 1.96 SD range flags by design.

All numbers in this post are hypothetical and chosen to show the method. They are not real reference values for any test. For your own results, use the range on your lab report and ask the clinician who ordered it.

Building a range from healthy volunteers

A lab that sets its own range measures the analyte in a group of reference individuals: people screened to be healthy and representative of the patients the lab serves. The central 95% of their results becomes the reference interval, with 2.5% cut off at each end. For the nonparametric method described below, laboratory guidance (CLSI EP28-A3c) recommends at least 120 reference individuals.

If the results are roughly bell-shaped, the central 95% can be found from the mean and SD alone. For a normal distribution, 95% of values lie within 1.96 standard deviations of the mean:

lower limit = x̄ − 1.96 s upper limit = x̄ + 1.96 s

Say a hypothetical analyte in 120 volunteers has a mean of 5.0 mmol/L and an SD of 0.5 mmol/L. The interval is 5.0 − 0.98 to 5.0 + 0.98, or 4.02 to 5.98 mmol/L, which would usually be printed as 4.0–6.0. That is where the everyday phrase "mean ± 2 SD" comes from: 2 SD covers 95.45% of a normal distribution, close enough that the two are used interchangeably. The normal distribution calculator gives the exact coverage for any multiple of the SD.

Try it: inverse normal distribution calculator

The calculator opens with its own defaults; enter an area of 0.95, choose "In the middle", and set the mean to 5.0 and the SD to 0.5 (or your own analyte's figures) to get both reference limits.

Between 0 and 1, e.g. 0.95 or 95%.

Use μ = 0 and σ = 1 for a z-score.

x with P(X ≤ x) = 0.95 124.673
z-score1.64485
Area left of the upper cut-off0.95
Mean μ100
Standard deviation σ15
40608010012014016000.0050.010.0150.020.025 124.7

The curve is the probability density; the shaded area is the probability asked for.

Common left-tail areas for this μ and σ
Left-tail areazx
0.91.2816119.223
0.951.6449124.673
0.9751.96129.399
0.992.3263134.895
0.9952.5758138.637
Show the working, step by step
  1. Turn the area into the probability to the left of a cut-off.

    The area to the left is the probability itself: 0.95.

  2. Find z from the inverse standard normal CDF:

    z = Φ⁻¹(0.95) = 1.64485

  3. Convert z back to the scale of X:

    x = μ + zσ = 100 + 1.64485 × 15 = 124.673

Φ⁻¹ is evaluated with Acklam’s rational approximation, accurate to about 1 part in a billion.

Open the full inverse normal distribution calculator for cut-offs at any percentile or tail area.

Why 1 in 20 healthy people falls outside

The 5% outside the range is not an error rate that better equipment will fix. It is built in: the limits were placed so that 2.5% of healthy results sit below and 2.5% above. A healthy person with a result of 6.1 mmol/L on our made-up test is simply in the top 2.5% of healthy people, which by definition someone has to be.

The effect compounds when several tests are run together. If each test independently had a 5% chance of flagging a healthy person, the chance of at least one flag grows quickly:

Tests in the panelP(all inside)P(at least one outside)
195.0%5.0%
290.25%9.75%
577.4%22.6%
1059.9%40.1%
2035.8%64.2%

The arithmetic is 1 − 0.95ᵏ for k tests. Real tests are not fully independent (several analytes move together), so the true figure for a real panel will differ, but the direction is right: a healthy person given twenty tests should expect at least one result outside its range. This is the same multiple-comparisons problem that the Bonferroni correction addresses in research.

Skewed analytes: where mean ± 1.96 SD goes wrong

Many analytes are not bell-shaped. Enzyme activities, hormone levels and inflammatory markers often have a long right tail: most healthy people cluster low, and a few sit well above. Mean ± 1.96 SD assumes symmetry, and on skewed data it puts the limits in the wrong places.

Take a hypothetical enzyme whose healthy values follow a lognormal distribution with a median of 30 U/L and a standard deviation of 0.4 on the natural-log scale. The raw values have a mean of 32.5 U/L and an SD of 13.5 U/L. Compare three ways of setting the range:

MethodLower (U/L)Upper (U/L)Healthy belowHealthy above
Mean ± 1.96 SD on raw values6.059.00.003%4.5%
Mean ± 1.96 SD on log values13.765.72.5%2.5%
2.5th and 97.5th percentiles13.765.72.5%2.5%

The raw-scale range is badly placed at both ends. Its lower limit of 6.0 U/L is so low that almost no healthy person falls below it, so a genuinely low result would go unflagged, while its upper limit of 59.0 flags nearly all of the expected 5% on the high side alone.

The fix is to work on the log scale. Take the natural log of every result, compute the mean and SD of the logs, apply ± 1.96 SD, then convert back:

ln(30) = 3.401 3.401 ± 1.96 × 0.4 = 2.617 to 4.185 e^2.617 = 13.7 U/L, e^4.185 = 65.7 U/L

The resulting range is lopsided around the median, 16.3 below it and 35.7 above, which is exactly the shape of the data. The lognormal distribution calculator handles this conversion.

The percentile method: no distribution assumed

The other route skips the mean and SD entirely. Sort the reference results and read off the 2.5th and 97.5th percentiles. With 120 people, those fall at roughly the 3rd lowest and 3rd highest values. The method works for any shape, which is why it is often the default, but it depends on only a handful of observations at each end. That is the reason for the 120 minimum: with fewer people, the limits jump around from one sample to the next.

Reading your own result against a range

For a roughly normal analyte, you can place a result on the reference distribution with a z-score. On the made-up test with mean 5.0 and SD 0.5, a result of 6.1 has z = (6.1 − 5.0) ÷ 0.5 = 2.2: just past the upper limit, and in territory about 1.4% of healthy people reach. A result of 8.0 is z = 6, far beyond anything the healthy population produces. The distance matters more than the flag. The broader idea of reading a value as a number of SDs from the mean is on the standard deviation and normal distribution page.

Two cautions. A reference range describes a population, not you: your own results may usually sit near one end, so a change over time can say more than any single value. And a range says nothing about clinical cut-offs set from outcome studies, such as treatment thresholds, which are chosen differently and can sit inside or outside the statistical range.

Common questions

Does a result outside the reference range mean something is wrong?

Not by itself. A range built from the central 95% of healthy people leaves 5% of healthy people outside it by design, about 1 in 20 for each test. A result just outside the range is weak evidence; one far outside it, or one that fits symptoms and other results, is stronger. Interpreting it is a job for the clinician who ordered the test.

Why 1.96 SD and not 2 SD?

For a normal distribution, 95% of values lie within 1.96 SD of the mean. Two SD covers 95.45%. The difference is small, so "mean ± 2 SD" is common shorthand, but a range described as the central 95% uses 1.96.

Why do different labs give different reference ranges for the same test?

Each range comes from a particular reference population, measured with a particular method and instrument. Different analysers, reagents and populations shift the mean and SD a little, so the limits move too. That is why a report prints the range that applies to the lab that ran the sample.