StatsSolve logo
Statistics & probability tools
Area under the curve • normalcdf syntax included

Normal CDF Calculator

Set a lower bound, an upper bound, the mean and the standard deviation to get the exact area under the normal curve. Open-ended bounds, z-scores, step-by-step working and copy-ready TI-84, Excel, R and Python lines come with every answer.

Last updated October 15, 2026  •  Written by Mark, StatsSolve  •  Free, no sign-up

lower upper P = area

Normal CDF Calculator

Enter the bounds, mean and standard deviation. Type inf or -inf for an open end. Results update as you type.

StatsSolve Distribution Tool
Probability type
Center of the distribution
Must be greater than 0
Smallest value to include
Largest value to include
Quick:
P(60 ≤ X ≤ 85)0.83448178
As a percentage83.4482%
Outside the range0.16551822
Odds—
Z-score of lower bound−1.3333
Z-score of upper bound1.4444
Mean72
Standard deviation9
Step-by-step workingWorking appears here.
Same calculation in other toolsSyntax appears here.
SummarySummary appears here.
Normal curve with the selected area shaded
The shaded region is the probability. The dashed orange line marks the mean.
Shaded areaMean
Value of X (axis shows μ ± 3σ)Total area under curve: 1
∞
Open-ended bounds

Type inf or -inf, or use the buttons, to get left-tail and right-tail probabilities without 1E99 workarounds.

⌘
Syntax you can copy

Every result prints the matching normalcdf, Excel, R and Python lines with your own numbers filled in.

▥
Shaded bell curve

See exactly which area is counted, with the bounds, the mean and the probability labelled on the chart.

What Does a Normal CDF Calculator Do?

A normal CDF calculator finds the probability that a normally distributed value lands inside a range you choose. You type a lower bound, an upper bound, the mean and the standard deviation, and it returns the area under the bell curve between the two bounds. That area is the probability.

It does the same job as the normalcdf command on a TI-83 or TI-84, without the menu digging. Beyond the answer, this version draws the shaded region, shows the z-scores behind it, walks through the subtraction, and prints the matching normalcdf, Excel, R and Python syntax so you can reproduce the result anywhere else. Leave a bound open by typing inf or -inf, or tap the infinity buttons, and you get a left-tail or right-tail probability.

If you need a z-score, a percentile or the value that cuts off a given probability, the normal curve calculator is built for that. This page is for the cumulative question: how much of the distribution sits between here and there?

What Is the Normal Cumulative Distribution Function?

The normal cumulative distribution function, or CDF, gives the probability that a normal random variable is less than or equal to a value x. Written as Φ(z) for the standard normal and F(x) for any normal, it is the area under the bell curve from negative infinity up to x.

The standard normal CDF has no closed-form expression in elementary functions, but it can be written with the error function:

Φ(z) = ½ × [1 + erf(z / √2)]

For a normal variable with mean μ and standard deviation σ, you first convert x to a z-score, z = (x − μ) / σ, and then read off Φ(z). A few anchor points are worth knowing by heart: Φ(0) = 0.5 because the curve is symmetric around the mean, Φ(1) ≈ 0.8413, and Φ(1.96) ≈ 0.9750. Symmetry also gives Φ(−z) = 1 − Φ(z), which is how a z-table lets you skip the negative half.

The CDF is not the same thing as the probability density function (PDF). The PDF is the height of the bell curve at a point. It is not a probability, and for a continuous variable the chance of landing on any single exact value is zero. The CDF accumulates area, which is why it is the one you use to answer “what’s the chance of…” questions.

How Do You Use This Normal CDF Calculator?

Enter the mean and standard deviation, choose the kind of probability, and fill in the bounds. Results update as you type.

  1. Mean (μ) and standard deviation (σ): the center and spread of your distribution. For the standard normal use 0 and 1. The standard deviation must be positive, and it is the standard deviation, not the variance.
  2. Pick the probability type. Between gives P(a ≤ X ≤ b). Below gives P(X ≤ x). Above gives P(X ≥ x). Outside gives the two tails together, P(X ≤ a) + P(X ≥ b).
  3. Enter the bounds. Type numbers, or type inf and -inf (the TI-style 1E99 and -1E99 also work) for an open end. The two buttons under the bound fields fill in the infinity symbols for you.
  4. Read the result. You get the probability, the percentage, the z-scores of your bounds, the complement, the working, a shaded chart, and the same calculation in normalcdf, Excel, R and Python.

Normal distributions are continuous, so P(X ≤ a) and P(X < a) are the same number. That’s why the calculator has no separate “less than” and “less than or equal” settings.

How Do You Find the Probability Between Two Values?

Convert both bounds to z-scores, look up the CDF for each, and subtract the smaller from the larger. In symbols:

P(a ≤ X ≤ b) = Φ((b − μ) / σ) − Φ((a − μ) / σ)

The subtraction works because Φ(b) is the area from the far left up to b, and Φ(a) is the area from the far left up to a. What remains after you remove the a-part is the slice between them.

The other three types come from the same idea. A left tail is Φ(z) on its own. A right tail is 1 − Φ(z), which equals Φ(−z). Two tails add up to 1 minus the middle slice. Once you can do the between case by hand, the rest is bookkeeping.

Example 1: What Is the Chance an IQ Score Is Above 130?

About 2.28%, or roughly 1 in 44. IQ scores are scaled to a mean of 100 and a standard deviation of 15, so for P(X ≥ 130) set μ = 100, σ = 15, the lower bound to 130 and the upper bound to infinity.

z = (130 − 100) / 15 = 2.00 Φ(2.00) ≈ 0.97725 P(X ≥ 130) = 1 − 0.97725 = 0.02275

Going the other way, P(X ≤ 90) uses z = (90 − 100) / 15 ≈ −0.667 and gives about 0.2525, so roughly a quarter of people score 90 or lower. And P(85 ≤ X ≤ 115), one standard deviation either side of the mean, is 0.6827, the familiar 68% from the empirical rule.

Example 2: How Many Exam Scores Fall Between 60 and 85?

About 83.4%. Suppose exam scores are roughly normal with a mean of 72 and a standard deviation of 9. Enter 60 as the lower bound and 85 as the upper bound.

z for 60 = (60 − 72) / 9 = −1.333 z for 85 = (85 − 72) / 9 = 1.444 Φ(1.444) ≈ 0.92569 Φ(−1.333) ≈ 0.09121 P(60 ≤ X ≤ 85) = 0.92569 − 0.09121 = 0.83448

So 83.4% of students land in that band. The remaining 16.6% splits into 9.1% below 60 and 7.4% above 85. Flip the calculator to Outside with the same bounds and you’ll see that 16.6% as a single figure. If you’re picking a grade boundary, this is the quick way to see how many students each cut-off affects.

Example 3: What Share of Bolts Falls Outside the Tolerance?

About 4.55% for a tolerance of plus or minus 0.4 mm. A machine produces bolts with a mean length of 50 mm and a standard deviation of 0.2 mm. The specification allows lengths from 49.6 mm to 50.4 mm, which is exactly two standard deviations each side of the target.

P(49.6 ≤ X ≤ 50.4) = Φ(2) − Φ(−2) = 0.97725 − 0.02275 = 0.95450 P(outside) = 1 − 0.95450 = 0.04550

Tighten the tolerance to 49.7 to 50.3 mm, which is 1.5 standard deviations each side, and the share outside the limits jumps to 13.4%. Process engineers run exactly this check when they decide whether a machine needs recalibrating or the spec needs loosening. Choose Outside, enter the two limits, and the calculator gives you the reject rate directly.

Example 4: What Percentile Is a Score of 650?

About the 93rd percentile. Say a test is scored with a mean of 500 and a standard deviation of 100. For a score of 650, the z-score is (650 − 500) / 100 = 1.5.

Φ(1.5) ≈ 0.93319

That means 93.3% of test-takers scored at or below 650, and 6.7% scored above it. A percentile rank is simply the normal CDF at the score, written as a percentage; if you only have a z-score, the z-score to percentile calculator gives it directly. Use Below with 650 as the bound to get it in one step.

How Do You Use normalcdf on a TI-84 or TI-83?

On a TI-83 or TI-84 the command is normalcdf(lower, upper, μ, σ). Press 2nd, then VARS to open the DISTR menu, and choose 2:normalcdf(. Fill in the four values, close the bracket and press ENTER. Newer TI-84 Plus CE software shows a form with boxes for each value instead, but the order is the same.

Take Example 2 (mean 72, SD 9, between 60 and 85):

normalcdf(60, 85, 72, 9)        -> 0.8345

For a tail, you need an open end, and the calculator has no infinity key. The convention is to use a huge number, 1E99 for the upper end and -1E99 for the lower end. To type 1E99, press 1, then 2nd and the comma key (that produces the E), then 99.

normalcdf(90, 1E99, 72, 9)      -> 0.0228   (P(X >= 90))
normalcdf(-1E99, 65, 72, 9)     -> 0.2184   (P(X <= 65))

Leave out the last two values and the calculator assumes the standard normal, so normalcdf(-1, 1) returns 0.6827. When you’re not sure which way a tail runs, sketch the bell, shade the part you want, and decide which end is open. This calculator prints the exact normalcdf line for whatever you enter, including the 1E99 placeholders, so you can copy it onto a handheld.

What Is the Difference Between normalcdf, normalpdf and invNorm?

normalcdf returns an area (a probability), normalpdf returns the height of the curve at one point, and invNorm works backwards from an area to a value. Only normalcdf answers “what’s the chance of…”. When you already know the probability and need the cut-off, the inverse normal calculator runs that step for you, for any tail.

normalpdf(0) is about 0.3989 for the standard normal. That is a density, so it can be bigger than 1 for a very narrow distribution and it isn’t a probability. invNorm(0.975) gives 1.96, the z-score with 97.5% of the area to its left. If you want that reverse direction, with a probability in and a cut-off value out, use the “find x from probability” mode on our normal curve calculator.

How Do You Calculate the Normal CDF in Excel, Google Sheets, R and Python?

Each tool has a built-in function. They follow the same pattern as the formula: CDF at the upper bound minus CDF at the lower bound. Using Example 2 (mean 72, SD 9, between 60 and 85):

Excel / Google Sheets
  =NORM.DIST(85, 72, 9, TRUE) - NORM.DIST(60, 72, 9, TRUE)   -> 0.8345
  =NORM.S.DIST(1.96, TRUE)                                    -> 0.9750

R
  pnorm(85, mean = 72, sd = 9) - pnorm(60, mean = 72, sd = 9)  -> 0.8345

Python
  from scipy.stats import norm
  norm.cdf(85, loc=72, scale=9) - norm.cdf(60, loc=72, scale=9)  -> 0.8345

In Excel, the last argument TRUE asks for the cumulative distribution. Use FALSE and you get the density instead, which is a common slip. In SciPy, scale is the standard deviation, not the variance. The calculator prints these lines already filled in with your numbers.

How Does the Normal CDF Connect to the 68-95-99.7 Rule?

The empirical rule is the normal CDF evaluated at whole numbers of standard deviations. The area within 1 standard deviation of the mean is 0.6827, within 2 it is 0.9545, and within 3 it is 0.9973.

RangeArea (probability)Outside the range
μ ± 1σ0.68270.3173
μ ± 1.96σ0.95000.0500
μ ± 2σ0.95450.0455
μ ± 3σ0.99730.0027

The 1.96 row is the one that shows up in 95% confidence intervals, which is why you see that number everywhere. You can reproduce every row above by setting the mean and standard deviation to any values and entering bounds at μ − kσ and μ + kσ, and the quick buttons above the calculator do exactly that. For the full bell-curve view with z-scores, visit the normal curve calculator or the Gaussian distribution calculator.

What Mistakes Do People Make With Normal CDF Problems?

The first is typing the variance where the standard deviation belongs. If a problem says the variance is 25, the standard deviation is 5. Using 25 makes the curve five times too wide and every probability wrong in a way that looks plausible.

The second is picking the wrong tail. “More than” and “at least” are right tails, “less than” and “at most” are left tails. A rough sketch takes ten seconds and catches most of these. If your answer for a value above the mean comes out below 0.5 on a left-tail question, something is flipped.

Third, treating normalpdf or Excel’s FALSE option as a probability. The density is a height, and heights are not probabilities.

Fourth, rounding the z-score too early. If you use a printed z-table with two decimal places, round once at the end rather than at every step. A calculator avoids the issue altogether.

Last, forgetting that the model has to fit. The normal CDF is only as good as the assumption that your data is roughly bell-shaped. For counts that take whole-number values, like successes in a fixed number of trials, the binomial probability calculator gives the exact answer, and you can use the normal curve as an approximation only when the numbers are large enough.

Key Points to Remember

  • The normal CDF gives the probability that a normal variable is at or below a value, and the area between two bounds is Φ(upper) − Φ(lower).
  • Convert to a z-score with z = (x − μ) / σ, using the standard deviation, never the variance.
  • For a tail, leave one end open with infinity. On a TI-84 that means 1E99 or -1E99.
  • Continuous distributions give P(X = a) = 0, so less-than and at-most are the same probability.
  • normalcdf, NORM.DIST with TRUE, pnorm and norm.cdf are the same calculation in different software.
  • The 68-95-99.7 rule is the normal CDF at 1, 2 and 3 standard deviations.
  • Check that your data is close to bell-shaped before trusting the answer.

Frequently Asked Questions

What is the difference between the normal CDF and the normal PDF?

The PDF gives the height of the bell curve at a point, and that height is not a probability. The CDF gives the area under the curve up to a point, which is the probability of being at or below it. Use the CDF for questions like “what’s the chance a value is less than 80?”.

How do I enter infinity in a normal CDF calculator?

Type inf for positive infinity and -inf for negative infinity, or press the infinity buttons next to the bound fields. TI-style 1E99 and -1E99 also work. An open upper bound gives a right-tail probability, and an open lower bound gives a left-tail probability.

Why is P(X = a) equal to zero for a normal distribution?

A normal variable is continuous, so probability is spread over an infinite number of possible values and a single exact value carries zero area. That is why P(X < a) and P(X ≤ a) are the same and why the calculator needs a range, not a single point.

What is the normal CDF of 1.96?

Φ(1.96) is about 0.9750, so 97.5% of a standard normal distribution lies below z = 1.96. The area between −1.96 and 1.96 is 0.9500, which is where the 95% confidence interval multiplier comes from.

Can I use this calculator if my data is not normal?

Only as an approximation. The answer assumes the data follows a normal distribution with the mean and standard deviation you enter. Check a histogram or a normality test first. For skewed or discrete data, another model such as the binomial or Poisson distribution is usually a better fit.

How do I convert a normalcdf answer to a percentile?

Use a left-tail probability and multiply by 100. If normalcdf(-1E99, 650, 500, 100) returns 0.9332, the score of 650 is at about the 93rd percentile.

How accurate is this normal CDF calculator?

It computes the standard normal CDF with a double-precision algorithm, and on the test values StatsSolve checked it agrees with SciPy’s norm.cdf at every one of the 8 decimal places shown, including far-tail cases.

Is this normal CDF calculator free?

Yes. Like every StatsSolve calculator it is free, runs in your browser and needs no sign-up.

Further reading: NIST/SEMATECH e-Handbook of Statistical Methods: Normal Distribution.