True coverage of a nominal 95.0000% interval at n = 30
95.194%
Looks close. The two tails are 1.403% and 3.402% against a nominal 2.50% each.
The lower tail is 0.561× its nominal size; the upper is 1.361×. They are wrong in opposite directions, so they partly cancel in the two-sided figure above. A one-sided test at this n would run at 3.40% instead of 2.50% — a 36% inflation in false positives that the coverage number never shows.
Population skewness
2.0000
Skewness of the mean
0.3651
falls as 1/√n
n for honest tails
135
both within 20% of nominal
n for honest coverage
2
two-sided within 0.2 pp
Judged on two-sided coverage this population passes at n = 2. Judged on its tails it needs n = 135 — 67.500 times as many observations. That gap is the whole problem with “n > 30”. The rule is not so much too small as measured against the wrong thing: coverage is the one statistic in which the two errors cancel, so it is the one statistic that cannot detect them.
What this tool shows
“n > 30” is checked against the one number that cannot detect the problem. On an exponential population at n = 2, a nominal 95% interval covers 95.11% — apparently perfect — while one tail carries exactly 0% and the other 4.89%. The errors cancel in the coverage figure.
True coverage of a nominal interval at any n
Each tail separately, where the error actually lives
Three populations with exact closed-form sampling distributions
The n that fixes the tails, versus the n that fixes coverage
Skewness of the sample mean, falling as 1/√n
Why a Bernoulli interval can reach below zero
Exact, not simulated Tails shown separately Three parent shapes Closed-form sampling laws
Exponential parent: coverage passes at n = 2, the tails need n = 135.
Updated 8 September 2026 · Works in any browser, no installation
The central limit theorem says the sample mean tends to a normal distribution as n grows — whatever the population looks like. It is true, and it is a statement about a limit. What it does not say is how big n must be for the approximation to be good enough at the point in the tail you are using it.
At a glance
Formula shown
The sample mean has mean μ and standard error σ/√n, and approaches N(μ, σ²/n). Convergence is governed by skewness: the sample mean’s skewness is γ/√n, so a population with γ = 2 needs four times the sample of one with γ = 1 to reach the same accuracy. The leading error term in a tail probability falls as 1/√n, not 1/n.
Scenario support
Deciding whether a t-test or z-interval is safe on skewed data; income, duration and count data; A/B tests on low-rate conversions; quality control with small subgroups; any confidence interval built on a normal approximation.
Educational estimate
Planning support from the values you enter — not professional advice.
Why “n > 30” passes a test it should fail
The rule is not simply too small. It is checked against the wrong statistic, and the wrong statistic is constructed so that the two errors cancel.
Take an exponential population — the standard model for waiting times, and no more skewed than plenty of real data. Build a nominal 95% interval at n = 30. Its true coverage is 95.19%. On that evidence the approximation looks excellent and the rule looks vindicated.
Now look at the tails separately. The lower tail carries 1.40% and the upper 3.40%, against a nominal 2.50% each. One is 44% too small, the other 36% too large. They are wrong in opposite directions, so their sum is nearly right — and their sum is the coverage figure everyone quotes.
The extreme case makes the mechanism unmistakable. At n = 2 on the same population, coverage reads 95.11%. The lower tail is exactly zero, because the interval’s lower limit sits below zero and a mean of exponential values can never go there. The interval is one-sided in fact while being quoted as two-sided, and the coverage number registers no complaint at all.
The two standards give answers 67 times apart. Requiring only that two-sided coverage sit within 0.2 points of nominal, this population passes at n = 2. Requiring both tails within 20% of nominal, it needs n = 135. For a chi-square population with one degree of freedom — a squared normal, skewness 2.83 — it needs n = 271.
This is not an edge case, it is where hypothesis tests live. A one-sided test uses one tail by definition. At n = 30 on an exponential population, a test run at a nominal 5% really rejects at 5.90% — an 18% inflation in false positives, invisible to every two-sided check.
Why this page computes instead of simulating
Nearly every central-limit demonstration is a simulator: draw a few thousand samples, plot the histogram of means, observe that it looks bell-shaped. As an illustration that is fine. As evidence it cannot work, and the reason is worth stating precisely.
The effect is the same size as the noise. The quantity that matters here is a tail probability sitting at 3.4% instead of 2.5% — a gap of 0.9 percentage points. Estimate a 3% tail from 10,000 replications and the standard error is about 0.17 points, so a single run scatters by half the effect. Watching a histogram “look normal” is even less informative: the body converges quickly and the tails are where the error lives, and a histogram shows the body.
So the three populations offered here were chosen for a specific property: the distribution of their sample mean has a closed form.
A sum of n exponentials is exactly Gamma(n). A sum of n chi-square(1) values is exactly chi-square(n). A sum of n Bernoulli draws is exactly Binomial(n, p). Each evaluates through the same regularised incomplete gamma function the rest of this site’s p-value machinery uses, so every figure on the page is exact to near machine precision and identical on every load.
The cost is honest: you cannot type in your own data. The benefit is that the numbers do not wobble, which for a claim this fine-grained is the difference between an argument and an impression.
Skewness sets the rate, and it is slower than people expect
There is no universal n, and there was never going to be one, because the population’s shape enters the error term directly.
The sample mean’s skewness is the population’s divided by √n. Exactly. An exponential population has skewness 2, so at n = 30 the sample mean still carries skewness 0.365 — visibly lopsided. To halve that you need four times the sample, because the improvement goes as √n rather than n.
That square root is why the rule of thumb feels stable and is not. Moving from n = 30 to n = 120 buys a factor of two. Getting a factor of ten costs a hundredfold increase. There is no sample size at which skewness stops mattering — only sizes at which it has shrunk below what you care about, and that threshold depends on how far into the tail you are working.
The direction of the error is predictable, which is genuinely useful. For a right-skewed population the sample mean is right-skewed too, so the upper tail is fatter than normal theory allows and the lower is thinner. Right-skewed data therefore produces more false positives than nominal when testing for an increase, and fewer when testing for a decrease. If you know your data is right-skewed you already know which direction your p-values are wrong in.
There is exactly one place where the skewness correction disappears, and it is worth knowing about because it is a trap. The leading error term in the normal approximation carries a factor of (z² − 1), which is zero at z = 1. So at precisely one standard error from the mean, a skewed population’s error falls at the fast 1/n rate instead of the slow 1/√n one — verified here: raising n a hundredfold shrinks the error about tenfold at z = 0.5, 1.5, 1.96 and 2.5, and about ninetyfold at z = 1. Test the approximation at one standard error and it will look far better behaved than it is anywhere you would actually use it.
Heavy tails are a separate and worse problem. A population with infinite variance — a Cauchy is the standard example — has no central limit theorem at all. The mean of a million Cauchy draws has exactly the same distribution as a single draw. Averaging accomplishes nothing, at any n.
The discrete case fails differently
Select the Bernoulli population and set p to 0.1 with n = 30. The behaviour is not a milder version of the skewed case; it is a different failure.
The lower tail is exactly zero. The interval’s lower limit lands at −0.007 — below zero, where a proportion cannot go. So the interval covers 97.4% rather than 95%, and it does so by being wrong: it is spending part of its width on impossible values.
A discrete sampling distribution cannot hit a continuous nominal level at any n. The achievable coverages form a staircase, and 95% generally falls between two steps. The interval must overshoot or undershoot; it cannot land. This never fully goes away, it only gets finer.
The usual rule here is np ≥ 10 and n(1 − p) ≥ 10, which is a better rule than “n > 30” because it responds to p. At p = 0.1 it demands n ≥ 100 — and the exact tail calculation broadly agrees, which is a rare case of a rule of thumb holding up when checked.
For proportions specifically there is a better answer than making n larger: use an interval that was not built on this approximation. The Wilson interval respects the 0–1 boundary by construction, and the beta posterior gives an exact answer at any n including zero successes, where the normal approximation degenerates completely.
What the theorem does and does not promise
Four clarifications, each correcting a claim that circulates as though it were part of the theorem.
It is about the mean, not the data. Averaging 500 incomes does not make incomes normal. The sample mean approaches normality; the population keeps its shape forever. A large sample makes the histogram of your data more clearly non-normal, not less — there is simply more of it to see.
It needs finite variance. Not usually a real constraint, but the exceptions are catastrophic rather than gradual, and they include some financial return models.
It needs independence, and this fails constantly in practice. Repeated measures on the same subjects, time series, clustered sampling, students within a classroom — correlated observations carry less information than their count suggests, so the true standard error is larger than σ/√n. This inflates false positives regardless of n, and no sample size fixes it. Of everything on this page, it is the assumption most often violated and the least often checked.
It says nothing about a single sample. The theorem describes the distribution of means across hypothetical repetitions. Your one interval either contains the parameter or does not. That is precisely the gap a credible interval closes and a confidence interval does not, and it is the most common misreading in applied statistics.
None of this makes the theorem less remarkable — that the sampling distribution of a mean has the same limiting shape regardless of what it came from is why so much of statistics works at all. It just means the limit is a promise about infinity, and your n is finite.
Sources and methodology
References for the convergence rate and the exact sampling laws.
Method. No simulation is used anywhere on this page. Each population was chosen because its sample mean has a closed-form distribution — Gamma(n) for the exponential, chi-square(n) for the chi-square, Binomial(n, p) for the Bernoulli — so tail probabilities come from the regularised incomplete gamma function and an exact discrete sum rather than from replication. The density curve is differentiated from that exact CDF, which is why it stays smooth at every n instead of getting noisier as the tail thins. The suite asserts the headline asymmetry directly: that the exponential parent’s tails at n = 30 are 1.403% and 3.402% against a nominal 2.5% each, that two-sided coverage at n = 2 reads 95.11% while the lower tail is identically zero, and that the sample mean’s skewness equals the population’s divided by √n across a grid. That engine is verified on every change against 54 assertions. The count and the per-case breakdown are published on the formula verification page.
Related calculators
Where this goes next:
Confidence IntervalIntervals for a mean or a proportion using t at every sample size and Wilson rather than the textbook Wald formula — with both methods shown, because Wald returns [0,0] at zero successes.
Sample SizeResponses needed for a target margin of error, with the finite-population correction and a table of the whole cost curve — because n scales with 1/margin², so the last point of precision costs more than the first ten.
Standard ErrorStandard error of a mean or proportion, printed beside the standard deviation it gets confused with — the ratio is always √n, and at n = 50 that is a factor of seven.
Normal DistributionProbabilities under a normal curve in all four directions with the region shaded — and the empirical rule given exactly, because two standard deviations is 95.45% and the 95% everyone quotes sits at 1.96σ.
t-testOne-sample, two-sample and paired t-tests defaulting to Welch, with Student's pooled version printed beside it — and a warning when the two disagree on the verdict.
p-valueA p-value from a t or z statistic, one- or two-tailed — with a panel that holds an effect fixed and grows the sample, so you can watch significance appear from nothing but n.
An educational tool. The exact figures apply to the three populations offered; real data is not exactly any of them, and independence — the assumption most often violated in practice — cannot be repaired by increasing n.
Published a central limit theorem tool that computes exact sampling distributions instead of simulating them. Each population was chosen because the distribution of its sample mean has a closed form, so the figures do not move between page loads — necessary because the effect being measured is the same size as Monte Carlo noise at any replication count a browser can afford.
Shows why 'n > 30' passes a test it should fail: on an exponential population at n = 30 the two-sided coverage is a healthy 95.19% while the tails carry 1.40% and 3.40% against a nominal 2.50% each. The errors cancel in exactly the statistic people check.
At n = 2 the coverage still reads 95.11% while the lower tail is identically zero, because the interval reaches below a value the population can never produce. Judged on coverage this population passes at n = 2; judged on its tails it needs n = 135.
Add this calculator to your site
Responsive embed — and private: nothing your visitors type leaves their browser.