Statistical Calculator
100% LocalCalculate mean, median, mode, standard deviation, quartiles, skewness, and more.
Separate with commas, spaces, semicolons, or newlines
Count
15
Sum
95
Mean
6.3333
Median
7
Min
1
Max
13
Range
12
Mode
7
Std Dev (sample)
3.5389
Variance (sample)
12.5238
Std Dev (pop)
3.4189
Variance (pop)
11.6889
Coeff. of Variation
55.88%
1
Min
3
Q1
7
Median
8
Q3
13
Max
IQR: 5
Skewness
0.1955
Symmetric
Excess Kurtosis
-0.7147
Platykurtic
Geometric Mean
5.1731
Harmonic Mean
3.8635
Enter numbers separated by commas, spaces, or new lines.
What is Statistical Calculator?
Frequently Asked Questions
Technical Deep Dive
Statistical Calculator
Enter a list of numbers to compute a full descriptive statistics report: count, sum, mean, median, mode, min, max, range, sample and population variance/standard deviation, quartiles (Q1, Q3, IQR), skewness, excess kurtosis, geometric mean, harmonic mean, and coefficient of variation. Includes a frequency histogram visualization.
Two-Way Conversion
Convert in either direction with consistent semantics on the round-trip.
Type-Faithful
Preserves nulls, numbers, booleans, and structure, no string-soup translation.
Production-Sized
Built to handle real-world payloads, not just textbook examples.
Descriptive Statistics: Beyond the Average
If you've ever reported "the average response time was 145 ms" you've used descriptive statistics, but probably hidden the most important information. The average can be misleading when distributions are skewed (most real-world data is), when outliers are present (often), or when the spread matters more than the center (frequently). A proper descriptive summary uses several numbers, center, spread, shape, to convey what a dataset actually looks like. This tool computes all of them at once.
Measures of Center
Arithmetic Mean (Average)
The most familiar summary. Uses every value, sensitive to outliers.
Best for: roughly symmetric, outlier-free data. Foundation for variance, standard deviation, and many statistical tests.
Worst for: skewed data, data with outliers. A single billionaire pushes mean income way above what most people earn.
Median
The middle value when data is sorted (or average of two middles if even count). Half above, half below.
Best for: skewed data, outliers. The "typical" value.
Example: salaries at a startup with a CEO making $1M and 9 engineers making $100K each. Mean = $190K. Median = $100K. The median is what most people earn.
Mode
The most frequent value. For continuous data, often binned (the most common bin).
Best for: categorical or discrete data. Less useful for continuous.
For continuous data with no exact duplicates, mode is often undefined or trivially "every value occurs once." Frequency histograms reveal the "modal region" instead.
Geometric Mean
For multiplicative quantities. Use for:
- Compound growth rates: a portfolio with returns +50%, -50% has GM ≈ -13.4% (you end with 75% of what you started).
- Ratios that span orders of magnitude: averaging speedup factors in benchmarks.
- Log-normally distributed data: anything whose log is normally distributed.
Harmonic Mean
For rates when the denominator is fixed. Use for:
- Average speed over fixed distances.
- F1 score = harmonic mean of precision and recall.
- Parallel resistance in circuits.
Harmonic ≤ geometric ≤ arithmetic (for positive numbers).
Measures of Spread
Range
Simplest. Extremely sensitive to outliers.
Variance
Squared deviations from the mean. Units are squared (squared seconds, squared dollars), usually not interpreted directly.
The n-1 in sample variance (Bessel's correction) compensates for the fact that the sample mean is itself estimated from the data, slightly biasing variance downward.
Standard Deviation
Square root of variance, back in original units. The most common measure of spread.
For approximately normal data: ~68% within 1σ of mean, ~95% within 2σ, ~99.7% within 3σ. These rules don't hold for skewed or heavy-tailed data, where 2σ might contain anywhere from 80% to 100% depending on the shape.
Quartiles and IQR
| Statistic | Meaning |
|---|---|
| Q1 | 25th percentile (lower quartile) |
| Q2 | 50th percentile (median) |
| Q3 | 75th percentile (upper quartile) |
| IQR | Q3 - Q1 (interquartile range) |
IQR captures the middle 50%, robust to outliers.
Tukey's outlier rule: a value is an outlier if it's below Q1 - 1.5 × IQR or above Q3 + 1.5 × IQR. Extreme outlier if beyond 3 × IQR. Conventions only, not statistical certainty.
Percentile interpolation varies across software. Common methods:
- Type 1 (inverse CDF), discrete.
- Type 7 (R/numpy default), linear interpolation between order statistics.
- Type 8, slightly different interpolation, recommended by Hyndman-Fan.
Different libraries give slightly different quartiles for small datasets; for large datasets the differences vanish.
Coefficient of Variation
Relative measure, useful for comparing spread across datasets with different scales. A stddev of 5 ms on 50 ms latency (CV = 0.1) is far less spread than a stddev of 5 ms on 10 ms latency (CV = 0.5).
CV only makes sense for ratio-scale data (positive, with a meaningful zero). Doesn't apply to temperatures in Celsius (zero is arbitrary).
Measures of Shape
Skewness
Measures asymmetry.
- 0: symmetric (e.g., normal distribution).
- Positive: right-skewed, long tail of large values. Common: income, request latency, file sizes.
- Negative: left-skewed, long tail of small values. Less common; some test score distributions, age at death.
Rules of thumb: |skewness| < 0.5 is roughly symmetric; 0.5–1 is moderate skew; > 1 is high skew.
Kurtosis
Measures tail heaviness.
The "- 3" makes the normal distribution have excess kurtosis 0.
- Excess > 0 (leptokurtic): fatter tails than normal. More outliers. Financial returns are famously leptokurtic.
- Excess < 0 (platykurtic): thinner tails. Uniform distribution has excess kurtosis -1.2.
- Excess = 0: tails match normal distribution.
High kurtosis means your "3σ" rule misses too many points, outliers happen more often than a normal distribution would predict.
Visualizing Distributions
Numbers like mean and median can mask very different shapes. Anscombe's quartet is a classic example: four datasets with identical mean, variance, correlation, and regression line but visually completely different shapes.
For real data:
- Histogram: bin values into ranges; show frequency. Reveals modes, skew, gaps.
- Box plot: shows median, Q1, Q3, whiskers, outliers. Compact comparison across groups.
- Violin plot: like a box plot but shows the full distribution shape.
- Q-Q plot: tests whether data is normally distributed.
The tool's histogram is the most basic, covers 80% of "what does my data look like" needs.
Common Use Cases
Latency benchmarks
Don't report "mean latency = 145 ms." Report:
- p50 (median): typical experience.
- p95: most users' worst case.
- p99: the tail, what slow users see.
- max: worst observed.
Real-world latency is heavily right-skewed. Mean is dominated by tail; median better represents typical experience. The gap between p50 and p99 (or stddev / IQR) tells you how consistent the experience is.
A/B test results
Beyond "control = 4.2%, treatment = 4.5%":
- Effect size: 0.3 percentage points absolute, 7% relative.
- Confidence interval: is the difference statistically significant?
- Distribution: did the effect come from many users moving slightly, or a few moving a lot?
Sensor / measurement data
For replicate measurements:
- Mean ± stddev if data is normal.
- Median (IQR) if data is skewed or has outliers.
- Coefficient of variation for relative repeatability.
Outlier detection (Tukey's IQR rule) flags suspect readings.
Survey data
Likert scales (1-5 ratings) are ordinal, strictly, mean is meaningless (the gap between "agree" and "strongly agree" isn't necessarily the same as the gap between "neutral" and "agree"). In practice, mean is reported anyway; pair with median and distribution.
Pitfalls
Reporting mean for skewed data. Don't. Use median.
Comparing means without spreads. "Group A averages 50, group B averages 55" tells you nothing without knowing if both vary by ±2 or ±20.
Ignoring outliers. A single bad value can flip your conclusions. Always inspect, but don't silently delete; document and justify.
Treating "average" as "typical". The average household has 2.1 children; no household has 2.1 children. Average can be a value no observation actually takes.
Confusing standard error and standard deviation. SD = spread of data. SE = spread of the SAMPLE MEAN around the population mean = SD / √n. SE shrinks as you collect more data; SD stays roughly constant.
Adding standard deviations. You can't. Variances add (under independence); standard deviations are square roots of variances and don't.
Using mean of percentages. Average of "10%, 20%, 50%" might not be a meaningful percentage if the denominators differ. Reconstruct from raw counts when possible.
Quick Reference
| Goal | Use |
|---|---|
| Typical value, symmetric data | Mean |
| Typical value, skewed data | Median |
| Spread, symmetric data | Standard deviation |
| Spread, skewed data | IQR |
| Outlier detection | Tukey (1.5×IQR) or 3σ |
| Compare spreads across scales | Coefficient of variation |
| Multiplicative quantities | Geometric mean |
| Rates over fixed distance | Harmonic mean |
| Shape asymmetry | Skewness |
| Tail heaviness | Kurtosis (excess) |
Privacy
All computation is pure math in JavaScript: sums, sorts, percentile interpolation, moment calculations. Numbers stay in the tab; nothing is uploaded. Open DevTools Network during use: zero outbound requests. This matters because numerical data often encodes sensitive context, sales figures, A/B test outcomes, biometric readings, latency measurements, and the act of uploading it is itself an information leak.