Sign Test Critical Value Calculator
What Is the Sign Test?
The Sign Test is a nonparametric hypothesis test for paired or matched data. It works by recording only the direction of each difference — positive (+) or negative (−) — and ignoring how large the differences are. Under the null hypothesis, positive and negative differences are equally probable, so the count of each sign follows a binomial distribution with p = 0.5.
Because the test discards magnitude information, it requires fewer assumptions than parametric alternatives: no normality, no equal variances, no requirement that differences even be measurable on an interval scale. That makes it the right choice when the paired t-test's assumptions cannot be verified, or when data are ordinal categories that can only be compared directionally.
One-paragraph definition (Featured Snippet): The Sign Test is a nonparametric paired test that counts positive and negative differences between paired observations and compares that count to a critical value from the binomial distribution. You reject H₀ when the observed count of the less-frequent sign (k) is at or below the critical value for the effective sample size n and significance level α. No normality assumption is required. The test statistic k follows B(n, 0.5) under H₀, making it an exact test valid for any sample size.
Sign Test Critical Value Table
All values are kcrit — the maximum count of the less-frequent sign for statistical significance. Reject H₀ if k ≤ kcrit. Select the tab matching your test direction and α. Click any cell to load it into the calculator above. "—" means no value exists (n is too small for α at that test direction).
n = effective sample size (non-tied pairs). kcrit = maximum allowable count of the less-frequent sign. Reject H₀ if k ≤ kcrit. Values derived from exact binomial probabilities with p = 0.5, validated against NIST Engineering Statistics Handbook and R's binom.test() function. "—" = no critical value exists for this α and n combination.
How the Sign Test Works: Hypotheses and Decision Rule
The Sign Test tests whether a population median equals a specified value. The structure below applies to both the paired version (comparing two conditions) and the one-sample version (comparing observations to a hypothesized median M₀).
Hypotheses
| Test Type | H₀ | H₁ |
|---|---|---|
| Two-tailed | Median = M₀ | Median ≠ M₀ |
| One-tailed (upper) | Median ≤ M₀ | Median > M₀ |
| One-tailed (lower) | Median ≥ M₀ | Median < M₀ |
Test Statistic and Decision Rule
The test statistic k is the count of the less-frequent sign:
For a one-tailed test, k is the count of the sign that contradicts H₁ (e.g., if H₁ says the median is larger, k = number of negative signs).
If k > kcrit → Fail to reject H₀ → Insufficient evidence at α
Underlying Binomial Distribution
Under H₀, each non-tied difference is equally likely to be positive or negative, so the number of positive signs X follows B(n, 0.5). The exact p-value is:
where X ~ B(n, 0.5). This exact calculation is what makes the Sign Test reliable even with small samples. The table critical values correspond to the threshold where this probability equals α.
How to Use the Sign Test Table: Step-by-Step
The procedure below applies whether you are testing two matched conditions (paired Sign Test) or comparing a single sample to a known median (one-sample Sign Test).
Step 1 — State Hypotheses and Choose α
Decide whether your test is one-tailed or two-tailed based on your research question, not after examining the data. Set α = 0.05 for most applications; use α = 0.01 when Type I error control is especially important (e.g., clinical trials). Two-tailed is the default unless prior theory firmly predicts a direction.
Step 2 — Compute Differences and Assign Signs
For paired data: subtract one measurement from the other (e.g., post − pre). Assign + if positive, − if negative. For one-sample tests: subtract the hypothesized median M₀ from each observation and assign the sign of that difference.
| Pair | Before | After | Difference | Sign |
|---|---|---|---|---|
| 1 | 72 | 81 | +9 | + |
| 2 | 65 | 58 | −7 | − |
| 3 | 88 | 88 | 0 | tie — discard |
| 4 | 74 | 90 | +16 | + |
Step 3 — Count n and k
n = total number of non-tied pairs (after discarding zeros). k = count of the less-frequent sign. If you have 14 positive signs and 6 negative signs (n = 20 non-tied pairs), then k = 6. The sign that appears fewer times is always the test statistic — regardless of which direction H₁ predicts.
Step 4 — Look Up k Critical
Select the correct table tab (two-tailed or one-tailed, α = 0.05 or 0.01). Find the row for your n. The cell value is kcrit. If your exact n is between two rows, use the row with the smaller n (conservative). Use the calculator above for any n between 5 and 50.
Step 5 — Apply Decision Rule and Report
k > kcrit → Fail to reject H₀ → No significant difference at α
Report: k value, n (effective), test direction, α, and your conclusion. Example: "Sign Test: k = 4, n = 20, two-tailed, α = 0.05 (kcrit = 5); reject H₀, the median post-treatment score significantly exceeds pre-treatment."
Worked Examples Across Research Fields
The following examples show the complete Sign Test procedure in three different settings. Each one walks through every step, from raw data to a conclusion.
Example 1: Patient Pain Scores Before and After Treatment
Scenario: A physiotherapist records pain scores (0–10 scale) for 15 patients before and after a 6-week treatment program. Pain scores are recorded on an ordinal scale, so a paired t-test is not appropriate. The physiotherapist uses a two-tailed Sign Test at α = 0.05 to determine whether the treatment changed pain levels.
| Patient | Before | After | Diff (After−Before) | Sign |
|---|---|---|---|---|
| 1 | 7 | 4 | −3 | − |
| 2 | 5 | 3 | −2 | − |
| 3 | 8 | 9 | +1 | + |
| 4 | 6 | 2 | −4 | − |
| 5 | 9 | 9 | 0 | tie |
| 6 | 4 | 1 | −3 | − |
| 7–15 | ... | ... | ... | 8 more −, 0 more + |
Solution
| Step | Action | Result |
|---|---|---|
| 1 | State H₀ and H₁ | H₀: Median diff = 0; H₁: ≠ 0; α = 0.05 two-tailed |
| 2 | Discard ties | 1 tie discarded → n = 14 |
| 3 | Count signs | + signs = 2, − signs = 12; k = min(2,12) = 2 |
| 4 | Look up kcrit | n = 14, two-tailed, α = 0.05 → kcrit = 3 |
| 5 | Decision | k = 2 ≤ 3 = kcrit → Reject H₀ ✓ |
Conclusion: Sign Test: k = 2, n = 14, two-tailed, α = 0.05. There is statistically significant evidence that pain scores changed after treatment (predominantly decreased, given 12 out of 14 non-tied patients showed improvement).
Example 2: Student Exam Scores Before and After Tutoring
Scenario: A school district pairs 20 students with tutors for one semester. Scores are recorded before and after. The district wants to know whether tutoring raised scores at α = 0.05, so they use a one-tailed test (H₁: scores improved).
Signs observed: 14 positive (score increased), 4 negative (score decreased), 2 ties. Effective n = 18 (after discarding 2 ties). k = min(14, 4) = 4. For a one-tailed test at α = 0.05 with n = 18, kcrit = 5 from the table. Since k = 4 ≤ 5, we reject H₀. Conclusion: Tutoring produced a statistically significant improvement in exam scores at α = 0.05 (one-tailed).
Example 3: Manufacturing Quality — One-Sample Sign Test
Scenario: A factory claims its components have a median weight of 50 g. A quality inspector measures 25 randomly sampled components. She subtracts 50 from each measurement and records the sign. She uses a two-tailed test at α = 0.05.
After measurement: 17 components above 50 g (+), 7 below (−), 1 exactly 50 g (tie discarded). Effective n = 24. k = min(17, 7) = 7. Table lookup: n = 24, two-tailed, α = 0.05 → kcrit = 7. Since k = 7 ≤ 7, we reject H₀. The median weight differs significantly from 50 g. The factory's quality claim is not supported by this sample.
The SIGNS Framework: A Memory Aid for the Sign Test Procedure
The SIGNS framework gives you a five-step procedure you can apply to any Sign Test problem without consulting a reference sheet. Each letter maps to one concrete action.
State H₀ and H₁ before looking at any data. Choose α (0.05 or 0.01) and decide between a one-tailed or two-tailed test based on your research question.
Subtract one value in each pair from the other. Assign + if positive, − if negative. Mark exact zeros as ties.
Remove all zero differences. Count the remaining + signs and − signs separately. Your effective sample size n = total non-tied pairs.
k = the count of whichever sign appears less often (two-tailed) or the count that contradicts H₁ (one-tailed). This is your test statistic.
Look up kcrit for your n and α. If k ≤ kcrit, reject H₀. Report k, n, α, test direction, and your substantive conclusion.
Large-Sample Normal Approximation (n > 50)
When the effective sample size exceeds 50, the exact binomial table is not needed. The binomial distribution B(n, 0.5) is well approximated by a normal distribution. The test statistic becomes a z-score:
Compare z to the standard normal critical values. For a two-tailed test at α = 0.05, reject H₀ if |z| ≥ 1.96. For one-tailed at α = 0.05, reject H₀ if z ≤ −1.645 (or ≥ 1.645). Most statistical software computes the exact p-value regardless of n, making the approximation mainly useful for hand calculation or understanding. Consult the Z-table for critical values.
Sign Test vs Related Tests: Which Should You Use?
Choosing among paired tests depends on your data's measurement scale, distribution, and what aspect of the difference matters to your research question.
| Feature | Sign Test | Wilcoxon Signed-Rank | Paired t-Test | McNemar's Test |
|---|---|---|---|---|
| Data type | Ordinal or higher | Ordinal or higher (rankable differences) | Continuous (interval/ratio) | Binary (yes/no) |
| Normality required? | No | No | Yes (or large n) | No |
| Uses magnitude of differences? | No — direction only | Yes — ranks | Yes — raw values | No |
| Statistical power | Lowest | Moderate | Highest (if assumptions met) | Moderate |
| Handles outliers well? | Yes | Yes | No | N/A |
| Best when... | Only direction known; data ordinal; extreme outliers present | Differences rankable but normality unverified | Differences approximately normally distributed | Categorical paired outcomes (before/after yes–no) |
Use the statistical test selector on Statistics Fundamentals to find the right test for your data automatically.
When to Use the Sign Test — and When Not To
Use the Sign Test when:
- Data are paired or matched
- The scale is ordinal — you can say which is higher but not by how much
- Normality cannot be verified, especially in small samples
- Only the direction of change matters (not magnitude)
- Extreme outliers are present that would distort the t-test
- A quick, distribution-free result is needed
Avoid the Sign Test when:
- Data are continuous and normally distributed (use the paired t-test — more power)
- Differences can be ranked (use the Wilcoxon Signed-Rank Test — more power)
- Observations are independent rather than paired
- The outcome is binary (use McNemar's Test)
- You need to estimate the size of the effect (the Sign Test gives no effect size)
Assumptions of the Sign Test
The Sign Test has fewer assumptions than parametric tests, but the following conditions still need to hold for the results to be valid.
Paired observations
Each observation in one group must be paired with exactly one observation in the other. The pairing should be natural (e.g., the same individual measured twice) or deliberate (matched subjects).
Ordinal or higher measurement
You must be able to determine which member of each pair is larger. Nominal data (categories with no natural order) cannot be used.
Independence between pairs
Each pair must be independent of all other pairs. If pairs are clustered (e.g., families, classrooms), standard Sign Test critical values may be invalid.
Continuous underlying distribution
The underlying variable should theoretically be continuous, so that exact ties have probability zero. In practice, ties do occur and are handled by exclusion.
Running the Sign Test in R, Python, and SPSS
Modern statistical software computes exact Sign Test p-values directly from the binomial distribution. The critical value table above gives the same decision threshold as these exact calculations.
R — binom.test()
before <- c(7, 5, 8, 6, 9, 4, 6, 8, 7, 5, 9, 7, 6, 8, 5)
after <- c(4, 3, 9, 2, 9, 1, 3, 5, 4, 2, 6, 4, 3, 5, 2)
diff <- after - before
# Count signs, exclude ties
pos <- sum(diff > 0) # = 1
neg <- sum(diff < 0) # = 13 (after 1 tie excluded)
n <- pos + neg # = 14
k <- min(pos, neg) # = 1
# Exact binomial test (two-tailed)
binom.test(k, n, p = 0.5, alternative = "two.sided")
# Or use the BSDA package
library(BSDA)
SIGN.test(before, after, alternative = "two.sided")
Documentation: R binom.test documentation — note that binom.test() with k = min(positive, negative) gives the correct two-tailed Sign Test p-value.
Python — scipy.stats.binom_test
import numpy as np
from scipy import stats
before = np.array([7, 5, 8, 6, 9, 4, 6, 8, 7, 5, 9, 7, 6, 8, 5])
after = np.array([4, 3, 9, 2, 9, 1, 3, 5, 4, 2, 6, 4, 3, 5, 2])
diff = after - before
# Exclude ties, count signs
diff_no_tie = diff[diff != 0]
n = len(diff_no_tie)
pos = np.sum(diff_no_tie > 0)
k = min(pos, n - pos)
# Exact binomial test
result = stats.binomtest(k, n, p=0.5, alternative='two-sided')
print(f"k={k}, n={n}, p-value={result.pvalue:.4f}")
Documentation: scipy.stats.binomtest — uses exact binomial probabilities, equivalent to the Sign Test critical value table.
SPSS — Analyze > Nonparametric Tests
In SPSS, navigate to: Analyze → Nonparametric Tests → Legacy Dialogs → 2 Related Samples. Move both variables into the "Test Pairs" box. Under "Test Type," check "Sign." Click OK. The output reports the exact binomial p-value, the count of positive signs, negative signs, and ties. Compare the reported p-value to your α to reach the same decision as the critical value table.
Excel does not have a built-in Sign Test function, but you can compute the exact p-value using =BINOM.DIST(k, n, 0.5, TRUE)*2 for a two-tailed test, where k = count of the less-frequent sign and n = effective sample size.
Common Mistakes with the Sign Test
Mistake 1: Including tied pairs in n
Including zero differences in n inflates the denominator and makes the test statistic look less extreme than it is. Always exclude ties from both the sign count and the effective sample size n before looking up the critical value.
Mistake 2: Using the count of the more-frequent sign as k
The test statistic k is always the count of the less-frequent sign. If you have 15 positive and 5 negative signs, k = 5, not 15. This is because small values of k are evidence against H₀ — if k is small, the data are lopsided in one direction.
Mistake 3: Choosing a one-tailed test after seeing the data
The direction of the one-tailed test must be specified before data collection. Switching from two-tailed to one-tailed after observing that the signs go in a particular direction doubles the effective Type I error rate. Pre-register your hypothesis to avoid this error.
Mistake 4: Using the Sign Test when the Wilcoxon Signed-Rank Test is available
The Sign Test is appropriate when only direction is known. If the differences can be ordered by magnitude (as is usually the case with numerical data), the Wilcoxon Signed-Rank Test uses more information and has greater power to detect a real difference.
Entity and Symbol Glossary
Every symbol and concept used in Sign Test analysis, with definitions and the most common source of confusion for each.
| Symbol / Term | Name | Definition | Common Error |
|---|---|---|---|
| k | Test statistic | Count of the less-frequent sign after discarding ties | Using the more-frequent sign count |
| kcrit | Critical value | Maximum k for which H₀ is rejected at α; from table or binomial CDF | Using wrong n (including ties) to look up kcrit |
| n | Effective sample size | Number of non-tied pairs; n = total pairs minus tied pairs | Using total pairs including ties |
| M₀ | Hypothesized median | The median value under H₀; often zero for paired differences | Confusing median with mean |
| α | Significance level | Probability of Type I error; typically 0.05 | Choosing α after seeing results |
| H₀ | Null hypothesis | Population median = M₀; signs are equally likely with p = 0.5 | Stating H₀ in terms of the mean |
| B(n, 0.5) | Binomial distribution | Distribution of sign counts under H₀; the basis of all critical values | Using normal approximation for small n |
| p-value | Exact p-value | P(X ≤ k) × 2 (two-tailed) where X ~ B(n, 0.5) | Interpreting p as the probability H₀ is true |
Frequently Asked Questions
What is the Sign Test table used for?
The Sign Test table provides critical values kcrit for a given sample size n and significance level α. You compare your test statistic k (the count of the less-frequent sign) against this threshold. If k ≤ kcrit, you reject H₀ and conclude the median differs from the hypothesized value. The table is derived from exact binomial probabilities with p = 0.5.
How do you find the Sign Test critical value for n = 20 at α = 0.05?
For n = 20, two-tailed test at α = 0.05: find the row n = 20 in the two-tailed α = 0.05 table. The critical value is kcrit = 5. This means: if you observe 5 or fewer of the less-frequent sign among 20 non-tied pairs, reject H₀. If you observe 6 or more, fail to reject H₀. Use the calculator above to look up values for any n from 5 to 50.
Is the Sign Test the same as the binomial test?
The Sign Test is a special case of the binomial test with the null hypothesis p = 0.5. In both tests, you compute the probability of observing as few or fewer of one outcome as observed, using the binomial distribution. The Sign Test applies this to the direction of differences in paired data. Statistical software (R, Python) can run the Sign Test directly using their binomial test functions with p = 0.5.
What sample size does the Sign Test require?
The Sign Test has no minimum sample size requirement in theory, because it uses exact binomial probabilities. In practice, the table above starts at n = 5 because smaller samples rarely have enough power to detect any difference — with n = 4 at α = 0.05, for example, it is impossible to reject H₀ even if all four signs go in the same direction. For n > 50, the normal approximation works well. For very small n (< 10), consider whether the Sign Test is the right tool given its low power.
Can the Sign Test be used for non-paired data?
Not in its standard form. The Sign Test is designed for paired or matched data, or for one-sample comparisons to a hypothesized median. For independent (unpaired) samples, the median test (an extension of the Sign Test idea) is the appropriate nonparametric alternative. For comparing two independent medians, the Mann-Whitney U Test is the standard nonparametric choice.
What is the p-value formula for the Sign Test?
The exact p-value for the two-tailed Sign Test is 2 × P(X ≤ k), where X follows a binomial distribution B(n, 0.5) and k is the count of the less-frequent sign. For a one-tailed test, the p-value is P(X ≤ k). In Excel: =BINOM.DIST(k, n, 0.5, TRUE) gives P(X ≤ k); multiply by 2 for two-tailed. In R: pbinom(k, n, 0.5) × 2 gives the two-tailed p-value.
Why are some cells in the Sign Test table blank?
A "—" in the table means no critical value exists for that combination of n and α. This happens when, even with all observations in one direction (k = 0), the probability P(X ≤ 0) = 0.5ⁿ exceeds α. For example, with n = 5 at α = 0.01 (two-tailed), the minimum achievable two-tailed p-value is 2 × (0.5)⁵ = 0.0625 > 0.01, so it is mathematically impossible to reject H₀ at this sample size and significance level.
What the Sign Test Table Tells You — and What It Does Not
Why kcrit Decreases as n Increases
With more pairs, you expect the signs to be more evenly split if H₀ is true. A very lopsided split (small k) therefore becomes stronger evidence against H₀. The binomial distribution narrows around n/2 as n grows, making even moderate imbalances statistically detectable. This is why a larger n can detect a smaller true effect.
Statistical Significance vs Practical Importance
Rejecting H₀ means the data are inconsistent with equal probabilities of + and − signs. It does not tell you the size of the effect. The Sign Test has no natural effect size measure. Report the proportion of positive signs (or the exact p-value) alongside the significance decision for a more complete picture.
The Sign Test Tests the Median, Not the Mean
Because the Sign Test discards magnitudes, it is a test about the median of the distribution of differences — not the mean. A significant result means the median of paired differences is unlikely to be zero (or the hypothesized value). This distinction matters when the mean and median differ substantially, as they do in skewed distributions. See the mean vs median guide for more context.