TrueGate Bio · Analytics Case Work

Cross-site MFI drift, caught with bead QC

Is a creeping bead signal at one site normal variability, or drift that changes results? Levey-Jennings charts, Westgard rules, and a split-sample check.

Synthetic data, built to demonstrate the method

The question

Three sites run the same flow cytometry release panel. Daily bead QC at one site has been creeping upward, and the explanation on the table is "normal instrument variability." Is it, and does it matter for results?

The analysis

2026-09-25T02:57:45.589242 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/

Control limits come from each site's own baseline window, and each day is tested against Westgard rules: a single point beyond 3 SD (1-3s), two consecutive beyond 2 SD on the same side (2-2s), and ten consecutive on one side of the mean (10x).

SiteFirst rule violationShift, days 21 to 30 vs baseline
Site Anone0.7%
Site Bnone0.2%
Site Cday 21 (1-3s)8.7%

Sites A and B stay inside their limits. Site C breaks rules within days of the change and keeps climbing: a steady, one-directional shift is drift, not variability. Random noise does not trend.

2026-09-25T02:57:45.630258 image/svg+xml Matplotlib v3.10.9, https://matplotlib.org/
Why it matters. A brighter channel moves a dim population across a fixed gate. The same sample reads several points higher at Site C, which is enough to move a result across a specification without any change in the product.

What to do

  • Treat the Westgard violation as a trigger for instrument investigation (laser power, PMT voltage, fluidics), not as a trend to watch.
  • Standardize to target MFI values with beads before each run, so voltage is adjusted to hit the same bead value at every site.
  • Review results released from Site C since the first violation for dim-marker impact.

How it was done

Synthetic daily PE bead MFI for three sites over 30 days, with a gradual shift introduced at one site from day 18. Limits from days 1 to 10; Westgard 1-3s, 2-2s, and 10x rules. The split sample simulates a dim, log-normal population read through each site's day-28 gain against a fixed gate. Download the data (CSV).

Back to all work   Discuss a similar problem