Open research · celiac disease
Celiac trials can't see the drugs they're testing
Two drugs protected the gut about as well as each other. One is the only celiac drug that ever passed this test. The other was written up as a failure.
TL;DR
Three trials fed patients gluten and measured how badly it wrecked the lining of their gut. Two of the drugs worked about as well as each other: ZED1227 prevented 79% of the damage, TAK-101 prevented 71%. ZED1227 is the only celiac drug that has ever passed this test. TAK-101 was written up as a failure.
The difference is that TAK-101 only had 13 patients per arm. That small, the drug had to prevent 95% of the damage for the trial to have a fair shot at showing anything, and no celiac drug has ever come close to 95%. Give TAK-101 the 34 patients per arm that ZED1227 had and it passes comfortably. KAN-101 had the same problem at 25 per arm: it needed 86%, so even a drug as good as ZED1227's would have come back looking like nothing.
These trials keep coming out too small because they assume the measurement noise is a fixed number. It isn't. The harder the gluten hits, the more patients differ from one another, so the noise grows right along with the damage (SD = 0.400 + 0.299 × injury, from 16 arms across 6 trials). Get that number wrong when you write the protocol and you have decided the outcome before anyone enrolls.
None of this shows the drugs work. It shows we don't know. A trial too small to see anything is not evidence that there was nothing to see, and that is how the field has been reading these.
I got several things wrong in earlier versions of this. The corrections, and the arithmetic behind them, are in the repo.
The miss that wasn't
| Trial | n/arm | Delivered | Needed | Reported |
|---|---|---|---|---|
| ZED1227 (CEC-3) | 34 | 79% | 54% | p < 0.001 · hit |
| TAK-101 Phase 2a | 13 | 71% | 95% | p = 0.08 · miss |
| KAN-101 SynCeD | 25 | -39% | 86% | null · miss |
TAK-101 delivered basically what ZED1227 delivered, and ZED1227 is the only celiac drug ever to clear a histologic primary. At ZED1227's sample size TAK-101 would have had 92% power instead of 55%. So its failure is a sample-size artifact, not a result about the drug.
Try it
Noise isn't a constant, it grows with how hard the challenge hits. Set the injury, the trial size, and a true drug effect, and see what the trial could have caught.
- Endpoint SD at this injury
- 0.582
- Smallest effect this design can find
- 0.461
- Min protection for 80% power
- 76%
- Patients/arm needed for 80% power
- 34
SD = 0.400 + 0.299 × |injury| = 0.582 at injury 0.61. Two-arm parallel, α = 0.05, fitted on 16 arms from 6 trials.
Noise scales with injury
One pooled SD used to be the headline here. I was wrong. Across 16 published arms from 6 trials:
SD = 0.400 (±0.024) + 0.299 (±0.073) × |injury| r = 0.91
The floor is what the assay costs you when nothing happens: biopsy siting, orientation, reading. The slope is patient heterogeneity in response. A harsher gluten challenge buys signal and noise, so the lever saturates. A 10 g/day challenge cuts required N from 58 → 20 per arm for 50% protection, not the 93 → 15 I claimed here before, back when I was treating SD as constant.
| Challenge injury | SD | N/arm (50%) | If SD were constant |
|---|---|---|---|
| 0.20 | 0.460 | 332 | 533 |
| 0.61 | 0.582 | 58 | 58 |
| 1.00 | 0.699 | 31 | 22 |
| 1.53 | 0.857 | 20 | 10 |
| 2.50 | 1.147 | 14 | 4 |
The trials that guessed the noise wrong
Sample size is a function of an assumed SD, written into the protocol before anyone sees data. Those assumptions are public. Almost nobody checks them.
| Trial | Assumed SD | Observed | Claimed | Actual |
|---|---|---|---|---|
| ZED1227 (CEC-3) | 0.80 | 0.481 | 80% | 100% |
| KAN-101 SynCeD | 0.50 | 0.662 | 94% | 78% |
| IMGX003 CeliacShield | 0.45 | 0.548 | 86% | 73% |
The one trial that was pessimistic about its own noise is the one that worked. KAN-101 and IMGX003 both assumed less than they measured, and both missed. Three more trials (TAK-101, TAK-062, PRV-015) ran VH:CD and powered on something else entirely (IFN-γ, symptoms, PRO), so their histology was exploratory by design.
Reader error is the smallest term
Takeda measured the split directly in TAK-062 (UEG Week 2025):
Averaging 4 biopsy fragments instead of 1 at a typical challenge cuts required N from 58 → 48 per arm. It saturates fast, because patient variance doesn't shrink no matter how many fragments you take. And the usual vendor pitch, reader harmonization, is aimed at the 1% term.
Holdout check
Fit without KAN-101 and TAK-101, the two headline trials, then ask the model to predict their arm SDs from injury alone. MAE = 0.094. If this were an in-sample coincidence, that is where it would have shown up.
Limitations
- The injury model is 16 arms from 6 trials. It is still a straight line through a modest cloud, and the harshest-challenge point rests on n = 7.
- Change-score SDs and ANCOVA-residual SDs are different quantities. Both are tagged, and neither is silently averaged into the other.
- Takeda's 1% reader share is measured after averaging multiple readers, so it is a floor rather than a like-for-like comparison with single-reader studies.
- None of this says these drugs work.It says what these trials could have detected. Underpowered isn't the same as ineffective, which is the whole point of the TAK-101 row.
Everything is open
Code, curated data, and the research dossier are all in the repo. Every input is public, so there is no data access committee and no private slides here. At a typical challenge, detecting a 0.40 effect still wants about 34 patients per arm. If you run celiac trials and think this is wrong, open an issue. I would rather be wrong in public and corrected fast.
Injury model and trial data from public ClinicalTrials.gov records and published papers (ZED1227 NEJM 2021; IMGX003 / CeliAction Gastroenterology; Takeda UEG 2025 MP739). Measurement-error constants from Taavela et al., PLoS One 2013.
Built because the gap turned out to be arithmetic nobody had bothered to do.