Skip to main content
v2026.11,986 entries · CC-BY 4.0

How to Use a Z Table: Step-by-Step Guide

A step-by-step guide on how to use a z table, including standard normal formulas, cumulative probability lookups, worked examples, and code in R and Python.

Written and maintained by CASRAI Editorial Board

Published

On this page

A standard normal distribution table, commonly called a z-table, maps standard deviations (z-scores) to cumulative probabilities under the standard normal curve. In quantitative research and hypothesis testing, researchers use the z-table to determine p-values, set confidence boundaries, and test whether an observed sample deviates significantly from a hypothesized population mean. This guide provides the complete cumulative normal table, the underlying mathematical formulas, worked calculation examples, and code implementations in Excel, R, and Python.

What Is a Z-Table and How Does It Work?

A z-table is a reference grid displaying cumulative probabilities for the standard normal distribution, denoted as Z ~ N(0, 1), where the mean (μ) is 0 and the standard deviation (σ) is 1. The total area underneath the normal distribution curve is exactly 1.0 (100% cumulative probability).

When assessing quantitative data, researchers select their test distribution based on sample size and variance knowledge. As detailed in the t-distribution vs normal distribution comparison, a z-distribution is used when population standard deviation is known or sample size is large (n ≥ 30). For smaller samples with unknown variance, Student’s t-distribution is preferred.

Standard normal tables typically follow one of three layout formats:

  • Cumulative from left tail: The cell gives P(Z ≤ z), measuring the area from -∞ to z. This is the modern standard used below.
  • Cumulative from the mean: The cell gives P(0 ≤ Z ≤ z), measuring only the area between 0 and z. Classical engineering references, including older editions of the NIST/SEMATECH e-Handbook, use this layout.
  • Upper tail: The cell gives P(Z > z), measuring the right-hand rejection region.

To identify your table layout immediately, check the value at z = 0.00: in a cumulative left-tail table, it is exactly 0.5000; in a mean-to-z table, it is 0.0000.

Standard Normal Distribution and Z-Score Formula

To look up an observation in a z-table, raw values must be transformed into standardized z-scores. A z-score measures how many standard deviations an observation x lies above or below the population mean μ.

For an individual observation, the standardization formula is:

z = (x – μ) / σ

When testing sample means, the denominator is the standard error of the mean (SE = σ / √n). As outlined in the fundamental test statistic formula, the sample z-score is:

z = (x̄ – μ) / (σ / √n)

Per NIST e-Handbook Section 1.3.6.6.1, the probability density function (PDF) generating the standard normal curve is:

f(z) = (1 / √(2π)) × exp(-z² / 2)

The cumulative distribution function Φ(z) represents the integral from -∞ to z. Because this integral has no closed algebraic solution, values are calculated numerically and tabulated.

How to Read a Z-Table: Step-by-Step Lookup Method

To read a cumulative left-tail z-table:

  1. Locate the row: Find the integer and first decimal digit in the left vertical column (e.g., for z = 1.45, find 1.4).
  2. Locate the column: Find the second decimal digit across the top horizontal row (for z = 1.45, find .05).
  3. Find the intersection: The intersecting cell contains 0.9265, indicating that 92.65% of the distribution lies below z = 1.45.
  4. Use symmetry for negative z-scores: Apply the standard normal symmetry rule P(Z ≤ –z) = 1 – P(Z ≤ z). For example, P(Z ≤ -1.45) = 1 – 0.9265 = 0.0735.

Cumulative Standard Normal Distribution Table (Z-Table)

The table below provides cumulative standard normal probabilities Φ(z) = P(Z ≤ z) for z-scores from 0.00 to 3.09. Values are rounded to four decimal places (0.0001 precision) and benchmarked against NIST/SEMATECH Section 1.3.6.7.1 and OpenStax Introductory Statistics Chapter 6.

z .00 .01 .02 .03 .04 .05 .06 .07 .08 .09
0.0 0.5000 0.5040 0.5080 0.5120 0.5160 0.5199 0.5239 0.5279 0.5319 0.5359
0.1 0.5398 0.5438 0.5478 0.5517 0.5557 0.5596 0.5636 0.5675 0.5714 0.5753
0.2 0.5793 0.5832 0.5871 0.5910 0.5948 0.5987 0.6026 0.6064 0.6103 0.6141
0.3 0.6179 0.6217 0.6255 0.6293 0.6331 0.6368 0.6406 0.6443 0.6480 0.6517
0.4 0.6554 0.6591 0.6628 0.6664 0.6700 0.6736 0.6772 0.6808 0.6844 0.6879
0.5 0.6915 0.6950 0.6985 0.7019 0.7054 0.7088 0.7123 0.7157 0.7190 0.7224
0.6 0.7257 0.7291 0.7324 0.7357 0.7389 0.7422 0.7454 0.7486 0.7517 0.7549
0.7 0.7580 0.7611 0.7642 0.7673 0.7704 0.7734 0.7764 0.7794 0.7823 0.7852
0.8 0.7881 0.7910 0.7939 0.7967 0.7995 0.8023 0.8051 0.8078 0.8106 0.8133
0.9 0.8159 0.8186 0.8212 0.8238 0.8264 0.8289 0.8315 0.8340 0.8365 0.8389
1.0 0.8413 0.8438 0.8461 0.8485 0.8508 0.8531 0.8554 0.8577 0.8599 0.8621
1.1 0.8643 0.8665 0.8686 0.8708 0.8729 0.8749 0.8770 0.8790 0.8810 0.8830
1.2 0.8849 0.8869 0.8888 0.8907 0.8925 0.8944 0.8962 0.8980 0.8997 0.9015
1.3 0.9032 0.9049 0.9066 0.9082 0.9099 0.9115 0.9131 0.9147 0.9162 0.9177
1.4 0.9192 0.9207 0.9222 0.9236 0.9251 0.9265 0.9279 0.9292 0.9306 0.9319
1.5 0.9332 0.9345 0.9357 0.9370 0.9382 0.9394 0.9406 0.9418 0.9429 0.9441
1.6 0.9452 0.9463 0.9474 0.9484 0.9495 0.9505 0.9515 0.9525 0.9535 0.9545
1.7 0.9554 0.9564 0.9573 0.9582 0.9591 0.9599 0.9608 0.9616 0.9625 0.9633
1.8 0.9641 0.9649 0.9656 0.9664 0.9671 0.9678 0.9686 0.9693 0.9699 0.9706
1.9 0.9713 0.9719 0.9726 0.9732 0.9738 0.9744 0.9750 0.9756 0.9761 0.9767
2.0 0.9772 0.9778 0.9783 0.9788 0.9793 0.9798 0.9803 0.9808 0.9812 0.9817
2.1 0.9821 0.9826 0.9830 0.9834 0.9838 0.9842 0.9846 0.9850 0.9854 0.9857
2.2 0.9861 0.9864 0.9868 0.9871 0.9875 0.9878 0.9881 0.9884 0.9887 0.9890
2.3 0.9893 0.9896 0.9898 0.9901 0.9904 0.9906 0.9909 0.9911 0.9913 0.9916
2.4 0.9918 0.9920 0.9922 0.9925 0.9927 0.9929 0.9931 0.9932 0.9934 0.9936
2.5 0.9938 0.9940 0.9941 0.9943 0.9945 0.9946 0.9948 0.9949 0.9951 0.9952
2.6 0.9953 0.9955 0.9956 0.9957 0.9959 0.9960 0.9961 0.9962 0.9963 0.9964
2.7 0.9965 0.9966 0.9967 0.9968 0.9969 0.9970 0.9971 0.9972 0.9973 0.9974
2.8 0.9974 0.9975 0.9976 0.9977 0.9977 0.9978 0.9979 0.9979 0.9980 0.9981
2.9 0.9981 0.9982 0.9982 0.9983 0.9984 0.9984 0.9985 0.9985 0.9986 0.9986
3.0 0.9987 0.9987 0.9987 0.9988 0.9988 0.9989 0.9989 0.9989 0.9990 0.9990

Key Critical Values for Hypothesis Testing

In statistical significance testing, critical values mark the boundaries of rejection regions. In one-tailed vs two-tailed tests, the test direction determines whether significance level α is placed in one tail or divided across both. Critical values sourced from NIST Section 1.3.6.7.1 include:

Cumulative Probability (p) Critical Z-Value (Zp) Significance Application
0.900 (90%) +1.282 80% two-tailed / 90% one-tailed test
0.950 (95%) +1.645 90% two-tailed / 95% one-tailed test (α = 0.05)
0.975 (97.5%) +1.960 Standard 95% two-tailed confidence level (α = 0.05)
0.990 (99%) +2.326 98% two-tailed / 99% one-tailed test (α = 0.01)
0.995 (99.5%) +2.576 Standard 99% two-tailed confidence level (α = 0.01)
0.999 (99.9%) +3.090 99.8% two-tailed / 99.9% one-tailed test (α = 0.001)

Worked Examples: Step-by-Step Probability Calculations

Depending on research design, researchers compute lower-tail, upper-tail, or bounded interval probabilities.

Worked Example 1: Finding Cumulative Lower-Tail Probability

Scenario: An automated laboratory analyzer has a normally distributed processing time with mean μ = 100 seconds and standard deviation σ = 10 seconds. Find the probability that a sample run completes in 114.5 seconds or less.

  1. Standardize the raw value: z = (114.5 – 100) / 10 = 14.5 / 10 = 1.45.
  2. Locate in z-table: Row 1.4 and column .05 intersect at 0.9265.
  3. Result: P(X ≤ 114.5) = P(Z ≤ 1.45) = 0.9265. Approximately 92.65% of test runs complete within 114.5 seconds.

Worked Example 2: Finding an Interval and Two-Tailed Probability

Scenario: For the same analyzer (μ = 100, σ = 10), find the probability that a test run lasts between 88.0 and 118.0 seconds.

  1. Standardize both bounds:
    • Lower bound: z₁ = (88.0 – 100) / 10 = -1.20.
    • Upper bound: z₂ = (118.0 – 100) / 10 = +1.80.
  2. Look up cumulative areas:
    • Upper bound: Φ(1.80) = 0.9641 (Row 1.8, Column .00).
    • Lower bound: Φ(-1.20) = 1 – Φ(1.20) = 1 – 0.8849 = 0.1151.
  3. Calculate the interval: P(-1.20 ≤ Z ≤ 1.80) = Φ(1.80) – Φ(-1.20) = 0.9641 – 0.1151 = 0.8490.
  4. Result: 84.90% of all analyzer runs fall between 88.0 and 118.0 seconds. When performing two-tailed hypothesis testing, this interval subtraction separates the acceptance region from extreme rejection tails.

How to Calculate Z-Scores and Probabilities in Excel, R, and Python

Modern quantitative analysis computes normal distribution probabilities programmatically. Below are syntax templates across three standard research environments.

1. Microsoft Excel

  • Cumulative probability P(Z ≤ 1.45): =NORM.S.DIST(1.45, TRUE) (yields 0.9265)
  • Upper-tail probability: =1 - NORM.S.DIST(1.45, TRUE) (yields 0.0735)
  • Two-tailed 95% critical value (α = 0.05): =NORM.S.INV(0.975) (yields 1.9600)
  • Standardize raw score: =STANDARDIZE(114.5, 100, 10) (yields 1.45)

2. R

# Cumulative probability P(Z <= 1.45)
p_lower <- pnorm(1.45)

# Upper-tail probability
p_upper <- pnorm(1.45, lower.tail = FALSE)

# Interval between -1.20 and 1.80
p_between <- pnorm(1.80) - pnorm(-1.20)

# Critical z-value for two-tailed 95% confidence (alpha = 0.05)
z_crit <- qnorm(0.975)

3. Python (scipy.stats)

from scipy import stats

# Cumulative probability P(Z <= 1.45)
p_lower = stats.norm.cdf(1.45)

# Upper-tail probability
p_upper = stats.norm.sf(1.45)

# Interval between -1.20 and 1.80
p_between = stats.norm.cdf(1.80) - stats.norm.cdf(-1.20)

# Critical z-score for two-tailed 95% confidence (p = 0.975)
z_critical = stats.norm.ppf(0.975)

Common Pitfalls When Using Standard Normal Tables

When working with standard normal tables manually, watch for these common calculation errors:

  • Misidentifying table layout: Confusing a mean-to-z table with a cumulative left-tail table introduces an error of 0.5000. Always check the cell value at z = 0.00 first.
  • Using z-scores when sample size is small without known variance: When sample standard deviation s estimates unknown population standard deviation σ with n < 30, use Student's t-distribution. Review our guide to types of test statistics for test selection criteria.
  • Splitting alpha incorrectly in two-tailed tests: In two-tailed tests at α = 0.05, each tail receives α/2 = 0.025, corresponding to critical z-values of ±1.960, not ±1.645.
  • Premature rounding: Rounding intermediate z-scores before table lookup compounds rounding error. Retain full precision until looking up the two-decimal z-score.

Frequently Asked Questions About Z-Tables

What is the difference between a positive and negative z-table?

A positive z-table gives cumulative probabilities for z-scores ≥ 0.00 (probabilities from 0.5000 to 1.0000). A negative z-table gives probabilities for z-scores < 0.00 (probabilities from 0.0000 to 0.5000). If only a positive table is available, calculate negative probabilities using symmetry: Φ(-z) = 1 – Φ(z).

Can a z-score exceed 3.0?

Yes. While most printed tables end at z = 3.09 or 3.49, z-scores can take any real value. For z > 3.09, the cumulative probability exceeds 0.9990. Evaluate extreme z-scores programmatically using functions like scipy.stats.norm.cdf.

When should I use a z-table instead of a t-table?

Use a z-table when the population standard deviation (σ) is known or when sample size is large (n ≥ 30). When σ is unknown and sample size is small, use Student’s t-distribution.

What does a z-score of 0 mean?

A z-score of 0 indicates that the observed value is identical to the population mean (μ). Under the standard normal distribution, exactly 50% of the distribution lies below z = 0, giving a cumulative probability of 0.5000.

Follow CASRAI

Research-administration guidance, standards updates and independent tool reviews.

Ask CASRAI · free to try

Ask about How to Use a Z Table: Step-by-Step Guide

Ask your first 2 questions free below. Subscribers get 150 a day for $29 a month.

An AI assistant specialized in research administration. It cites the sources behind every answer, labels web answers and says when it can't answer.

Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.

Works on this site and inside Claude, Cursor and the AI tools you already use.

Everything CASRAI publishes — this page, the dictionary, the guides and the news — stays free to read, with no account and no card.

Referenced across the research world

University of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logoUniversity of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logo
  • University of Cambridge logo
  • Columbia University logo
  • Crossref logo
  • University of Edinburgh logo
  • Harvard University logo
  • University of Oxford logo
  • Princeton University logo
  • Stanford School of Medicine logo
  • University College London logo
  • ORCID logo

View CASRAI adoption →