QC Thresholds as Sample Selection: Why the Cells That Failed Are Not a Random Draw
QC Thresholds as Sample Selection: Why the Cells That Failed Are Not a Random Draw
Before clustering, before annotation, before any test, two numbers decide which cells the experiment contains. They select on criteria that correlate with the biology, and they leave no record behind.
A single-cell ATAC-seq analysis begins with a line like minTSS = 4, minFrags = 1000. Everything downstream — the clusters, the cell-type proportions, the differential accessibility, the conclusion — is conditional on it. In the methods section it appears as a parameter. It is not a parameter. It is the sampling frame.
This series has made a version of this argument before, about variant-calling benchmarks: a pipeline reports 99.5% F1, and the useful question is accurate where?, because the comparison was restricted to a high-confidence region defined partly by where methods already agreed. The structure here is the same one level up. A QC filter does not restrict the territory the analysis is scored on; it restricts the cells the analysis is performed on, using metrics that are correlated with what the cells are. There is one difference, and it is not in favour of QC.
The metrics are good. The thresholds are inherited.
The standard per-cell metrics are well chosen. ArchR uses the number of unique nuclear fragments, TSS enrichment as a signal-to-background ratio, and the fragment size distribution, on the reasoning that dead or dying cells have de-chromatinised DNA allowing random genome-wide transposition.2 Signac and current best-practice guidance add features per cell and the nucleosome signal.3,6 Each metric tracks something real.
The threshold is a different object. It is a number carried forward from a tutorial, and it converts a continuous metric into a membership decision. The tool authors are clear about this: the developers of the ATAC quality-metric package ataqv explicitly urge caution about hard-and-fast rules, noting that QC metrics may differ systematically according to factors such as cell type — embryonic stem cells, for example, are thought to have greater genome-wide chromatin accessibility than more differentiated cells, which would change the distribution of reads and therefore TSS enrichment, peak counts and fraction of reads in peaks.4 Read that mechanism carefully. A cell with diffuse, globally accessible chromatin and a cell with poor signal-to-noise produce the same reading on the metric that is supposed to distinguish them.
The controlled experiment was run next door
The scRNA-seq field tested this directly, and the result is the strongest evidence available for what fixed thresholds do.1
First, the practice survey: across 107 papers, data-agnostic fixed thresholds dominated — 86% used a fixed 5–10% cutoff for mitochondrial read fraction and 86.5% used 500 as the floor for gene complexity. Second, the demonstration that the metrics track biology: profiling QC statistics across 5.26 million human cells from 47 tissues and a further 966,560 mouse cells, the authors found QC metrics varying systematically by tissue and, within tissue, by cell type. A fixed 10% mitochondrial cutoff removed parenchymal subsets in human kidney and testis — cells whose high mitochondrial content is a statement about their metabolic activity. Even a conservative 200-gene floor removed neutrophils and neurons.
Third, the comparison. Adaptive thresholds computed per cluster retained a median of 95.4% of input cells against 69.4% under the standard cutoff. Clusters retained only by the adaptive method included muscle cells, neutrophils, NK cells, gamma-delta T cells, cardiomyocytes, dendritic cells, erythroid precursors and platelets — all validated by canonical marker signatures.
And then the finding that settles the question of whether the discarded cells are a random draw. Comparing the two approaches on jointly clustered data, no cluster was unique to the standard cutoff approach. Not one. The strict fixed threshold never recovered a population that the adaptive method missed; it only removed populations the adaptive method kept. A filter that discarded cells at random would occasionally win. This one only subtracts, and it subtracts by cell type.
A cautionary note in the same work is worth carrying: a data-driven method that was not biology-aware removed the entire cardiomyocyte cluster from a mouse heart dataset, because those cells had a median of 15.2% mitochondrial reads.1,8 Being data-driven is not sufficient. Being data-driven at the level of cell types is the part that matters.
Why chromatin accessibility is at least as exposed
Two features of scATAC make the transfer of that argument conservative rather than speculative.
The first is that TSS enrichment is a ratio whose numerator is a biological property. How concentrated a cell's accessibility is at promoters differs between cell types, and the metric cannot separate "this nucleus gave poor signal" from "this nucleus has broadly distributed accessibility."4 The second is that the threshold's severity depends on the protocol rather than on the cells. In a PBMC benchmark comparing scATAC methods, median TSS enrichment across platforms spanned roughly three-fold — 25.03, 16.16 and 7.39 in one three-way comparison — and median unique fragments per cell ranged from about 3,000 to 15,400.5,7 minTSS = 4 is a light touch on one dataset and a serious cut on another. The same number is not the same experiment.
The same benchmarking work found that rare cell types — dendritic cells and NK cells — had the lowest cell-type assignment scores across techniques, with some protocols recovering a lower fraction or none at all, and concluded that increased sensitivity is required for comprehensive annotation.5 Sensitivity limits and QC limits point at the same populations, which means the two losses compound rather than cancel.
Where the loss propagates
The reason to treat this as more than a caveat is that the filter sits upstream of analyses that assume the cell set is given.
Composition. A cell-type proportion is computed on survivors. If a treatment, a disease state or a dissociation protocol makes one population more fragile or less accessible, that population's apparent depletion is partly a pass-rate difference. This series has covered composition shifts producing false differential accessibility in bulk; here the shift can be manufactured by the filter itself, in a tissue where nothing changed.
Sparsity. Per-cell QC metrics are estimated from very few fragments, so they are noisy quantities, and the filter thresholds them. That biases removal toward exactly the cells with the least data — which is defensible when the cause is technical and circular when the cause is that the cell type has a compact genome, a small nucleus, or a lower fragment yield by nature.
Rare populations. They lose twice: they are undersampled to begin with, and disproportionately removed. A population that is 1% of the tissue and passes QC at half the rate of its neighbours arrives in the analysis at 0.5%, and there is no line in the output that says so.
| Filter | What fails it | What is actually being measured | Cheap check |
|---|---|---|---|
| minFrags | Cells yielding few unique nuclear fragments | Capture efficiency and sequencing depth as much as cell viability | Sweep the threshold; confirm conclusions are stable across it |
| minTSS | Cells with diffuse accessibility relative to promoters | Signal-to-background, which is partly a property of the chromatin state | Cluster the failing cells before discarding them |
| nucleosome signal | Cells with atypical fragment-length periodicity | Nuclear and chromatin state, which differs by cell type | Plot the distribution per annotated cluster, not per sample |
| doublet removal | Barcodes scored as multiplets | Detectability of heterotypic doublets; homotypic ones are invisible | Report the removal rate per cluster, not globally |
| the composite | Anything failing any of the above | A cell population conditioned on every rule at once | Report n before and after, per sample and per arm |
Each rule is defensible on its own. The composite is a selection procedure, and no line of the standard output describes the population it produced.
The case for filtering, which is real
None of this argues for keeping everything. Free DNA from dead or dying cells can be transposed and barcoded in droplet systems, sometimes alongside a healthy cell, so barcodes that look reasonable on the standard metrics may still be substantially composed of ambient signal.4 Empty-droplet and low-quality-cell detection are genuine problems with genuine solutions,9,10 and an unfiltered scATAC matrix is not analysable. The argument is narrower and, I think, harder to dismiss: filtering is sample selection, and sample selection is a result. It should be reported like one.
Better options exist and are not expensive. Adaptive thresholds computed within transcriptional or accessibility neighbourhoods rather than globally recover most of the lost biology.1 ATAC-specific alternatives are appearing: one recent method scores cells on fragment-length periodicity and reports that filtering on that basis reintroduces cells excluded by conventional filtering, improving identification of both abundant and rare cell types.7
What to do about it
- Report cells in and cells out, per sample and per arm, with the reason for each removal. This is one table and it is the single most informative thing missing from most methods sections.
- Sweep the threshold. Re-run the key conclusion at two or three settings and show it is stable. If it is not, that is the finding.
- Cluster the failures before discarding them. If the rejected barcodes form a coherent group with recognisable marker accessibility, you have removed a population, not noise.
- Use adaptive, neighbourhood-level thresholds rather than a single global cut — and note that data-driven is not enough on its own if the method is blind to cell type.
- Never compare proportions across conditions without comparing pass rates across the same conditions. A differential pass rate is a composition change the analysis cannot see.
- Calibrate to the protocol, not the tutorial. Median TSS enrichment and fragment yield differ several-fold between platforms; a threshold inherited across that gap is arbitrary in a new way.
- Keep the discard set. Write the failing barcodes to a file. It costs nothing and makes every question above answerable later.
- Keep the metrics separate. A cell failing on fragment count and a cell failing on TSS enrichment are making different claims about themselves; collapsing them into “low quality” discards that.
- If a rare population is the point of the study, pre-specify the QC. Choosing thresholds after seeing whether the population survives is a search over outcomes.
The only step with no output
Most steps in a pipeline transform data and emit something you can inspect: an alignment with quality scores, a peak set with q-values, a test with adjusted p-values. QC is different in kind. It does not transform the data — it decides what the data is, and its output is an absence. Nothing in the resulting object records how many cells were considered, which ones lost, or whether the losers looked like each other.
The benchmarking piece in this series asked accurate where? The question here is true of whom? Every number in a single-cell result is a statement about the cells that passed, and the cells that passed were chosen by two integers that name no biology, carry no uncertainty, and were probably copied from a vignette. That is a defensible way to start an analysis. It is not a defensible thing to leave undocumented, because the correction is a table and a threshold sweep, and the alternative is a population defined by a number nobody chose on purpose.
The filter did not measure quality. It measured a quantity that correlates with quality — and with several other things, including what the cell was.
References
- Subramanian A, Alperovich M, Yang Y, Li B. Biology-inspired data-driven quality control for scientific discovery in single-cell transcriptomics. Genome Biology. 2022;23:267. doi:10.1186/s13059-022-02820-w
- Granja JM, Corces MR, Pierce SE, et al. ArchR is a scalable software package for integrative single-cell chromatin accessibility analysis. Nature Genetics. 2021;53(3):403–411. doi:10.1038/s41588-021-00790-6
- Stuart T, Srivastava A, Madad S, Lareau CA, Satija R. Single-cell chromatin state analysis with Signac. Nature Methods. 2021;18(11):1333–1341. doi:10.1038/s41592-021-01282-5
- Orchard P, Kyono Y, Hensley J, Kitzman JO, Parker SCJ. Quantification, dynamic visualization, and validation of bias in ATAC-seq data with ataqv. Cell Systems. 2020;10(3):298–306.e4. doi:10.1016/j.cels.2020.02.009
- De Rop FV, Hulselmans G, Flerin C, et al. Systematic benchmarking of single-cell ATAC-sequencing protocols. Nature Biotechnology. 2024;42:916–926. doi:10.1038/s41587-023-01881-x
- Heumos L, Schaar AC, Lance C, et al. Best practices for single-cell analysis across modalities. Nature Reviews Genetics. 2023;24:550–572. doi:10.1038/s41576-023-00586-w
- PEAKQC: periodicity evaluation in single-cell ATAC-seq data for quality assessment. Briefings in Bioinformatics. 2025;26(5):bbaf465. doi:10.1093/bib/bbaf465 (Author list not confirmed at time of writing.)
- Hippen AA, Falco MM, Weber LM, et al. miQC: an adaptive probabilistic framework for quality control of single-cell RNA-sequencing data. PLoS Computational Biology. 2021;17(8):e1009290. doi:10.1371/journal.pcbi.1009290
- Lun ATL, Riesenfeld S, Andrews T, et al. EmptyDrops: distinguishing cells from empty droplets in droplet-based single-cell RNA sequencing data. Genome Biology. 2019;20:63. doi:10.1186/s13059-019-1662-y
- Ilicic T, Kim JK, Kolodziejczyk AA, et al. Classification of low quality cells from single-cell RNA-seq data. Genome Biology. 2016;17:29. doi:10.1186/s13059-016-0888-1
Related in this series: Benchmarking Against Truth Sets, Cell Composition in Bulk ATAC-seq, Sparsity in Single-Cell ATAC-seq.

