What Is Per-Protocol Analysis in Clinical Trials?

Per-protocol analysis is a way of analyzing clinical trial results that includes only the participants who followed the study plan exactly as designed. If someone dropped out early, missed doses, switched treatments, or violated the study rules in any significant way, their data gets excluded. The goal is to estimate how well a treatment actually works under ideal conditions, when patients take it precisely as directed.

This approach stands in contrast to the more commonly used intention-to-treat analysis, and understanding the difference between them is essential for interpreting any clinical trial you encounter.

How It Differs From Intention-to-Treat Analysis

The two main ways to analyze a clinical trial ask fundamentally different questions. Intention-to-treat (ITT) analysis includes every single participant based on the group they were originally assigned to, regardless of whether they finished the study, took the treatment correctly, or even took it at all. This mirrors what happens in real clinical practice: doctors prescribe a treatment, and some patients skip doses, stop early, or switch medications. ITT captures that messy reality and tells you how effective a treatment is in the real world.

Per-protocol analysis strips away that messiness. It asks: if everyone followed the treatment plan perfectly, would this treatment work? Only participants who met the inclusion criteria, completed the full course of treatment as instructed, and had their outcomes properly measured make the cut. Everyone else is dropped from the dataset.

Because of this filtering, per-protocol analysis is more likely to detect a difference between the treatment and control groups than ITT analysis. That makes intuitive sense. You’re comparing the treatment’s performance among people who actually used it correctly against a control group that also followed their protocol. The signal is cleaner, but the picture it paints is more optimistic than what you’d see in everyday medical practice.

Why Per-Protocol Results Can Be Misleading

The biggest concern with per-protocol analysis is that it can quietly introduce bias by breaking the protection that randomization provides. When researchers randomly assign participants to groups at the start of a trial, the groups are balanced. Known and unknown factors that could influence outcomes (age, disease severity, genetics, lifestyle) are distributed roughly equally. This balance is what makes randomized controlled trials so powerful.

Excluding non-compliant participants disrupts that balance. The people who drop out or deviate from the protocol are rarely a random sample. They may be sicker, experiencing more side effects, less motivated, or facing barriers that also affect their health outcomes. Removing them can create groups that are no longer comparable in meaningful ways, and any difference in outcomes might reflect those imbalances rather than the treatment itself.

The Cochrane Handbook for Systematic Reviews, a leading methodological reference, explicitly flags this problem. It notes that prognostic factors may influence whether individuals adhere to their assigned intervention, making naive per-protocol analyses problematic. For this reason, Cochrane recommends that systematic reviews prioritize ITT results when assessing the effect of being assigned to a treatment.

What Gets Excluded

The specific reasons for excluding a participant vary from trial to trial, and researchers define them in advance in the study protocol. Common reasons include:

  • Missed treatments or doses: In one trial studying weekly injections during pregnancy, participants were classified as deviating from protocol if they missed more than one injection. That threshold is a judgment call. The same trial could have defined it less strictly, such as more than three missed injections, and the resulting dataset would look quite different.
  • Early withdrawal: Participants who leave the study before the planned endpoint, whether due to side effects, loss of interest, or life circumstances.
  • Treatment switching: Participants assigned to one group who end up receiving the other group’s treatment.
  • Eligibility violations: Participants who were enrolled but later found to not meet the original selection criteria.

The flexibility in defining these thresholds is itself a source of concern. Researchers could, intentionally or not, choose cutoffs that produce more favorable results.

Modified Intention-to-Treat: A Middle Ground

Between the strict extremes of ITT and per-protocol sits a hybrid approach called modified intention-to-treat (mITT) analysis. This starts from ITT principles but applies a small, clearly defined set of exclusions. The most common version includes all patients who received at least one dose of the study treatment, regardless of what happened afterward. Another version excludes patients who had major protocol violations, such as not meeting the original selection criteria.

The key rule for a valid mITT analysis is that the exclusion criteria must be simple, objective, and unrelated to the outcome being measured. If researchers know that patients with a certain characteristic are less likely to respond to treatment, they cannot use that characteristic as a reason to exclude them. Doing so would defeat the purpose of randomization.

In practice, many trials described as using ITT analysis actually use a modified version because some participants inevitably have missing outcome data. A trial cannot include a participant’s results if those results were never collected. This is common enough that the Cochrane Handbook specifically warns readers that even analyses labeled as ITT may exclude participants with missing data and carry some risk of bias.

When Per-Protocol Analysis Is Useful

Despite its limitations, per-protocol analysis serves a real purpose. It answers the question patients often care about most: if I actually take this treatment as prescribed, how likely is it to help me? That biological efficacy question is distinct from the population-level effectiveness question that ITT addresses.

Per-protocol results are also valuable when a trial’s ITT analysis shows no benefit. If the per-protocol analysis also shows no benefit, that’s a strong signal that the treatment genuinely doesn’t work, because even under ideal adherence conditions it failed to outperform the control. If the per-protocol analysis does show a benefit while ITT doesn’t, that suggests the treatment may work but faces real-world barriers like poor tolerability or complicated dosing schedules.

Many well-designed trials report both analyses side by side. When the ITT and per-protocol results agree, you can feel more confident in the findings. When they diverge, it signals that adherence played a major role and the real-world effectiveness of the treatment may be lower than its biological potential.

How to Read Studies That Use It

When you encounter a study that reports per-protocol results, a few things are worth checking. First, look at how many participants were excluded and why. If a trial randomized 500 people but the per-protocol analysis only includes 300, that’s a 40% exclusion rate, and the results should be interpreted cautiously. The more participants excluded, the more likely the remaining groups differ in ways that bias the outcome.

Second, check whether the study also reports ITT results. Reporting only per-protocol findings without an ITT comparison is a red flag in most trial designs, because it makes it impossible to assess how much the exclusions affected the conclusions. Third, look at whether the exclusion criteria were defined before the trial started or after data collection. Pre-specified criteria are far more trustworthy than post-hoc decisions about who to include.

Modern statistical methods can now estimate per-protocol effects while adjusting for the factors that influenced adherence, reducing (though not eliminating) the bias of the traditional approach. These techniques are increasingly recommended over the naive version that simply drops non-compliant participants from the dataset.