Normal Distribution Calculator
Enter the mean and standard deviation, then choose Below, Above or Between for an area, or Find value for a percentile. The calculator shades the region and shows the z scores, density and working beside it.
mean 100 SD 15 model N(100, 15) P(85 < X < 130) 0.8185946 z low (85 - 100)/15 = -1.00 z high (130 - 100)/15 = 2.00 density f(85) = 0.01613138 f(130) = 0.003599398 standard normal P(-1 < Z < 1) = 0.6826895inverse 95th percentile = 124.6728
The area between two values, with the z score of each bound shown. Narrow intervals that would lose precision through subtraction are integrated directly.
That is 81.86% of the curve, for a mean of 100 and a standard deviation of 15. The areas come from Cody's rational Chebyshev approximation to the error function (Mathematics of Computation, 1969) and the quantile from Acklam's rational inverse, refined here against that same curve.
Common questions
- How do I calculate a normal distribution probability?
- Turn each bound into a z score, then read the area under the standard normal curve between them. For a mean of 100 and a standard deviation of 15, the bound 85 gives z = (85 - 100)/15 = -1.00 and the bound 130 gives z = (130 - 100)/15 = 2.00, so the area between them is 0.8185946. That working is printed in the calculation preview with your own numbers in it, and the same three regions are available one at a time: below a value, above it, or between two bounds.
- How do I find the value at a given percentile?
- Pick the Find value mode and type the area to the left. The tool inverts the curve instead of searching it: for a mean of 100 and a standard deviation of 15, an area of 0.95 gives z = 1.64485 and a value of 124.6728. A probability may be written as a percentage, so 95% and 0.95 are the same request, and an area of 0.5 returns the mean itself, exactly, because half the curve lies on each side of it. To transfer a percentile between two normal models, first use Below on the source model, then use its full-precision area from Copy in Find value with the target mean and standard deviation.
- Why is a small probability shown as 6.2210e-16 instead of 0.0000000?
- Areas under a millionth use scientific notation so a small tail remains readable. For a mean of 100 and a standard deviation of 15, the area above 220 is 6.2210e-16. The upper tail is computed directly: subtracting the area below from one gives an answer about 7% too large there. Results beyond the measured range of 37 standard deviations are labelled estimates. If the floating-point evaluation underflows, the result displays < 1e-308 as a bound rather than a true zero; that display bound is not the smallest representable number.
- Can I use this as a standard normal table?
- Yes. Set the mean to 0 and the standard deviation to 1 and the bounds are z scores, so the classic lines come straight out: the area between -1 and 1 is 0.6826895, the area between -1.96 and 1.96 is 0.9500042, and the area below 2 is 0.9772499. Two of the three cases under the answer follow whichever distribution is on the page, and the third is the standard normal band either way, so they act as a running check on it.
- What is the difference between the density and the probability here?
- The density is the height of the curve at one value and the probability is the area beneath a stretch of it. A single point has no width, so its probability is exactly 0, which is what the tool returns when both bounds are the same number. The density is still useful: it is printed at each bound, and it is what tells you how quickly the area is changing there.
- How accurate are these numbers?
- The z scores use the stated formula in browser floating-point arithmetic. The areas come from Cody's rational Chebyshev approximation to the error function, published in Mathematics of Computation in 1969, and the quantile from Acklam's rational inverse refined against that same curve. Both were measured against a 900-digit reference implementation rather than against another calculator: the worst relative error found was 1.7e-13 for an area and 4e-16 for a quantile, so the page quotes a bound of 1e-12 out to 37 standard deviations.
- Which Excel formulas match the normal CDF, density and inverse?
- For the area below x, use =NORM.DIST(x, mean, sd, TRUE); FALSE gives the density at x. For the area above x, reflect the bound and use =NORM.DIST(2 * mean - x, mean, sd, TRUE), which avoids subtracting a tiny tail from 1. For a central interval, subtract the lower CDF from the upper CDF, though very narrow or far-tail intervals can lose precision. Find value corresponds to =NORM.INV(p, mean, sd). These are equivalent formulas; this page does not read or change a workbook.
- How do I use variance instead of standard deviation?
- The Standard deviation field takes the square root of the variance. If a question gives a mean of 100 and a variance of 225, enter a standard deviation of 15, then use the bounds or percentile as usual. The model shown here writes N(mean, SD); some textbooks write N(mean, variance), so check which convention the supplied second number uses. A variance of 0 has no continuous normal curve and a negative variance is invalid.
- How do I find the middle percentage or use the empirical rule?
- For the middle proportion c, the lower and upper left-tail probabilities are (1 - c) / 2 and (1 + c) / 2. Run Find value once for each probability with the same mean and standard deviation: the middle 95% uses 0.025 and 0.975. Between can then check the interval. The empirical rule is the approximate area from mean minus k times SD to mean plus k times SD: about 68.27%, 95.45% and 99.73% for k of 1, 2 and 3. These describe the normal model, rather than proving that observed data are normal.
The z scores use (bound - mean) / standard deviation in browser floating-point arithmetic. The probabilities and the quantile come from the published rational approximations named on the page, measured against an arbitrary-precision reference at better than 1e-12 relative error out to 37 standard deviations, and the inverse of 0.5 returns the mean exactly. It reports probabilities for the distribution you specify and draws no conclusion from them.