Free · No sign-up · Runs offline
The p-value calculator that also checks your interpretation.
Convert a Z, t, χ², F, or r statistic into a p-value instantly — with a live distribution chart, an exact result that never rounds to zero, and a plain-English reading of what your number does and does not prove.
- Validated against SciPy to 1e-13
- Results as you type
- 100% in your browser
Enter a test statistic to begin
Your p-value, a plain-English reading, and a shaded distribution chart appear here instantly.
Results
P-value
What this means
What it does not mean
Report it (APA)
Test statistic to p-value: what the conversion does
Most statistical software hands you a test statistic and stops. You are left holding a t of 2.31, an F of 4.07, a χ² of 9.14 — and what the assignment, the journal, or your own decision actually needs is a p-value. Converting a test statistic to a p-value is the step in between, and it is one operation: measure the area in the tail of the distribution that statistic would follow if the null hypothesis were true.
That is exactly what the tool above is: a test statistic to p-value calculator. Pick the statistic you have, type the number, and the tail area is computed and shaded as you type. It is a p-value calculator online, free, with no sign-up and no upload — everything runs inside your browser, so the numbers you paste never leave your machine.
A statistic is only half the input
A test statistic on its own does not determine a p-value. The same number means different things depending on which distribution produced it, which is why the calculator asks for degrees of freedom for everything except Z. Find your statistic here and you have the right tool and the right extra input:
| You have | Distribution | Also needed |
|---|---|---|
| Z or z-score | Standard normal | Nothing — Z to p-value |
| t | Student's t | df — t to p-value |
| χ² | Chi-square | df — χ² to p-value |
| F | F | Two df — F to p-value |
| r | Pearson r | n — r to p-value |
Each converter page runs the same engine as the calculator above, with worked examples and the reporting conventions for that particular statistic.
Comparing two groups
The most common reason to want a p-value is a comparison of two groups, and which test you need depends on what you measured rather than on how the groups were formed. If you are comparing averages — recovery times, scores, revenue per user — that is a t-test. If you are comparing rates — conversions, clicks, pass and fail counts — that is a two-proportion Z-test.
Either way you can skip the statistic entirely. A p-value calculator for two groups that takes the raw numbers is more direct than computing t yourself and converting it: paste your two samples into the t-test calculator, or your conversions and visitors into the A/B test calculator, and you get the p-value together with the effect size and a confidence interval on the difference — the two numbers that tell you whether the result is worth acting on.
What it takes to calculate a p-value
To calculate a p-value by hand you need a quantile from a printed table, and the tables stop at a handful of conventional thresholds — which is why hand calculation yields "p < 0.05" rather than a number. Software computes the tail area directly and gives you the exact value, which is what journals now expect you to report.
There is a subtlety in that computation worth knowing about, because it is where many calculators quietly fail. The obvious way to get a tail area is 1 − CDF(x), and in floating-point arithmetic that expression collapses to exactly zero once the statistic gets large — which is why competing tools print p = 0.000. This one uses a separate survival function, so a p-value of 3 × 10⁻⁴⁰ is reported as 3 × 10⁻⁴⁰. The methodology page shows the algorithms and the SciPy comparison table; if you would rather look the value up, the p-value tables are generated from the same functions.
Built to be correct, not just fast.
Most p-value calculators are thin wrappers around a CDF. Four things here are different.
Never reports p = 0.000
Tail probabilities use a survival function, not 1 − CDF. A p-value of 3 × 10⁻⁴⁰ is reported as 3 × 10⁻⁴⁰, not rounded away to zero.
Tells you what it means
Every result comes with a plain-English reading and the specific misinterpretation that result invites — the part textbooks skip.
Validated against SciPy
Relative error below 1e-13 across all five distributions. The reference values and the test suite are public.
Your data never leaves
Everything computes in your browser. Nothing is uploaded, logged, or stored — safe for clinical and commercial data.
Have raw data instead of a statistic?
If you are holding two columns from a spreadsheet, or conversions and visitors from an experiment, you do not need to compute a test statistic first. Paste the numbers and get the p-value, the effect size, and a confidence interval together.
Which test do I need?
- Two groups
- Comparing average values → t-test
- Two rates
- Conversions, clicks, pass/fail → two-proportion Z-test
- Categories
- A contingency table → chi-square
- 3+ groups
- One-way ANOVA → F-test
- Relationship
- Do two variables move together → correlation
How to use this calculator
- Pick your test statistic. Use the pills at the top of the calculator. If your software gave you a number labelled t, choose T-score; if it gave you Z, choose Z-score, and so on.
- Enter the statistic. Type the value exactly as reported, including the minus sign if it is negative. The result updates as you type.
- Add degrees of freedom if asked. The t, χ², and F tests need this; Z does not. For a one-sample t-test, df is your sample size minus 1.
- Choose your hypothesis direction. Two-tailed is the default and the right answer for most research. Chi-square and F tests are always right-tailed, so the calculator locks that choice for you.
- Read the interpretation, not just the number. The panel underneath the chart tells you what your result supports and, just as importantly, what it does not.
What a p-value actually measures
A p-value answers one narrow question: if the null hypothesis were true, how often would I see data at least this extreme? It is a statement about data, conditioned on a hypothesis — not a statement about the hypothesis itself. That asymmetry is the source of almost every mistake made with p-values.
The shaded region on the chart above is a literal picture of this. The curve is the distribution your statistic would follow if the null hypothesis were true. The shaded area is the slice of outcomes at least as extreme as what you observed. The p-value is that area — nothing more and nothing less.
Because the calculation assumes the null hypothesis, it cannot tell you the probability that the null hypothesis is true. A p-value of 0.05 is routinely read as "a 5% chance there is no real effect." That reading is wrong, and not by a small margin: given a realistic prior, the actual probability the null is true after seeing p = 0.05 is often 30% or higher. Our guide to interpreting p-values works through why.
Reading the number you get
Treating 0.05 as a bright line — significant on one side, nothing on the other — throws away most of the information in your result. p = 0.049 and p = 0.051 are essentially the same evidence. It is more honest to read a p-value as a continuous measure of surprise:
| P-value | Reasonable reading |
|---|---|
| p > 0.10 | Little to no evidence against the null hypothesis |
| 0.05 – 0.10 | Weak, suggestive evidence — worth another look, not a conclusion |
| 0.01 – 0.05 | Moderate evidence against the null hypothesis |
| 0.001 – 0.01 | Strong evidence against the null hypothesis |
| p < 0.001 | Very strong evidence against the null hypothesis |
Whatever the p-value, report it alongside an effect size and a confidence interval. A p-value tells you whether an effect is detectable; only the effect size tells you whether it is worth caring about. With a large enough sample, a difference far too small to matter will still clear any threshold you pick.
Frequently asked questions
What is a p-value?
A p-value is the probability of observing data at least as extreme as yours, assuming the null hypothesis is true. It is a measure of how surprising your data would be in a world where the effect you are testing for does not exist. A small p-value means your data would be unusual under that assumption, which counts as evidence against it.
What p-value is considered statistically significant?
By convention, a p-value below 0.05 is called statistically significant, but that threshold is a social convention rather than a law of nature. Fields such as particle physics use 0.0000003, while exploratory research may accept 0.10. Choose your significance level before you look at your data, and report the exact p-value rather than only whether it cleared the line.
Does a p-value tell me the probability that my hypothesis is true?
No, and this is the single most common misinterpretation. The p-value is computed by assuming the null hypothesis is true, so it cannot also tell you the probability that it is true. A p-value of 0.05 does not mean there is a 5% chance the null hypothesis holds; the realistic figure is often 30% or higher, depending on how plausible the hypothesis was to begin with.
Should I use a one-tailed or two-tailed test?
Use a two-tailed test unless you have a strong reason, decided before collecting data, to care about only one direction. Two-tailed is the default in most research because it detects an effect in either direction. Switching to one-tailed after seeing your results halves your p-value without any new evidence, which is a form of p-hacking.
What does a non-significant p-value mean?
It means your data are not surprising enough under the null hypothesis to reject it. It does not prove there is no effect. A small sample can easily miss a real effect, so "not significant" often means "inconclusive" rather than "no difference." Check the confidence interval: if it includes both trivial and large effects, your study simply could not tell them apart.
Is this p-value calculator accurate?
Yes. Every distribution is implemented from published numerical methods and validated against SciPy to a relative error below 1e-13. Crucially, tail probabilities are computed with a survival function rather than 1 minus the CDF, so very small p-values are reported exactly instead of collapsing to zero. The full method and the validation table are on our methodology page.
About this site
Who maintains it, how to reach us, and the terms it is offered under.
- About UsWho built this, the principles it is held to, and what it deliberately will not do.
- Contact UsReport a number that disagrees with R or SciPy, request a test, or flag unclear wording.
- Privacy PolicyWhy "your data never leaves the browser" is a property of how the site is built, not a promise.
- Terms & ConditionsFree for academic and commercial use, provided as-is, and not a substitute for a statistician.