Why Repeated P-Value Peeking Is a Different Procedure
A p-value below a chosen cutoff is often treated as a signal to stop collecting data and declare a result. But if the same cutoff is checked repeatedly as data accumulate, the procedure is no longer a single test at that cutoff. Each look creates another opportunity to cross the boundary. A sequence of individually reasonable calculations can therefore produce a decision rule with a higher overall false-positive probability than the nominal cutoff suggests.
The issue is not that every p-value computed at an interim look is automatically invalid. Under the assumptions of a correctly specified one-look test, its p-value has the usual null calibration at that look. The problem is using those p-values as repeated chances to reject \(H_0\), while interpreting the final decision as though only one test had been performed.
For this tutorial, consider two-sided tests of \(H_0:\mu=0\) using independent observations from a normal population with known standard deviation \(\sigma=1\). At sample size \(n\), the statistic is \(Z_n=\sqrt{n}\bar{x}\), and the two-sided p-value is \(2[1-\Phi(|Z_n|)]\), where \(\Phi\) is the standard normal cumulative distribution function. Under \(H_0\), the observations are independent and normally distributed with mean zero and variance one, so each fixed-look \(Z_n\) has the standard normal distribution. These assumptions make the example transparent; other analyses require their own suitable test and assumptions.
If a one-look test has significance level \(\alpha=0.05\), its null rejection probability is at most 0.05; it is exactly 0.05 when the test is exact at that level. That statement applies to the test at a specified look. It does not, by itself, guarantee that a procedure which checks at several looks and stops at the first crossing has overall error probability at most 0.05.
A Cumulative-Look Example
Suppose observations arrive in blocks of ten. The analyst checks the two-sided p-value after \(n=10\), \(n=20\), and \(n=30\), stopping if any p-value is below 0.05. The observations below are a clearly hypothetical sequence of simulated standard-normal outcomes under \(H_0\). To keep the arithmetic readable, the block sums are reported to four decimal places; the corresponding cumulative sums give the displayed test statistics.
Worked Example: Following P-Values Across Three Looks
The first block of ten observations sums to 3.7947. The second block sums to 2.6899, and the third block sums to 4.7415. Thus, the cumulative sums at \(n=10,20,30\) are approximately 3.7947, 6.4846, and 11.2261.
At \(n=10\), \(Z_{10}=3.7947/\sqrt{10}=1.200\), giving the two-sided p-value \(2[1-\Phi(1.200)]\approx0.2301\). This look does not cross 0.05.
At \(n=20\), \(Z_{20}=6.4846/\sqrt{20}=1.450\), giving \(2[1-\Phi(1.450)]\approx0.1471\). This look also does not cross 0.05.
At \(n=30\), \(Z_{30}=11.2261/\sqrt{30}=2.050\), giving \(2[1-\Phi(2.050)]\approx0.0404\). This p-value is below 0.05, so the stated rule stops and rejects \(H_0\) at the third look.
The arithmetic at each look is consistent with a one-look normal test under the stated model. Nevertheless, because the sequence was examined three times and rejection was allowed at any of them, the rule is a repeated-look procedure. If this sequence is generated under the null as stipulated, the final rejection is a false rejection for this simulated path. One path illustrates how it can happen; it does not establish the procedure’s overall error probability.
The statistics at the looks are not independent. For \(m\le n\), the first \(m\) observations contribute to both \(Z_m\) and \(Z_n\). Under the independent, unit-variance normal model, their correlation is
For example, the correlation between \(Z_{10}\) and \(Z_{20}\) is \(\sqrt{10/20}\approx0.7071\). A crossing at one look therefore provides information about the statistic at nearby cumulative looks. It would be incorrect to treat the p-values as independent opportunities when calculating the overall error rate. The earlier material on dependence between cumulative interim tests explains why this shared data matters.
What the Simulation Diagnoses
A null simulation makes the repeated decision rule visible across many hypothetical studies. In each replicate, generate observations under \(H_0\), calculate the p-values at the planned looks, and record whether any p-value falls below the fixed cutoff. The fraction of replicates with at least one rejection estimates the procedure’s overall Type I error probability under the simulated model.
Worked Example: Estimating Error With a Null Simulation
Imagine a simulation of 10,000 hypothetical studies under the normal null model above. Each study is checked at \(n=10,20,30\), with rejection if any two-sided p-value is below 0.05. Suppose 867 of the 10,000 studies reject at least once.
The estimated overall rejection probability is \(867/10{,}000=0.0867\), or 8.67%. This is an estimate for the whole repeated-look rule, not for one individual p-value calculation. It is notably higher than the 5% per-look cutoff, although Monte Carlo variability means the estimate will vary from one simulation run to another.
An approximate Monte Carlo standard error is \(\sqrt{0.0867(1-0.0867)/10{,}000}=0.00281\), or about 0.281 percentage points. This describes simulation noise in the estimated proportion; it does not remove or correct the error inflation in the decision rule. Nor does one hypothetical simulation prove an exact error rate. It diagnoses the likely size of the problem under the specified model and schedule.
The simulation must represent the intended procedure faithfully. Each replicate must use the same null model, look times, test, cutoff, and stopping rule. Counting only rejections at the final look would answer a different question from counting rejection at any look. Likewise, simulating an alternative hypothesis would estimate rejection probability under that alternative, not Type I error under \(H_0\).
A concise way to state the repeated decision is: reject if at least one look rejects. For three looks, the overall error event is the union of the three look-specific rejection events. Its probability depends on how those events overlap; it is not found by simply treating the p-values as independent. The union bound gives an upper bound, but a simulation under the specified joint data-generating process can estimate the probability directly.
where \(R_j\) denotes rejection at look \(j\). This expression identifies the relevant error event. The key diagnostic is to count a simulated replicate as a rejection if the rule would have rejected at any permitted look, not merely if the last p-value is significant.
How to Diagnose and Avoid the Pitfall
When reviewing a report or planning an analysis, ask what the actual decision rule was. Did the investigators choose one sample size and test once, or did they inspect interim results and stop when a threshold was crossed? A statement such as “the p-value was 0.04” is incomplete for evaluating the repeated procedure unless the number and timing of earlier looks, and the stopping rule, are also known.
- Count the looks. Include each analysis that could have triggered stopping or changed the analysis plan, not just the final analysis that appears in a report.
- Specify the rejection event. “Any p-value below 0.05” differs from “the p-value at the one prespecified final look is below 0.05.”
- Check the null calibration of the whole rule. A null simulation can help when the model and monitoring schedule are clear; its replicate-level outcome must be rejection at any look.
- Do not assume independent p-values. Cumulative tests share observations, so the look-specific statistics are dependent.
- Keep the scope of the conclusion clear. A single observed p-value does not reveal the overall error probability of a procedure whose earlier looks and stopping rule are unknown.
The main alternatives are not interchangeable. A single prespecified analysis avoids repeated testing by making the formal decision at one planned look, though it may not suit every monitoring need. A sequentially calibrated design plans the looks and uses decision boundaries chosen to control the overall error rate. Simply continuing to use 0.05 at every look is not a substitute for that calibration. Informal, unplanned peeking may be useful for operational awareness, but treating its first crossing as a confirmatory result requires accounting for the monitoring process.
Worked Example: Interpreting a Reported Crossing
Suppose an analyst reports that a two-sided p-value was 0.0404 at \(n=30\), after also checking at \(n=10\) and \(n=20\). The protocol was to stop and reject \(H_0\) at the first look with p-value below 0.05.
The arithmetic supports the statement that the one-look p-value at \(n=30\), under the stated normal model, is approximately 0.0404. It does not support describing the procedure as a single prespecified 5% test: the decision rule allowed rejection at any of three looks. To assess that rule’s overall null error probability, count a null replicate as a rejection if any of its three p-values crosses 0.05, or use a design with boundaries calibrated for the planned monitoring.
If the analysis had instead been fixed in advance at \(n=30\), with no decision based on the interim p-values, the final-look test would have a different rejection rule. The same observed numerical p-value can therefore arise in two procedures with different error properties. The stopping and monitoring plan is part of the method, not incidental background.
Common Mistakes and Limits
The most common mistake is to reason, “Each test uses \(\alpha=0.05\), so the chance of a false positive is 5%.” That conclusion applies to a single test at a fixed look, not automatically to the event of rejecting at least once across repeated looks. The correction is to define the full decision rule and evaluate its overall null rejection probability.
Another mistake is to claim that every interim p-value is “wrong” after peeking. The calculations may still be valid p-values for their respective fixed-look tests under the model. What fails is the unadjusted interpretation of the data-dependent stopping decision as if it had been a single test. Conversely, observing that p-values are dependent does not make repeated peeking harmless: dependence changes the amount of inflation, but does not establish that the overall error remains at the per-look level.
A simple simulation is informative only for the conditions it represents. If the outcome distribution, variance, look timing, missing-data process, or test statistic differs materially from the simulation, its estimated error rate may not apply. A finite simulation also has Monte Carlo uncertainty. It is a diagnostic for a specified procedure, not a universal correction or a guarantee for an unmodeled design.
Check Your Understanding
Answer each question, then compare your reasoning with the solutions below.
- An exact 5% test is performed at each of four looks. Does that fact alone establish that the chance of at least one false rejection is exactly 5%?
- At a look with \(Z=1.45\), calculate the two-sided standard-normal p-value to four decimal places. Is it below 0.05?
- In 5,000 null-simulation replicates, 430 trigger rejection at any look. What overall rejection proportion was estimated?
- Why should cumulative-look test statistics not be treated as independent in the example?
Solutions. (1) No. Each test has a 5% null rejection probability at its own look, but the overall probability is the probability of rejection at least once; it depends on the joint distribution of the tests. (2) \(2[1-\Phi(1.45)]\approx0.1471\), which is greater than 0.05. (3) \(430/5{,}000=0.0860\), or 8.60%; this estimates the overall rejection probability for the simulated rule. (4) The cumulative statistics reuse earlier observations. Under the independent, unit-variance normal model, \(\operatorname{Corr}(Z_m,Z_n)=\sqrt{m/n}\) for \(m\le n\), so the statistics are correlated.