What Is Normal Approximation to the Binomial?
The binomial distribution gives the exact probability of k successes in n independent trials when each success has probability p. The formula involves factorials that grow rapidly with n, making hand calculation impractical for large samples. The normal approximation sidesteps this by treating the binomial as continuous, converting the target value to a Z-score, and reading from the standard normal distribution table.
The theoretical basis is the Central Limit Theorem: because a binomial random variable is the sum of n independent Bernoulli trials, it converges to a normal distribution as n increases. This is why accuracy improves with larger samples and why the approximation is less reliable near the condition thresholds.
When np ≥ 5 and n(1−p) ≥ 5, a binomial distribution B(n, p) can be approximated by a normal distribution with mean μ = np and standard deviation σ = √(np(1−p)). Apply a continuity correction of ±0.5 to the discrete boundary, compute Z = (xcorrected − μ) / σ, and find the probability from the standard normal table. This method is standard in AP Statistics, A-Level Maths, and introductory college statistics.
Conditions: np ≥ 5 and n(1−p) ≥ 5
The normal approximation is only reliable when the binomial distribution is reasonably symmetric. Symmetry depends on p: distributions with p near 0.5 are almost perfectly bell-shaped even at moderate n, while distributions with extreme p are skewed and need much larger n. The standard check is the Rule of 5, also called the np ≥ 5 and nq ≥ 5 rule (where q = 1 − p).
- np ≥ 5 — expected number of successes must be at least 5 (also written np ≥ 5)
- n(1−p) ≥ 5 — expected number of failures must be at least 5 (also written nq ≥ 5)
- If either condition fails, use exact binomial computation instead
- Stricter standard (advanced courses, econometrics, NIST conservative): np ≥ 10 and n(1−p) ≥ 10
- For Poisson approximation: λ ≥ 10 (standard) or λ ≥ 20 (conservative)
- The np ≥ 5 and n(1−p) ≥ 5 standard is used in the NIST/SEMATECH Engineering Statistics Handbook
| Notation | Meaning | Source |
|---|---|---|
| np ≥ 5 and n(1−p) ≥ 5 | Standard form (p = success probability) | AP Statistics, most US textbooks |
| np ≥ 5 and nq ≥ 5 | Same condition using q = 1 − p | UK A-Level, engineering statistics |
| np ≥ 10 and n(1−p) ≥ 10 | Stricter rule for applied work | Penn State STAT 414, some econometrics texts |
| np ≥ 5 and np(1−p) ≥ 5 | Occasionally seen; second part is the variance, not a standard rule | Rare; avoid this form |
Is Normal Approximation Valid? — Quick Decision Tree
Why the np ≥ 5 Condition Matters
When p is very small or very large, the binomial is skewed. For example, with n = 20 and p = 0.05: np = 1, far below 5. The distribution is strongly right-skewed — a symmetric bell curve fits it poorly. As p approaches 0.5, the binomial becomes symmetric and the approximation works well even at moderate n. The Rule of 5 catches the worst cases; the Rule of 10 adds safety margin for applied work where precision matters. Full coverage of this skew behavior is in the binomial distribution guide.
Normal Approximation Formulas: μ = np and σ = √(np(1−p))
Three quantities define the approximating normal distribution: the mean, the standard deviation, and the Z-score after applying the continuity correction. These formulas are directly tested in AP Statistics and A-Level Maths exams.
n = number of trials
p = probability of success per trial
μ = expected (mean) number of successes
σ² = np(1−p) is the variance
σ = square root of the variance
Always use σ (not σ²) in the Z-score denominator
Also written √(npq) where q = 1 − p
xcorrected = discrete value ± 0.5 (see table below)
μ = np
σ = √(np(1−p))
Once you have the Z-score, find the area using the standard normal (Z) table, a TI-84 normalcdf, or stats.norm.cdf() in Python. For right-tail probabilities, subtract the table value from 1. For between-two-Z-scores problems, subtract the smaller area from the larger.
Continuity Correction ±0.5 — Complete Rules
The binomial distribution counts integers: 0, 1, 2, 3, …. The normal distribution covers every real number. When mapping integer k onto the continuous curve, you are treating a single point as a strip of width 1 — specifically from k − 0.5 to k + 0.5. The continuity correction expands each integer to that strip, so the continuous area matches the discrete bar.
Without the correction, you estimate the probability at a single point, which has measure zero on a continuous distribution. With it, you read the area of the strip that corresponds to the discrete count. For large n the difference is minor; near the np ≥ 5 threshold it can shift the result noticeably.
| Target Inequality | Continuity-Corrected Boundary | Plain English |
|---|---|---|
| P(X ≤ k) | P(Y ≤ k + 0.5) | k is included — extend rightward |
| P(X < k) | P(Y ≤ k − 0.5) | k is excluded — stop just before it |
| P(X ≥ k) | P(Y ≥ k − 0.5) | k is included — extend leftward |
| P(X > k) | P(Y ≥ k + 0.5) | k is excluded — start just after it |
| P(X = k) | P(k − 0.5 ≤ Y ≤ k + 0.5) | Exact value: area of the strip; needs two Z-scores |
P(X < 50) corrects to 49.5. P(X ≤ 50) corrects to 50.5. These differ by exactly one integer. For continuous distributions the two are identical; for discrete ones they are not. Always determine whether the original inequality is strict (< or >) or non-strict (≤ or ≥) before applying the correction.
Accuracy: With vs. Without Continuity Correction
The table below compares the normal approximation — with and without the ±0.5 correction — against the exact binomial probability for a selection of values with n = 100, p = 0.5.
| P(X ≤ k) | Exact Binomial | Normal (no correction) | Normal (with ±0.5) | Correction Improvement |
|---|---|---|---|---|
| P(X ≤ 45) | 0.1841 | 0.1587 | 0.1841 | +0.0254 |
| P(X ≤ 50) | 0.5398 | 0.5000 | 0.5398 | +0.0398 |
| P(X ≤ 55) | 0.8641 | 0.8413 | 0.8643 | +0.0230 |
| P(X ≤ 60) | 0.9824 | 0.9772 | 0.9826 | +0.0054 |
The continuity correction essentially eliminates the error at the center of the distribution (near the mean) and reduces it substantially elsewhere. For n = 100 and p = 0.5, the uncorrected approximation at P(X ≤ 50) is off by 4 percentage points; the corrected version matches exactly. There is no reason to skip the correction — it takes one arithmetic step and always improves accuracy.
How to Use Normal Approximation to the Binomial — 8 Steps
1: Identify distribution and parameters. 2: Check np ≥ 5 AND n(1−p) ≥ 5. 3: Compute μ = np. 4: Compute σ = √(np(1−p)). 5: Apply continuity correction ±0.5. 6: Compute Z = (xcorrected − μ) / σ. 7: Look up probability from normal table. 8: State conclusion.
Identify the Distribution and Extract Parameters
For binomial: record n (trials) and p (success probability). For Poisson: record λ. These determine whether the approximation is appropriate and what formulas to use.
Check Conditions: np ≥ 5 and n(1−p) ≥ 5
Compute np and n(1−p). Both must be at least 5 (or 10 if your course uses the stricter rule). If either fails, use binomcdf on a TI-84, pbinom() in R, or scipy.stats.binom.cdf() in Python instead.
Calculate the Mean: μ = np
Set μ = n × p. This is the center of the approximating normal curve. For Poisson approximation, μ = λ.
Calculate the Standard Deviation: σ = √(np(1−p))
Set σ = √(n × p × (1 − p)). Take the square root — plugging in the variance np(1−p) directly into the Z formula is the single most common arithmetic error. For Poisson, σ = √λ.
Apply the Continuity Correction ±0.5
Use the table above. For P(X ≤ k): boundary = k + 0.5. For P(X < k): boundary = k − 0.5. For P(X = k): two boundaries, k − 0.5 and k + 0.5.
Compute the Z-Score
Z = (xcorrected − μ) / σ. Positive Z = target is above the mean; negative = below. Carry at least three decimal places to avoid rounding errors when looking up the table.
Find the Probability from the Normal Table
Use the Z-table to find the area to the left of your Z-score. For right-tail: subtract from 1. For between two values: subtract the smaller area from the larger. Alternatively, use the normal approximation calculator to run this automatically.
Interpret the Result
Express the answer in the language of the original problem. Limit to four significant figures — the approximation itself introduces error, so false precision is misleading. Compare to the exact binomial result when accuracy is critical.
Worked Examples
Each example follows the 8-step procedure with full arithmetic shown. Z-score lookups use the four-decimal-place table from the NIST/SEMATECH Engineering Statistics Handbook and Penn State STAT 414 course material.
Example 1 — Airline No-Show Problem: P(X < 15)
An airline finds that 10% of booked passengers do not show up. The plane holds 200 passengers. What is the probability that fewer than 15 passengers fail to show up?
Distribution: Binomial, n = 200, p = 0.10
Check np ≥ 5 and nq ≥ 5: np = 200 × 0.10 = 20 ≥ 5 ✓ nq = 200 × 0.90 = 180 ≥ 5 ✓ — valid
Mean μ = np: μ = 200 × 0.10 = 20
Std dev σ = √(np(1-p)): σ = √(200 × 0.10 × 0.90) = √18 ≈ 4.243
Continuity correction ±0.5: P(X < 15) — k = 15 excluded → boundary = 15 − 0.5 = 14.5
Z-score: Z = (14.5 − 20) / 4.243 = −5.5 / 4.243 ≈ −1.30
Probability: Z-table area for Z = −1.30 → P ≈ 0.0968
Interpretation: Approximately 9.68% probability that fewer than 15 passengers fail to show up.
✅ Answer: P(X < 15) ≈ 0.0968 (9.68%)
Example 2 — Exact Single Value: P(X = 45) from 100 Coin Flips
A fair coin is flipped 100 times. What is the probability of getting exactly 45 heads?
Distribution: Binomial, n = 100, p = 0.50
Check np ≥ 5 and nq ≥ 5: np = 50 ≥ 5 ✓ nq = 50 ≥ 5 ✓
Mean μ = np: μ = 100 × 0.50 = 50
Std dev σ = √(np(1-p)): σ = √(100 × 0.50 × 0.50) = √25 = 5
Continuity correction ±0.5: P(X = 45) expands to the strip P(44.5 ≤ Y ≤ 45.5)
Two Z-scores:
Zlower = (44.5 − 50) / 5 = −1.10
Zupper = (45.5 − 50) / 5 = −0.90
Probability:
Table for Z = −0.90 → 0.1841 Table for Z = −1.10 → 0.1357
P = 0.1841 − 0.1357 = 0.0484
Interpretation: Probability of exactly 45 heads ≈ 4.84%. Exact: dbinom(45, 100, 0.5) = 0.0485 — error < 0.01%.
✅ Answer: P(X = 45) ≈ 0.0484 (4.84%). Exact: 0.0485 — essentially perfect match with the continuity correction applied.
Example 3 — Poisson to Normal: P(X > 22)
A hospital emergency room receives an average of 18 patients per hour. What is the probability that more than 22 patients arrive in a given hour?
Distribution: Poisson, λ = 18
Check λ ≥ 10: λ = 18 ≥ 10 ✓ — valid
Mean: μ = λ = 18
Std dev: σ = √λ = √18 ≈ 4.243
Continuity correction: P(X > 22) excludes 22 → boundary = 22 + 0.5 = 22.5
Z-score: Z = (22.5 − 18) / 4.243 = 4.5 / 4.243 ≈ 1.06
Probability: Table for Z = 1.06 → 0.8554. Right tail: 1 − 0.8554 = 0.1446
Interpretation: Approximately 14.5% probability that more than 22 patients arrive in a given hour.
✅ Answer: P(X > 22) ≈ 0.1446 (14.46%)
Example 4 — Chi-Square Normal Approximation
The chi-square distribution with k degrees of freedom can be approximated by a normal distribution when k is large. What is the Z-score form of this approximation?
For a chi-square random variable X with k degrees of freedom, the standardized approximation is:
X = chi-square random variable
k = degrees of freedom
Valid for large k (typically k ≥ 30)
Distribution: Chi-square, k degrees of freedom
Condition: k must be large — typically k ≥ 30. For smaller k, use the chi-square table directly.
Mean: μ = k (the mean of χ²(k) equals k)
Std dev: σ = √(2k) (the variance of χ²(k) equals 2k)
No continuity correction: The chi-square is treated as continuous, so no ±0.5 adjustment applies.
Z-score: Z = (x − k) / √(2k)
Example: For k = 50 and x = 65: Z = (65 − 50) / √100 = 15 / 10 = 1.50 → P ≈ 0.0668
✅ Formula: Z = (X − k) / √(2k) converges to N(0,1) as k → ∞. Use the chi-square table for k < 30.
Normal Approximation to the Hypergeometric Distribution
The hypergeometric distribution (sampling without replacement from a finite population of size N, K successes, n draws) can also be approximated by a normal distribution when the sample size n is large relative to the population and both expected successes and failures are at least 5. The mean is μ = nK/N and the variance is σ² = nK(N−K)(N−n) / [N²(N−1)]. The continuity correction ±0.5 applies just as with the binomial.
A simpler path: when n/N < 0.05 (the 5% condition), the hypergeometric is well approximated by the binomial with p = K/N, and then the binomial normal approximation applies directly. See the binomial distribution guide for details on this substitution.
Normal Approximation Calculator
Enter the binomial parameters, select the inequality type, and click Calculate. The calculator shows every intermediate step: np ≥ 5 conditions check, mean μ = np, standard deviation σ = √(np(1−p)), continuity-corrected boundary, Z-score, and final probability.
For a standalone tool you can bookmark, see the full Normal Approximation Calculator and the related Binomial Distribution Calculator.
Normal Approximation Calculator (Binomial) — Conditions np ≥ 5 and n(1−p) ≥ 5
Method Comparison: Exact Binomial vs. Normal Approximation vs. Poisson
| Feature | Exact Binomial | Normal Approximation | Poisson Method |
|---|---|---|---|
| Distribution type | Discrete | Continuous | Discrete |
| Formula complexity | High (factorials) | Low (Z-score only) | Moderate |
| Best for | Small n (< 30) or extreme p | Large n, moderate p (np ≥ 5) | Large n, very small p |
| Conditions | None required | np ≥ 5 AND n(1−p) ≥ 5 | λ ≥ 10 |
| Continuity correction? | Not applicable | Yes, ±0.5 | Yes, ±0.5 |
| Accuracy | Exact | Good for large n | Good when p is tiny |
| Hand-calculation feasible? | Only for small n | Yes | Moderate |
For a deeper comparison of the normal and t-distributions, see the T-distribution vs. normal distribution guide. Coverage of the empirical rule is in the empirical rule article. For hypothesis testing for proportions, the same np ≥ 5 conditions apply when using the Z-test for a proportion.
Common Mistakes to Avoid
Applying the normal approximation when np < 5 or n(1−p) < 5 produces unreliable results. Always verify both conditions first. If either fails, use the exact binomial.
The Z denominator needs σ = √(np(1−p)), not the variance np(1−p) itself. Forgetting the square root inflates the denominator and sharply understates the Z magnitude — producing a probability that looks reasonable but is wrong.
P(X < 50) corrects to k − 0.5 = 49.5. P(X ≤ 50) corrects to k + 0.5 = 50.5. These yield different Z-scores and different final probabilities. Check strict vs. non-strict before adjusting.
As shown in the accuracy table above, omitting the correction can introduce 4+ percentage-point errors near the distribution center. It takes one arithmetic step and always improves the result — always apply it.
Python and R Implementation
Software eliminates arithmetic risk. Both examples compute the approximated probability and the exact binomial result side by side. Penn State STAT 414 covers the theoretical derivation in more depth at online.stat.psu.edu/stat414/lesson/27.
Python (SciPy)
import numpy as np import scipy.stats as stats n, p, k = 100, 0.4, 35 # Step 1–2: Check conditions np >= 5 and n(1-p) >= 5 np_val = n * p nq_val = n * (1 - p) print(f"np = {np_val:.1f}, n(1-p) = {nq_val:.1f}") assert np_val >= 5 and nq_val >= 5, "Conditions np≥5 and n(1-p)≥5 not met" # Steps 3–4: Mean mu = np and sigma = sqrt(np(1-p)) mu = n * p sigma = np.sqrt(n * p * (1 - p)) # Step 5: Continuity correction for P(X <= k) k_corrected = k + 0.5 # Step 6–7: Z-score and probability z = (k_corrected - mu) / sigma prob_approx = stats.norm.cdf(z) # Exact binomial for comparison prob_exact = stats.binom.cdf(k, n, p) print(f"mu = {mu}, sigma = {sigma:.4f}, Z = {z:.4f}") print(f"Approximated P(X ≤ {k}) = {prob_approx:.4f}") print(f"Exact P(X ≤ {k}) = {prob_exact:.4f}")
R
n <- 100 p <- 0.4 k <- 35 # Step 1–2: Check conditions np >= 5 and n(1-p) >= 5 np_val <- n * p nq_val <- n * (1 - p) cat("np =", np_val, " nq =", nq_val, "\n") stopifnot(np_val >= 5, nq_val >= 5) # Steps 3–4: mu = np and sigma = sqrt(np(1-p)) mu <- n * p sigma <- sqrt(n * p * (1 - p)) # Step 5–7: Continuity correction and Z-score for P(X <= k) k_corrected <- k + 0.5 prob_approx <- pnorm(k_corrected, mean = mu, sd = sigma) # Exact binomial prob_exact <- pbinom(k, size = n, prob = p) cat("mu =", mu, " sigma =", round(sigma, 4), "\n") cat("Approximated:", round(prob_approx, 4), "\n") cat("Exact: ", round(prob_exact, 4), "\n")
Normal Approximation and the Sampling Distribution of p̂
When working with sample proportions, the same normal approximation logic applies. For a sample of size n drawn from a population with true proportion p, the sample proportion p̂ = X/n has an approximately normal sampling distribution when np ≥ 10 and n(1−p) ≥ 10 (most applied courses use the stricter threshold here).
μp̂ = mean of the p̂ distribution = p
σp̂ = standard error of p̂
Condition: np ≥ 10 AND n(1−p) ≥ 10
The Z-score for a sample proportion is Z = (p̂ − p) / √(p(1−p)/n). This is the test statistic used in one-proportion Z-tests and in constructing confidence intervals for proportions.
Related Concepts
Binomial Distribution
The exact distribution that normal approximation replaces. Covers the PMF, mean μ=np, variance σ²=np(1-p), and cumulative probability tables.
Normal Distribution
Properties of the bell curve, the standard normal (Z) distribution, and how to read the Z-table — the foundation of the approximation method.
Z-Score
How to standardize values and interpret their position on the normal distribution — the final computational step in every normal approximation problem.
Central Limit Theorem
The theoretical result that explains why normal approximation works: sums of independent random variables converge to normal as n grows.
Sample Proportions
The sampling distribution of p̂ also uses normal approximation, with the stricter np ≥ 10 condition in most applied courses.
Hypothesis Testing
Z-tests for proportions rely directly on normal approximation to justify the test statistic's distribution under the null hypothesis.
Poisson Distribution
When λ ≥ 10, the Poisson can itself be approximated by a normal. This is Example 3 above, worked through step by step.
Normal Approximation Calculator
The standalone calculator — bookmark it for quick computation of P(X ≤ k), P(X < k), P(X ≥ k), P(X > k), and P(X = k) with continuity correction.
FAQs
Normal approximation to the binomial distribution is a method that uses the continuous normal distribution with mean μ = np and standard deviation σ = √(np(1−p)) to estimate probabilities for the discrete binomial distribution. It applies a continuity correction of ±0.5 to improve accuracy and is valid when both np ≥ 5 and n(1−p) ≥ 5.
The conditions np ≥ 5 and n(1−p) ≥ 5 (also written nq ≥ 5 where q = 1 − p) ensure the binomial distribution is sufficiently symmetric that a normal curve approximates it well. They check that neither the success nor failure tail is too sparse. If either condition fails, the distribution is too skewed for the approximation to be reliable. The NIST/SEMATECH Handbook and most AP Statistics and A-Level Maths courses use these thresholds. Some applied courses require the stricter np ≥ 10 and n(1−p) ≥ 10.
For a binomial B(n, p): calculate mean μ = np and standard deviation σ = √(np(1−p)). Apply the continuity correction (±0.5 depending on the inequality direction), then Z = (xcorrected − μ) / σ. Look up Z in the standard normal table to find the probability. For Poisson(λ): μ = λ and σ = √λ, same Z formula.
The continuity correction is needed because the binomial distribution is discrete (integer values only) while the normal is continuous. Mapping integer k onto the continuous curve, each bar in the histogram actually spans from k − 0.5 to k + 0.5. The correction expands each integer to that strip so the continuous area matches the discrete probability. Without it, you read the probability at a single point — which has measure zero for a continuous distribution — and the result is less accurate, especially for small n.
When the Poisson rate λ is large (λ ≥ 10 standard, λ ≥ 20 conservative), the Poisson(λ) can be approximated by N(μ = λ, σ² = λ). Apply continuity correction ±0.5 exactly as with the binomial, then Z = (xcorrected − λ) / √λ. The approximation improves as λ increases because the Poisson becomes more symmetric around its mean.
Accuracy improves with larger n and with p closer to 0.5. With the continuity correction, the approximation matches the exact binomial to within 4 decimal places for n = 100 and p = 0.5 (see the accuracy table in this article). Without the correction, errors of several percentage points can appear near the distribution center. Near the np ≥ 5 threshold (e.g., n = 50 and p = 0.1, giving np = 5 exactly), the approximation should be verified against the exact binomial before being used in applied work.
nq ≥ 5 and n(1−p) ≥ 5 are identical — they are different notations for the same condition. In the notation using q, the failure probability is defined as q = 1 − p, so nq = n(1−p). UK A-Level and engineering statistics texts often use the q notation. US AP Statistics and most college textbooks write n(1−p). Both mean the expected number of failures must be at least 5.
Yes. Normal approximation is used in quality control (sampling inspection), polling (margin of error for proportions), medical research (clinical trial power calculations), and A/B testing (Z-tests for proportions). Any time a Z-test for proportions is run — for example, testing whether a new drug success rate differs from a baseline — the test statistic relies on the normal approximation to the binomial, with the np ≥ 10 condition justifying the Z distribution.