Flow Cytometry Time Parameter: Catching Clogs, Bubbles, and Flow Instability in an FCS File

flow cytometry time parameter clog bubble artifact troubleshootingOctober 8, 2026

Tube 7 reports a CD4:CD8 ratio of 1.4. Every other tube from the same donor reads close to 2, with the same stain, instrument and template. Before you touch a gate, plot Time against CD4. If the CD4+ cloud sits lower for the first stretch of the run and then jumps up, the gate is fine and the fluidics were not.

The flow cytometry time parameter is where clogs, bubbles and flow instability leave their fingerprint in an FCS file. This post covers how to read that parameter, tell the artifacts apart, and gate them out in a way you can defend to a reviewer.

What the time parameter records

Every event in an FCS file carries a timestamp. In FCS 3.x files the $TIMESTEP keyword gives the size of one time unit in seconds, so the Time channel converts directly to acquisition seconds (Spidlen et al., FCS 3.1 data file standard, Cytometry Part A). Two views of that channel do almost all the work:

  • Event rate over time: a histogram of Time, which shows how many events arrived in each interval. This is your flow-rate trace.
  • Each parameter against time: a dot plot of Time on the x-axis against FSC-A, SSC-A and every fluorescence channel. This shows whether a signal held steady while the tube ran.

The time gate belongs at the top of the gating hierarchy: time, then FSC/SSC, then singlets, then live/dead, then lineage. Every gate downstream inherits whatever the time gate lets through.

Step 1: Plot event rate against time for every tube

A clean acquisition gives a flat plateau. A gentle downward slope late in a long run is common as the tube depletes or cells settle, and on its own it is not a reason to exclude anything. What you are looking for is a discontinuity:

  • a segment where the rate falls to zero and then resumes
  • repeated spikes and dropouts, where the rate swings to zero and back several times
  • a step change, where the rate settles at a new level partway through

Check every tube, including the ones whose results look plausible. A tube with a brief bubble or partial clog can still give a plausible CD4 percentage.

Step 2: Plot FSC, SSC and each fluorescence channel against time

A flat event rate does not prove the signals were stable. When the flowClean authors screened 29,228 public FCS files, 13.7% had a fluorescence anomaly. They noted that the impact of instability can differ between samples and between parameters within one sample (Fletez-Brant et al., Cytometry Part A, 2016). A disturbance can show in one detector and leave the rest untouched.

Include the scatter channels. The scatter gate comes next in the hierarchy. A burst of events with shifted FSC or SSC will land partly inside your lymphocyte and monocyte scatter gates and contaminate them.

Step 3: Match the pattern to its cause

Use the table below as a first-pass triage. The patterns are typical, not diagnostic, so confirm them against what happened at the instrument.

What the time plots showLikely causeWhat to do with the data
Event rate drops to zero for a stretch, then resumesFull clog that cleared, or the sample line ran dryExclude the gap and the restart. Events right after a clog clears often include aggregates.
Repeated spikes and dropouts, with scatter and fluorescence jumping at the same timestampsAir bubble in the sample line or flow cellExclude each disturbed window. Flush the instrument before the next tube.
Rate sputters or sags, then a burst with high FSC and more doubletsPartial clog from cell clumpsExclude the burst. Filter the remaining sample through a strainer cap before re-running.
The first seconds sit at a different intensity, then settleStream not yet stable, or carryover from the previous tubeExclude the opening segment
One or more channels drift slowly across the whole run, event rate steadyNot a fluidics event: sample temperature, dye behaviour in the tube, or a bench problemA time gate cannot fix this. Investigate the cause; see tandem dye degradation in PE-Cy7 and APC-Cy7 if the drifting channel is a tandem.
Common Mistake Treating instrument drift as a time-gate problem. If your daily bead values moved, every tube from that session is shifted. The fix is at the instrument level, through daily bead QC and Levey-Jennings tracking, not by trimming the time axis.

Step 4: Draw the time gate first, on a stable segment

Gate on Time against FSC-A or your brightest marker, and include only the stable region. Three rules keep the gate defensible:

  1. Keep contiguous segments with the same signal level. If the run has two stable stretches at different intensities, keep one. Splicing them together builds a mixed population that no single gate can split correctly.
  2. Exclude a margin around each disturbance. The visible spike is usually the centre of the problem, not its whole extent.
  3. Record the percentage of events removed for every tube. If one tube loses far more than its batch-mates, that tube needs a second look before its numbers go in a figure.

Then build the rest of the hierarchy as usual. A clog burst inflates the doublet count, so the time gate also makes your FSC-A versus FSC-H doublet discrimination cleaner. The full ordering is laid out in how to set up a gating strategy.

Step 5: Decide when a tube cannot be rescued

Trimming is a salvage step, not a guarantee. Re-acquire, if material remains, when any of these apply:

  • No stable segment exists. Instability across the whole run means there is nothing clean to keep.
  • Too few events survive. The rare population you care about must still have enough events for its frequency to mean something. The arithmetic is in how many events a rare population needs.
  • Time is your readout. In a kinetic assay such as calcium flux, Time is the experimental axis. Cutting a window removes part of the response you are measuring, so a disturbance during the response invalidates the tube.

Automating time-parameter QC across a batch

Inspecting time plots by hand works for a dozen tubes and fails at a few hundred. Three open algorithms are widely used, and they look for different things:

  • flowAI checks three things in turn: abrupt changes in flow rate, unstable signal acquisition, and events at the lower limit or upper margin of the dynamic range. It produces a quality summary per file (Monaco et al., Bioinformatics, 2016).
  • flowClean tracks how population frequencies change during acquisition. It flags time periods where a perturbation creates a false population, and writes the flags into a new parameter that you can review and gate on.
  • PeacoQC finds density peaks per channel and removes events by their distance from those peaks. In its benchmark against flowAI, flowClean and flowCut, it was the only method that handled every anomaly type in flow, mass and spectral data (Emmaneel et al., Cytometry Part A, 2022).

Run one method with one parameter set across the whole batch, and record the tool and version. Still open the time plots for any file that loses an unusual share of events. An algorithm that removes 40% of a tube has found something to explain before you discard it.

Reporting the time gate

The time gate is part of your gating strategy, so it belongs in the data analysis section of a MIFlowCyt-compliant methods section. Say whether exclusion was manual or automated, name the algorithm if one was used, and report the range of events excluded per sample.

Cytomaton’s automated QC checks each FCS file for time-gate anomalies, doublet rate and low event counts, and badges the file as passed, flagged or error. The time-gate threshold can be configured per experiment, so a batch can be triaged before anyone opens a gating tree. For larger studies, the batch template workflow applies the same downstream hierarchy across up to 100 files per job. Check the time gate on each file, though: disturbances fall at different timestamps in every tube, so a time gate copied unchanged from one file is rarely right for the next.

Try Cytomaton

AI-assisted flow cytometry analysis that learns your gating style. Free during beta.

Join the beta