Skip to content
Provenza
All posts
ReproducibilityProtocol driftLab practice

The drift you never wrote down

Preclinical results fail to reproduce not because the science is wrong, but because the run that worked and the run that did not were never actually the same run.

ME

Dr. Maya Ellison

Co-founder and CEO · July 5, 2026 · 5 min read

The gap between "it worked" and "it works"

Somewhere between half and two-thirds of published preclinical results do not reproduce cleanly when another group, or the same group months later, tries to repeat them. That number gets quoted a lot, usually to argue that a field is in crisis. It is not a crisis of honesty. Most failed reproductions are not fraud, and they are rarely even bad science. They are a bookkeeping failure.

Here is the uncomfortable part. When an experiment works the first time and fails the second, the two runs were almost never identical. Something changed: a reagent lot, an incubation that ran ten minutes long, a different person at the bench with a slightly different pipetting rhythm. The result did not drift. The protocol drifted, and nobody wrote it down.

The gap is not in the biology. It is in the record.

What actually goes missing

Ask a scientist to hand you the protocol for an experiment that worked six months ago and you will usually get a document that is roughly right and specifically wrong. The steps are there. The exact conditions are not.

Three kinds of information tend to evaporate between the first run and the rerun.

Reagent lots. A protocol says "add 5 percent BSA." It does not say which vendor, which catalog number, which lot, or that the lot changed in March. Antibodies are the worst offenders. Two lots of the same catalog antibody can differ in affinity by an amount that quietly moves a band.

Timing and conditions. "Incubate overnight" means 14 hours to one person and 19 to another. "Room temperature" is 21 degrees in winter and 26 in July if the HVAC is honest about it. These ranges feel harmless until a result sits near a threshold.

Operator variation. Two competent scientists running the same written protocol will not run the same actual protocol. Wash timing, how hard the plate gets tapped, how long cells sit in trypsin before neutralizing. None of it is in the notebook, because none of it felt worth writing.

Each of these is small. The problem is that they compound, and they are invisible in exactly the moment you need them: after the result changed, when you are trying to work out why.

A worked example: the band that moved

Consider a Western blot for a phosphorylated signaling protein, run to show that a compound reduces phosphorylation. First run, clean result: strong band in the control, faint band in the treated lane. The effect is obvious. The figure goes into the deck.

Three months later a new lab member repeats it to extend the study. Same antibody catalog number. Same protocol document. This time the treated band is nearly as strong as the control. The effect is gone.

Now the debugging starts, and it takes two weeks. They re-run the compound. They check the cells. They re-image. Eventually someone notices the primary antibody is a new lot, ordered in April when the old one ran out. The new lot binds a little more avidly. On the first run the phospho-signal was low enough that the difference between lanes was easy to see. On the second, the more sensitive lot pulled the treated band up out of the noise, and the contrast collapsed.

Nothing was done wrong. The compound still works. But the written protocol said "anti-phospho antibody, 1:1000" and stopped there. It did not record the lot, so nobody knew a variable had changed until they had burned two weeks and a lot of reagent ruling out everything else first.

qPCR fails the same way, more quietly. A master mix lot changes and shifts baseline Ct by half a cycle across the plate. Every sample moves together, so the raw numbers still look plausible, and the fold-changes drift just enough to flip a marginal call. If the lot and the plate layout were not captured, there is nothing to point at. You are left staring at biology that never changed.

The record has to be built while you work

The instinct after a failure like this is to write more detailed protocols. That helps, a little. But detailed protocols decay the same way the original did, because the detail that matters is the detail that changes at the bench, in the moment, and a document written in advance cannot capture a lot number that will not exist until next April.

The record has to be built as the work happens, not reconstructed afterward from memory and a mostly-right document. Every reagent and lot as it goes in. Every actual incubation time, not the planned one. Who ran it. What deviated. Captured at the bench, versioned, so that when a result moves you can line up the run that worked against the run that didn't and see the one thing that differed, instead of guessing for two weeks.

That is the whole game. Reproducibility is not a property of a clever experiment. It is a property of a complete record. The experiments in the irreproducibility statistics were not worse than yours. Their authors just could not prove, later, exactly what they had done, and neither could anyone else.

Takeaway

The next time a result you trusted stops reproducing, resist the urge to blame the biology first. Ask what changed that you never recorded. Pull the reagent lots, the real timings, the operator. Most of the time the answer is sitting in the gap between what you did and what you wrote down. Close that gap while you work, and the reruns start to agree.

Read next

Version your experiments like software

Read