What Is a Z-Score?
The concept grew out of work by Karl Pearson and Ronald Fisher in the late 19th and early 20th centuries, building on Abraham de Moivre's earlier work on the normal distribution. Today, z-scores appear in standardized testing, medical diagnostics, quality control, financial risk analysis, and machine learning feature normalization.
Three numbers go into the calculation: the observation itself (x), the mean of the reference group (μ), and the standard deviation of that group (σ). Subtract the mean from the observation, divide by the standard deviation, and you have the z-score. A result of zero means the observation equals the mean exactly. Positive values sit above the mean; negative values sit below it.
What makes z-scores useful is standardization. An IQ score of 130 and an SAT score of 700 describe very different things measured on completely different scales. Converting both to z-scores puts them on the same axis: the IQ score has z = 2.0, the SAT score has z ≈ 1.47, making a direct comparison possible. This is covered in detail in the main z-score guide at Statistics Fundamentals.
These percentages come from the Empirical Rule (68-95-99.7 rule), which describes how normally distributed data clusters around the mean. The rule only applies when data is approximately normally distributed — a point that matters when interpreting z-scores from real datasets, which are rarely perfectly symmetric.
The Z-Score Formula
Two versions of the formula exist depending on whether you know the population parameters or are working with sample data.
x = observed value
μ = population mean
σ = population standard deviation
z = standard score
x = observed value
x̄ = sample mean
s = sample standard deviation
The math is identical — only the symbols change. Use the population formula when the true parameters (μ and σ) are known. Use the sample formula when working from collected data, which is the common situation in practice. For a review of how to calculate the mean and standard deviation before applying the z-score formula, see the guides on mean and standard deviation.
| Comparison | Population Z-Score | Sample Z-Score |
|---|---|---|
| Formula | z = (x − μ) / σ | z = (x − x̄) / s |
| Mean used | Population mean μ | Sample mean x̄ |
| SD used | Population SD σ (denominator N) | Sample SD s (denominator N−1) |
| When to use | Known parameters (e.g., IQ tests, standardized exams) | Data collected from a sample |
| Common example | SAT scores (College Board publishes μ and σ) | Student exam scores in your class |
How to Calculate a Z-Score (5-Step SCORE Method)
The following framework applies to every z-score calculation regardless of the domain. Each step is illustrated with the same running example: a student who scored 90 on a statistics exam where the class mean was 74 and the standard deviation was 10.
The SCORE Framework for Z-Score Calculation
Select the observation
Identify the data point you want to evaluate. Example: the student's score, x = 90.
Calculate the mean
Find or confirm the mean of the reference group. Example: class mean μ = 74.
Obtain the standard deviation
Find or confirm the standard deviation. Example: σ = 10 (known for this class).
Run the z-score calculation
Apply the formula: z = (x − μ) / σ = (90 − 74) / 10 = 16 / 10 = 1.60
Explain the interpretation
z = 1.60 means the student scored 1.6 standard deviations above the class average, placing them at the 94.5th percentile. They outperformed approximately 94.5% of the class.
A z-score = (observation − mean) / standard deviation. It tells you how many standard deviations above (positive) or below (negative) the mean a single value sits. A z-score of +2 is two standard deviations above average; a z-score of −1.5 is one and a half standard deviations below.
Z-Score Real-Life Examples — 10 Fully Solved
Each example below uses realistic data, shows every arithmetic step, and explains what the result means for someone working in that field. All calculations use the formula z = (x − μ) / σ unless stated otherwise.
Example 1 — Student Exam Score (Education)
Problem: In an AP Statistics class, the exam scores are normally distributed with a mean of 72 and a standard deviation of 8. Student A scored 88. Student B scored 60. Calculate both students' z-scores and interpret the results.
Student A (x = 88): z = (88 − 72) / 8 = 16 / 8 = +2.00
Student B (x = 60): z = (60 − 72) / 8 = −12 / 8 = −1.50
Percentiles: z = +2.00 → 97.72nd percentile. z = −1.50 → 6.68th percentile. Both can be looked up in the z-table.
✅ Student A's score of 88 is exactly 2 standard deviations above the mean — better than 97.72% of the class. Student B's score of 60 is 1.5 standard deviations below the mean — they outperformed only 6.68% of classmates. The raw scores of 88 and 60 have little meaning on their own; the z-scores place each in context.
Example 2 — Adult Male Height (Biology / Demographics)
Problem: According to the CDC, adult male height in the United States is approximately normally distributed with a mean of 69.3 inches (5'9") and a standard deviation of 2.9 inches. How unusual is a man who is 6'3" (75 inches) tall? What about a man who is 5'6" (66 inches)?
Person A — 6'3" (75 in): z = (75 − 69.3) / 2.9 = 5.7 / 2.9 = +1.97
Person B — 5'6" (66 in): z = (66 − 69.3) / 2.9 = −3.3 / 2.9 = −1.14
Percentile conversion: z = +1.97 → ~97.6th percentile (taller than 97.6% of adult males). z = −1.14 → ~12.7th percentile.
✅ A height of 6'3" is nearly two standard deviations above average, placing that person in roughly the top 2.4% of adult male heights. A height of 5'6" is about 1.14 standard deviations below average — shorter than most adult males but not at all unusual (87.3% are taller).
Example 3 — Blood Pressure Reading (Healthcare)
Problem: A cardiologist's patient database shows systolic blood pressure readings with a mean of 120 mmHg and a standard deviation of 14 mmHg. Two patients present with readings of 148 mmHg and 105 mmHg respectively. Where does each patient fall relative to the reference population?
Patient A (148 mmHg): z = (148 − 120) / 14 = 28 / 14 = +2.00
Patient B (105 mmHg): z = (105 − 120) / 14 = −15 / 14 = −1.07
Clinical context: A z-score of +2.00 places Patient A in the top 2.28% of systolic readings — a flag for evaluation. Patient B's negative z-score places them in the lower quarter of readings (about the 14.2nd percentile), suggesting normal to low blood pressure.
✅ Patient A's reading of 148 mmHg is two standard deviations above the reference mean. In clinical practice, readings above 130–140 mmHg are typically considered elevated (Stage 1–2 hypertension by American Heart Association guidelines). Patient B's reading of 105 mmHg is below average but within a normal range for many adults.
Example 4 — Employee Salary (Human Resources / Business)
Problem: An HR analyst reviews salaries in a software engineering department. The department mean is $62,000 and the standard deviation is $11,000. One engineer earns $84,000; another earns $45,000. Are either compensation levels statistically unusual for this group?
Engineer A ($84,000): z = (84,000 − 62,000) / 11,000 = 22,000 / 11,000 = +2.00
Engineer B ($45,000): z = (45,000 − 62,000) / 11,000 = −17,000 / 11,000 = −1.55
HR interpretation: z = +2.00 earns more than ~97.7% of the department. z = −1.55 earns less than ~87.9% of peers. Both z-scores are calculable; the question of whether they are appropriate requires external market benchmarking.
✅ Engineer A's salary sits two standard deviations above the department mean — notable but not extreme (HR might investigate whether a role adjustment or market correction is appropriate). Engineer B's salary is 1.55 standard deviations below the mean, falling in the bottom 12.1% of the department. Z-scores alone cannot explain why these differences exist, but they flag observations worth reviewing.
Example 5 — Tablet Manufacturing Quality Control
Problem: A pharmaceutical company manufactures tablets with a target weight of 500 mg and a process standard deviation of 5 mg (based on historical production data). Quality engineers measure two tablets: one at 513 mg and one at 497 mg. Which, if any, requires inspection?
Tablet A (513 mg): z = (513 − 500) / 5 = 13 / 5 = +2.60
Tablet B (497 mg): z = (497 − 500) / 5 = −3 / 5 = −0.60
Decision rule: If |z| > 2.0, the tablet falls outside the 2-sigma control limit and triggers an inspection. Tablet A: |2.60| > 2.0 → flag for review. Tablet B: |−0.60| < 2.0 → acceptable.
✅ Tablet A at 513 mg has a z-score of +2.60, meaning it weighs 2.6 standard deviations above the target. This triggers the quality control flag — only 0.93% of tablets in a normal process should deviate this far. Tablet B at 497 mg is only 0.6 standard deviations light and falls within normal manufacturing variation. Z-scores are central to Statistical Process Control (SPC) in manufacturing.
Example 6 — IQ Score (Psychology / Cognitive Assessment)
Problem: IQ tests are designed to produce scores with a mean of 100 and a standard deviation of 15. A person scores 118. A second person scores 85. What are their z-scores, and what percentile does each correspond to?
Person A (IQ = 118): z = (118 − 100) / 15 = 18 / 15 = +1.20
Person B (IQ = 85): z = (85 − 100) / 15 = −15 / 15 = −1.00
Percentile lookup (from z-table): z = +1.20 → 88.49th percentile. z = −1.00 → 15.87th percentile.
✅ A z-score of +1.20 means the first person scored higher than 88.49% of the test population. The second person's z-score of −1.00 puts them at the 15.87th percentile. IQ tests are deliberately designed so that z-scores map cleanly to the standard normal distribution — the z-score and the IQ score carry exactly the same information, just expressed differently.
Example 7 — Annual Investment Return (Finance)
Problem: Historical S&P 500 annual returns (1928–2023) show a mean of approximately 10.5% and a standard deviation of 17.0%. The index returned −38.5% in 2008 and +32.4% in 2013. How unusual were these years by historical standards?
2008 return (−38.5%): z = (−38.5 − 10.5) / 17.0 = −49.0 / 17.0 = −2.88
2013 return (+32.4%): z = (32.4 − 10.5) / 17.0 = 21.9 / 17.0 = +1.29
Interpretation: z = −2.88 falls in the bottom 0.20% of historical annual returns. z = +1.29 is strong but not exceptional — roughly the 90th percentile of yearly performance.
✅ The 2008 financial crisis produced a z-score of −2.88, meaning returns that year were nearly three standard deviations below the historical average. Only about 0.20% of years in a normal distribution produce results this bad or worse. By contrast, the 2013 return of +32.4% was strong but nowhere near as statistically unusual — it sits at roughly the top 10% of historical years, a z-score of +1.29.
Example 8 — 5K Race Time (Sports Performance)
Problem: At a local community 5K race, finish times are approximately normally distributed with a mean of 32 minutes and a standard deviation of 6 minutes. Runner A finishes in 22 minutes; Runner B finishes in 38 minutes. How do they each compare to the field?
In race times, a lower value is better. A negative z-score means a faster time — the runner finished sooner than average. This is the opposite interpretation from exam scores, where a positive z-score is better.
Runner A (22 minutes): z = (22 − 32) / 6 = −10 / 6 = −1.67
Runner B (38 minutes): z = (38 − 32) / 6 = 6 / 6 = +1.00
Percentile (from finish-time perspective): Runner A's time of 22 min beats 95.2% of finishers (they are faster than that percentage). Runner B's time of 38 min is slower than 84.1% of finishers.
✅ Runner A's z-score of −1.67 is negative because 22 minutes is 1.67 SDs below the mean finish time — meaning they ran faster than approximately 95% of the field. Runner B's positive z-score of +1.00 means a slower time, finishing in the bottom 15.9% of the field. Always check whether a higher or lower measurement indicates better performance before interpreting sign.
Example 9 — SAT Math Score (Standardized Testing)
Problem: College Board reports the SAT Math section has a mean of 528 and a standard deviation of 117. A student applying to engineering programs scores 690. How strong is that score relative to all test-takers?
Identify values: x = 690, μ = 528, σ = 117
Calculate: z = (690 − 528) / 117 = 162 / 117 = +1.38
Percentile: z = +1.38 → 91.6th percentile. The student scored higher than roughly 91.6% of SAT Math test-takers nationally.
✅ A score of 690 on SAT Math is 1.38 standard deviations above the national mean. This places the student in the top 8.4% of test-takers nationally. The z-score lets admissions offices compare this performance directly with scores from other tests (ACT, AP exams) that use completely different scales — standardization makes the comparison possible.
Example 10 — Customer Wait Time (Customer Service Analytics)
Problem: A call center's historical data shows an average customer wait time of 8.5 minutes with a standard deviation of 2.1 minutes. On a Tuesday morning, a customer waits 14.2 minutes. The operations manager wants to know how far outside the normal range this is.
Values: x = 14.2 min, μ = 8.5 min, σ = 2.1 min
Calculate: z = (14.2 − 8.5) / 2.1 = 5.7 / 2.1 = +2.71
Probability: A z-score of +2.71 corresponds to the 99.67th percentile. This wait time was longer than 99.67% of all recorded calls — an extremely unusual event that points to a staffing or system issue.
✅ A wait time of 14.2 minutes has a z-score of +2.71, placing it 2.71 standard deviations above the historical mean. In a monitoring system, this would trigger an alert. Call centers commonly set control limits at z = ±2 or ±3 — any observation crossing that line gets reviewed. The z-score doesn't tell the manager why the wait was long, but it confirms the wait was statistically significant enough to warrant investigation.
Positive vs Negative Z-Scores
The sign of a z-score (positive or negative) simply indicates which side of the mean the observation falls on. A value of zero means the observation equals the mean exactly.
| Feature | Positive Z-Score (+) | Negative Z-Score (−) |
|---|---|---|
| Position | Above the mean | Below the mean |
| Example | z = +2.0 → 2 SDs above average | z = −2.0 → 2 SDs below average |
| Exam score | Better than class average | Worse than class average |
| Height | Taller than average | Shorter than average |
| Blood pressure | Higher than reference mean | Lower than reference mean |
| Manufacturing | Measurement over target | Measurement under target |
| Race time | Slower than average | Faster than average (better) |
| Percentile | Above the 50th percentile | Below the 50th percentile |
The magnitude — the absolute value of the z-score — is what tells you how far from average the observation is, regardless of direction. A z-score of −2.5 and a z-score of +2.5 are equally unusual. Whether "unusual" is good or bad depends entirely on the context, as the race-time example above showed.
Z-Score Interpretation Table
The table below shows how z-scores map to percentiles in a standard normal distribution. These values come from the cumulative distribution function (CDF) of the standard normal distribution N(0,1), the same values found in a full z-table.
| Z-Score | Percentile (Area Left) | Area Right | Description | Empirical Rarity |
|---|---|---|---|---|
| −4.00 | 0.003% | 99.997% | Extremely rare (below) | 1 in 31,574 |
| −3.00 | 0.13% | 99.87% | Very unusual (below) | 1 in 741 |
| −2.00 | 2.28% | 97.72% | Well below average | 1 in 44 |
| −1.50 | 6.68% | 93.32% | Below average | 1 in 15 |
| −1.00 | 15.87% | 84.13% | Somewhat below average | 1 in 6.3 |
| −0.50 | 30.85% | 69.15% | Slightly below average | Common |
| 0.00 | 50.00% | 50.00% | Exactly at the mean | — |
| +0.50 | 69.15% | 30.85% | Slightly above average | Common |
| +1.00 | 84.13% | 15.87% | Somewhat above average | 1 in 6.3 |
| +1.50 | 93.32% | 6.68% | Above average | 1 in 15 |
| +2.00 | 97.72% | 2.28% | Well above average | 1 in 44 |
| +3.00 | 99.87% | 0.13% | Very unusual (above) | 1 in 741 |
| +4.00 | 99.997% | 0.003% | Extremely rare (above) | 1 in 31,574 |
Converting a z-score to a percentile requires the normal distribution's cumulative distribution function, or a printed z-table. The percentile values above assume approximate normality — real-world datasets often deviate from perfect normality, especially in the tails.
Z-Score Comparison Tables
Z-Score vs Percentile vs Standard Deviation
| Concept | Z-Score | Percentile |
|---|---|---|
| What it measures | Distance from the mean in SD units | Rank within the distribution (%) |
| Unit | Unitless (standardized) | Percent (0–100) |
| Requires normality? | No — z-score can be calculated for any distribution | No — percentile is always valid |
| Conversion | z → percentile via normal CDF | Percentile → z via inverse normal |
| Example | z = +1.96 (above mean by 1.96 SDs) | 97.5th percentile |
| Used for | Standardizing, comparing across groups | Ranking within a group |
Z-Score vs Raw Score
| Feature | Raw Score | Z-Score |
|---|---|---|
| Units | Original measurement units (points, mg, mmHg) | Unitless (standard deviations) |
| Cross-group comparison | Not meaningful across different datasets | Directly comparable across any dataset |
| Tells you where you rank | Only if you know the distribution | Yes, immediately (with normality assumption) |
| Example | Scored 690 on SAT Math | z = +1.38 (top ~8.4% nationally) |
The z-score is the key tool for standardization — the process of converting measurements onto a common scale. Percentiles are useful for rank ordering; z-scores are useful for quantifying the exact distance from the center of the distribution.
Real-World Applications of Z-Scores
Standardized Testing
SAT, ACT, GRE, and IQ tests all use the z-score framework to report percentile ranks. A single score means nothing without knowing the distribution of all scores.
Healthcare
Pediatric growth charts (height, weight, head circumference) are expressed as z-scores relative to age- and sex-matched reference populations. The WHO uses them for child nutrition monitoring.
Quality Control
Statistical Process Control (SPC) uses z-scores to monitor manufacturing output. Control charts flag products where |z| exceeds 2 or 3 for inspection.
Finance
Altman Z-Score is used to predict corporate bankruptcy risk. Portfolio managers also standardize returns across different assets to compare risk-adjusted performance.
Machine Learning
Feature normalization (scaling each feature to z-score) prevents larger-magnitude variables from dominating gradient descent in neural networks and logistic regression.
Sports Analytics
Player performance metrics like ERA in baseball, PER in basketball, and WAR across multiple sports compare players against league-wide distributions using standardized scores.
Common Z-Score Mistakes
| Mistake | Wrong Approach | Correct Approach |
|---|---|---|
| Using population σ when only sample data is available | z = (x − x̄) / σ (population formula with sample SD symbol) | Use s (sample SD, divisor N−1) for sample data; σ only when population parameters are known |
| Misreading the sign in performance contexts | Negative z = bad performance (always) | Sign depends on context: negative z for race time = faster = better; negative z for exam score = worse |
| Assuming z-scores require normality to calculate | Refusing to calculate z-scores because data is skewed | Z-scores can be calculated for any distribution; the percentile conversion only holds when data is normally distributed |
| Treating |z| > 2 as always unusual | Flagging every data point with |z| > 2 as an outlier | The threshold depends on field: manufacturing uses ±2 or ±3; some financial contexts use ±1.5; always check domain conventions |
| Confusing z-score with z-statistic in hypothesis testing | Using the same formula z = (x − μ)/σ for hypothesis testing | The hypothesis testing z-statistic uses the standard error: z = (x̄ − μ₀) / (σ/√n). See the one-sample z-test guide. |
| Forgetting to check whether the mean and SD belong to the right group | Comparing a child's height to adult population norms | The reference distribution (mean and SD) must match the population the observation belongs to — age, sex, and context all matter |
Calculating Z-Scores in Software
Microsoft Excel
Excel has a built-in STANDARDIZE function for single z-score calculations, and AVERAGE / STDEV for computing parameters from raw data.
/* Single z-score */ =STANDARDIZE(x, mean, standard_dev) /* Example: value in A2, calculate mean and SD from data in column A */ =STANDARDIZE(A2, AVERAGE(A:A), STDEV(A:A)) /* Manual formula (same result) */ =(A2 - AVERAGE(A:A)) / STDEV(A:A) /* Convert z-score to percentile */ =NORM.S.DIST(z, TRUE)
Python (NumPy / SciPy)
SciPy's stats.zscore computes z-scores for an entire array. For a single value against known parameters, use the arithmetic directly.
import numpy as np from scipy import stats # Compute z-scores for all values in an array data = np.array([72, 88, 60, 95, 65, 80, 70, 74, 68, 82]) z_scores = stats.zscore(data) print(z_scores) # Single z-score: student scored 88, class mean 72, SD 8 x, mu, sigma = 88, 72, 8 z = (x - mu) / sigma print(f"Z-score: {z:.2f}") # Output: Z-score: 2.00 # Convert z-score to percentile percentile = stats.norm.cdf(z) * 100 print(f"Percentile: {percentile:.2f}%") # Output: Percentile: 97.72%
R
The scale() function returns z-scores for a numeric vector. Manual calculation also works directly.
# Z-scores for a vector scores <- c(72, 88, 60, 95, 65, 80, 70, 74, 68, 82) z_scores <- scale(scores) print(z_scores) # Single z-score calculation x <- 88; mu <- 72; sigma <- 8 z <- (x - mu) / sigma cat("Z-score:", z, "\n") # Z-score: 2 # Convert to percentile percentile <- pnorm(z) * 100 cat("Percentile:", round(percentile, 2), "%\n") # 97.72 %
scale() documentation: The R Project for Statistical Computing.Z-Score Calculator
Enter your observed value, the mean of the reference group, and the standard deviation. The calculator returns the z-score, the corresponding percentile, and an interpretation.
Z-Score Calculator
For a full featured calculator with additional options, see the z-score calculator page. To use a lookup table instead, the z-table lists cumulative probabilities for z-values from −3.49 to +3.49.
When to Use Z-Scores vs Other Statistics
| Goal | Use This | Why |
|---|---|---|
| Compare one value to its group | Z-Score | Tells you exactly how many SDs from the mean the value is |
| Rank observations within a group | Percentile | More intuitive for reporting: "top 10%" is clearer than "z = +1.28" |
| Measure spread of an entire dataset | Standard Deviation | SD describes the group; z-score describes one observation |
| Test whether a sample mean differs from a known value | Z-Statistic (hypothesis testing) | Uses SE = σ/√n in the denominator; see hypothesis testing |
| Compare means from an unknown-σ population | T-Statistic | When σ is unknown, the t-distribution accounts for extra uncertainty |
| Build a range that captures likely values | Confidence Interval | z-scores define the interval width; see confidence intervals |
| Detect outliers in raw data | Z-Score (|z| > 2 or 3) | Fast, interpretable outlier detection method; see outliers guide |
| Normalize features for machine learning | Z-Score standardization | Makes all features comparable in scale before model training |
Frequently Asked Questions
z = (x − μ) / σ. A z-score of 0 means the value equals the mean, a positive z-score indicates the value is above the mean, and a negative z-score indicates it is below the mean.
z = (x − μ) / σ. Finally, interpret the result: positive values are above the mean, negative values are below the mean, and the magnitude tells you how many standard deviations the observation is from the average.
(88 − 72) / 8 = 2.0. This means the student scored two standard deviations above the class average, placing them at approximately the 97.7th percentile.
Glossary of Z-Score Terms
| Term | Symbol | Definition |
|---|---|---|
| Z-Score | z | Number of standard deviations an observation is from the mean: z = (x − μ) / σ |
| Standard Score | z | Alternative name for z-score; both terms are interchangeable |
| Mean (Population) | μ | Average of all values in a population |
| Mean (Sample) | x̄ | Average of values in a collected sample |
| Standard Deviation (Population) | σ | Typical distance of values from μ; denominator uses N |
| Standard Deviation (Sample) | s | Typical distance of values from x̄; denominator uses N−1 (Bessel's correction) |
| Variance | σ² (or s²) | Square of the standard deviation |
| Normal Distribution | N(μ, σ²) | Symmetric bell-shaped distribution; characterized by mean and standard deviation |
| Standard Normal Distribution | Z ~ N(0,1) | Normal distribution with mean 0 and standard deviation 1; z-scores follow this distribution when data is normal |
| Percentile | — | Percentage of observations at or below a given value |
| Empirical Rule | 68-95-99.7 | In a normal distribution: 68% within ±1 SD, 95.44% within ±2 SD, 99.74% within ±3 SD |
| Standard Error | SE = σ/√n | Standard deviation of a sampling distribution of sample means |
| Outlier | — | Data point unusually far from the mean; often defined as |z| > 2 or |z| > 3 |
| Standardization | — | Process of converting data to z-scores so different variables can be compared |
| Central Limit Theorem | CLT | Sample means follow an approximately normal distribution as n increases, enabling z-score use for inference |
| Cumulative Distribution Function | CDF or Φ(z) | Probability that Z ≤ z; used to convert z-scores to percentiles |
| Confidence Interval | CI | Range of values estimated to contain a population parameter; width depends on z-score (e.g., z* = 1.96 for 95% CI) |
| p-value | p | Probability of observing a result as extreme as the sample, assuming H₀ is true; related to z-scores in hypothesis testing |
Sources and Further Reading
The z-score formula and interpretation standards referenced throughout this guide come from the following sources: