SmoothJohn
web-native flow cytometry

Your FlowJo gates, reproduced to the decimal — then run at a scale the desktop can't.

FlowCyto imports your .wsp, re-derives every gate, frequency, and MFI, and shows you the delta against FlowJo — within tolerance, by construction. Then it opens full spectral panels and whole plates in the browser, with no RAM ceiling and no downsampling.

start free · no dongle · no credit card

CD4-BV421 × CD8-APC
quadrant gate
density
spec@v7 · inputs@9f0e1d2c · engine@v0.1.0100,000 events
concordance · vs flowjo

Your numbers come with you — exactly.

Switching tools means betting that the new one lands populations where the old one did. So we make the bet checkable: import a FlowJo workspace and FlowCyto re-runs the gating hierarchy on your events, then reports every %-of-parent and MFI side by side with FlowJo and the delta.

  • Logicle / biexponential axes
  • Spillover compensation
  • Spectral unmixing
  • Polygon · quadrant · ellipse gate geometry

The logicle transform we use is the published Parks–Moore–Roederer formulation — not a proprietary black box — so the math that places a cell is auditable, and reproducible on your machine or ours.

Import a .wsp and reproduce this on your files
concordance_report · 14-color panel 7 / 7 within tolerance
PopulationFlowJoFlowCytoΔ %pΔ MFI
Lymphocytes45.245.2+0.0
Single cells97.897.8+0.0
Live92.192.0−0.1
CD3⁺ T cells71.371.4+0.1CD3 +0.3%
CD4⁺62.462.3−0.1CD4 −0.4%
CD8⁺29.029.1+0.1CD8 +0.4%
CD4⁺CD25⁺ Treg6.86.7−0.1CD25 −0.5%
tolerance · ±0.5 pp freq · ±2% MFIRepresentative public panel · deltas trace to gate-edge rounding
capabilities

Built for the data the desktop chokes on

Full-fidelity scale and reproducibility-by-default — in the very first release, alongside the daily gating workflow you already know by heart.

no downsampling

Full panels, every event

Open a 30-color spectral panel or a whole 384-well run and gate on every event — not a 60k subsample. The data stays server-side in a columnar store; the browser holds only the view. Rare-event and MRD analysis never has to bias itself down to fit RAM.

versioned spec

Reproducible by default

Every gate, transform, and compensation edit commits to a versioned Analysis Spec. Restore any prior state in one click, or re-run months later for identical numbers — no manual bookkeeping, no "which version was the figure?"

any instrument

Reads everything

FCS 2.0/3.0/3.1, Beckman LMD, CSV, TSV, Parquet — Aurora, Symphony, Fortessa, CytoFLEX. $PnE log/linear, gain and voltage keywords, time parameter, spillover matrix — all preserved on import.

zero install

Browser-native

No dongle, no activation, no quote request. Sign in with SSO and you're gating in seconds — on any machine, shared with your lab, identical for everyone who opens it.

the determinism contract

Separate the analysis from its execution

You edit a declarative Analysis Spec; a content-addressed engine executes it out-of-core over immutable, hashed inputs. Because the spec, the inputs, and the engine version are all pinned, the same analysis always produces the same numbers — and any value traces back to exactly what made it.

  • Content-hashed, immutable raw inputs
  • Linear version history with one-click restore
  • Hover any value for its full lineage
  • Re-run a months-old document for identical results
reproduce.flowcyto
$ flowcyto reproduce --verify
spec@v7 ab12cd34ef…
inputs@hash 9f0e1d2c…
engine@v0.1.0
deterministic output · verified

Identical on your laptop, a teammate's, CI, or an air-gapped on-prem deployment.

get started

Bring your biggest dataset — and your FlowJo workspace.

Open the file that crashes FlowJo on a 32 GB Mac, reproduce the gates you already trust, and version every step from here forward.