euxhen.hasanaj
← blog
single-cellscRNA-seqexperimental designquality control

What can go wrong in a scRNA-seq experiment?

Following the journey from biological sample to count matrix, and what can go wrong along the way.

During my Ph.D. and my years working at the intersection of AI and biology, I’ve had the chance to work closely with many brilliant people in wet labs. Hearing about their daily work (and, in one case, following the journey of an injured human lung from collection, through ex vivo lung perfusion, which keeps it functioning outside the body, all the way to sequencing) gave me a much greater appreciation for everything that happens before the scRNA-seq count matrix that we computational biologists are used to seeing.

We often talk about how noisy scRNA-seq data is and how difficult results can be to reproduce. Some of that comes from the technology, and some from the fact that biology is truly complicated. But I sometimes feel that we overlook how much noise can be introduced during the experiment itself. By the time the data reaches us, we tend to treat its quality as a given, or simply call it “good quality,” whatever that means. We then spend a great deal of time building methods and fishing for results, and much less time asking whether the signal we want is actually present in the data.

Here, I want to walk through a few examples of what can go wrong during a scRNA-seq experiment, including some steps that are easy to overlook. The technology is certainly improving, but small losses can still add up. If just 1% of the signal is lost at each of 50 steps, almost 40% will have been lost by the end: 1 − 0.9950 ≈ 0.40.

what can go wrongthe story
  • Too few donors
  • Unrepresentative donors
  • Cells mistaken for biological replicates
  • Poor biological models, such as heavily cultured cell lines
  • Insufficient diversity across tissues, sex, ancestry, medication, and disease stage
  • Variation across protocols, devices, laboratories, and operators
  • Too few time points
  • Sampling at the wrong time after a perturbation

Choosing the biological samples

Many problems in a scRNA-seq experiment begin with sample selection. A common mistake is to study one or two donors and treat the thousands of cells collected from them as independent biological replicates, even though all of those cells share one donor’s genetics, environment, and disease history.

The choice of biological model also matters. A cancer cell line is easy to grow, but years in a dish can leave it very different from a tumor, where cancer cells interact with immune cells, blood vessels, and connective tissue (Yu et al., 2019). Even primary samples can mislead if all cases come from late-stage disease while all controls come from younger, untreated donors.

Design matters just as much. If every control is processed on Monday and every disease sample on Friday, a disease effect cannot be cleanly separated from a batch effect. No computational correction can reliably untangle two factors that were never separated in the experiment (Leek et al., 2010).

Timing can create the same problem. A drug may trigger stress genes within an hour, suppress its target after six hours, and cause cell death the next day. Sampling a single time point assumes that the relevant response has occurred and that the captured state is biologically meaningful. Cellular responses can be delayed, transient, or different across cell types, so this assumption often fails (Shalek et al., 2014).

  • Delayed processing
  • RNA degradation
  • Stress responses caused by collection
  • Inconsistent transport and handling
  • Unequal survival after freezing
  • Damage from fixation or freeze-thaw cycles

Collecting and storing the tissue

Once tissue leaves the body, it starts to change. Oxygen falls, RNA degrades, and cells switch on stress programs. A biopsy placed on ice immediately can end up looking meaningfully different from one that spends three hours traveling from the operating room, a gap wide enough to pass for a real biological effect.

When immediate processing is impossible, samples may be frozen or fixed. Neither option is neutral. Some cell types survive freezing better than others, fixation can make RNA harder to recover, and repeated freeze-thaw cycles damage both cells and RNA (Denisenko et al., 2020). Freezing and thawing can also induce stress signals that may be mistaken for a disease response (Stamper et al., 2024).

  • Cell damage during dissociation
  • Stress responses caused by digestion
  • Unequal survival of cell types
  • Cells lost during filtering
  • Ambient RNA from dead cells

Dissociating the tissue

Most scRNA-seq methods need solid tissue broken into separate cells first, usually by cutting the tissue and digesting the material between cells with enzymes. Too little digestion leaves clumps, and too much kills cells and alters their gene activity (van den Brink et al., 2017).

The cells that come out are not necessarily a fair sample of the cells that went in. Fragile cells may burst, very large cells may be caught by a filter, and cells embedded in scar tissue may never be released, so a tumor can end up missing a cell type in the data for no reason other than how hard it was to extract.

Burst cells also spill RNA into the liquid, and that stray “ambient RNA” can be captured together with intact cells. In blood data, for example, abundant hemoglobin RNA released by red blood cells can appear in droplets containing immune cells, even though those cells have not started making hemoglobin themselves; the sample has simply been contaminated (Young & Behjati, 2020).

  • Cells lost during filtering
  • Cell damage during cleanup
  • Living cells removed with dead cells
  • Incorrect or incomplete enrichment
  • Distorted cell-type proportions
  • Stress caused by sorting

Filtering and sorting

After dissociation, the tube contains good cells, dead cells, debris, and clumps. Filters, centrifugation, dead-cell removal, and sorting can clean it up, but each step also edits the sample.

A filter may remove large cells along with clumps, a debris-removal method may discard small but healthy cells, and sorting for one surface marker can miss cells that express little of that marker or whose marker was damaged during digestion, leaving a tube that looks cleaner without necessarily representing the original tissue any better. Sorting also keeps cells outside the body longer and exposes them to pressure and temperature changes, which some cell types tolerate better than others (Massoni-Badosa et al., 2020).

  • Empty droplets
  • Multiple cells in one droplet
  • Incorrect cell concentration
  • Blockages from large cells or clumps
  • Cell damage during loading
  • Cells lost before capture

Loading cells into droplets

Many platforms separate cells into tiny droplets. The ideal droplet contains one cell and one barcoded bead, but loading is governed by chance. Some droplets are empty and some contain two or more cells. A droplet holding a T cell and a tumor cell, for example, produces one profile with markers from both. It can look like a rare hybrid cell unless it is recognized as a doublet (McGinnis et al., 2019).

Cell concentration is a tradeoff. Load too few cells and much of the run goes to waste. Load too many and doublets become common. Clumps and oversized cells can block the device, and fragile cells can rupture under pressure. The mixture that gets captured can end up looking nothing like the one that went in.

  • Missing or multiple beads in a droplet
  • Multiple cells sharing one barcode
  • Ambient RNA receiving a cell barcode
  • Barcodes read or corrected incorrectly
  • Cells split, mixed, or discarded

Assigning a cell barcode

Inside a droplet, the cell is opened and its RNA receives a barcode from a bead. That barcode works like a return address. Later, all RNA carrying it gets grouped as one cell.

A droplet can hold two cells, a broken cell, or only free-floating RNA, so a barcode by itself says nothing about whether a clean, intact cell was present. It can also contain the wrong number of beads. Sequencing errors may change a barcode by one letter, after which software must decide whether to repair it, discard it, or treat it as a new cell (Zheng et al., 2017). A wrong repair can mix two cells together, and a missed one can split a single cell into two. In the final table, one barcode is usually called one cell, a labeling convention that the steps above can quietly break.

  • Incomplete cell lysis
  • RNA degradation after lysis
  • Low capture efficiency
  • Rare RNA molecules missed

Cell lysis and RNA capture

The cell must break open and release its RNA. If lysis is incomplete, RNA remains trapped. If it is too harsh or too slow, exposed RNA can degrade.

Only a fraction of the released RNA attaches to the bead, so highly abundant RNAs are easy to find while a gene represented by just one or two molecules can easily be missed by chance (Svensson et al., 2017). The chemistry also decides what is visible. Many common assays capture RNAs with poly(A) tails, which works well for most messenger RNA but misses many other RNA species. A zero can then mean the gene was not expressed, its RNA was not captured, or it simply was not compatible with this particular assay.

  • Captured RNA never copied
  • Incomplete DNA copies
  • Unequal copying across molecules
  • False zeros in the final data

Reverse transcription

Sequencers read DNA, so captured RNA is copied into complementary DNA, or cDNA, through a reaction that is far from perfect. Some molecules are never copied, and the enzyme may stop early when an RNA is long or folded into a difficult structure.

Suppose a cell contains two copies of a transcription factor’s RNA. If neither is copied, the final matrix reports zero even though the gene was active. These false zeros are especially common for low-abundance genes, reflecting gaps in measurement rather than genes the cell has switched off completely (Kharchenko et al., 2014).

  • Uneven copying of DNA
  • Molecules lost during amplification
  • Abundance levels distorted
  • Copying errors introduced
  • Incorrect UMI counts

Amplification

The first cDNA copies are too scarce to sequence directly, so they get amplified through PCR. That process behaves more like a race than a perfectly even photocopier. Some fragments copy quickly, others, including very GC-rich fragments, lag behind, and raw read totals end up exaggerating the abundance of whichever molecules were easiest to copy (Aird et al., 2011).

Unique molecular identifiers (UMIs) help (Islam et al., 2014). Copies carrying the same UMI are counted as one original molecule rather than many PCR products. But UMIs cannot restore a molecule lost before amplification, and an error in the UMI can split one molecule into two counts, or cause two molecules to be merged.

  • Uneven DNA fragmentation
  • Fragments lost during size selection
  • Failed adapter attachment
  • Material lost during cleanup
  • Libraries dominated by a few fragments
  • Incorrect sample barcodes

Library construction

Next, the amplified DNA is turned into a sequencing library. It is fragmented, pieces in a chosen size range are kept, and adapters are attached so the sequencer can hold and read them. Sample barcodes are added so several libraries can share a run.

Every handling step can remove material. A fragment that is cut too short may be discarded during size selection, and one that never receives an adapter stays invisible to the sequencer. If little material survives, a handful of fragments can dominate the library, and repeated sequencing mostly just produces more copies of the same information. A swapped or contaminated sample barcode causes a more serious problem, since reads from one patient may end up labeled as another patient’s (Griffiths et al., 2018).

  • Insufficient sequencing depth
  • Rare RNA molecules missed
  • Poor tradeoff between cell number and depth
  • Errors in cell barcodes and UMIs
  • Reads assigned to the wrong sample
  • Run-to-run batch effects

Sequencing

The sequencer reads only a sample of the finished library. Spreading a fixed number of reads across more cells gives a broader survey but less detail per cell. Concentrating them on fewer cells does the opposite. Ten thousand shallowly sequenced cells may reveal a rare cell population, while one thousand deeply sequenced cells may better resolve weakly expressed genes within common cells. The right choice depends on the question (Zhang et al., 2020).

Reading errors matter most when they hit a cell barcode or UMI, because the read may then be assigned incorrectly or thrown away. Mixing libraries on one run can also move reads between samples if their sample barcodes are too similar or read poorly. Machines, flow cells, and runs can add smaller technical differences.

Sequencing deeper helps only while unread library molecules remain. It cannot recover a fragile cell lost during dissociation or an RNA molecule that was never captured.

  • Reads assigned to the wrong sample
  • Cell barcodes corrected incorrectly
  • Real cells mistaken for empty droplets
  • Empty droplets mistaken for cells
  • Reads aligned to the wrong gene
  • Differences between references and annotations
  • UMIs merged or split incorrectly
  • Different software producing different counts

Turning sequencing reads into a count matrix

The sequencer returns millions of short reads. Turning them into a table of genes and cells requires software to decide which sample, cell, original molecule, and gene each read belongs to.

First it separates samples and repairs barcode errors, then decides which cell barcodes are real. That decision is not always obvious. A small lymphocyte with little RNA can look like an empty droplet, and an empty droplet filled with RNA from a burst cell can look just as real as an intact one (Lun et al., 2019).

Next, the biological part of each read is matched to a reference. A read from one member of a highly similar gene family may fit several genes. Reads from HLA genes can be difficult because these genes vary greatly between people and may differ from the reference genome. A newly discovered transcript cannot be counted if it is absent from the annotation file. Two pipelines using different genome builds, annotations, or rules for ambiguous reads can end up producing different counts from the same sequencing run (Schulze Brüning et al., 2022).

Finally, UMIs are collapsed to estimate the number of original RNA molecules. Correction that is too cautious leaves PCR duplicates as separate molecules, while correction that is too aggressive merges molecules that were actually different. Reads that overlap two genes force another choice, since they can be assigned to one gene, split between both, or dropped altogether.

The result is the familiar count matrix: genes in rows, cells in columns. Every entry in it is an estimate built from many biological and computational choices, however precise the numbers look. Those choices should be recorded and tested, especially when a conclusion depends on a small population or a weakly expressed gene.

References

[1] Aird, D. et al. Analyzing and minimizing PCR amplification bias in Illumina sequencing libraries. Genome Biol. 12, R18 (2011).

[2] Denisenko, E. et al. Systematic assessment of tissue dissociation and storage biases in single-cell and single-nucleus RNA-seq workflows. Genome Biol. 21, 130 (2020).

[3] Griffiths, J. A., Richard, A. C., Bach, K., Lun, A. T. L. & Marioni, J. C. Detection and removal of barcode swapping in single-cell RNA-seq data. Nat. Commun. 9, 2667 (2018).

[4] Islam, S. et al. Quantitative single-cell RNA-seq with unique molecular identifiers. Nat. Methods 11, 163–166 (2014).

[5] Kharchenko, P. V., Silberstein, L. & Scadden, D. T. Bayesian approach to single-cell differential expression analysis. Nat. Methods 11, 740–742 (2014).

[6] Leek, J. T. et al. Tackling the widespread and critical impact of batch effects in high-throughput data. Nat. Rev. Genet. 11, 733–739 (2010).

[7] Lun, A. T. L. et al. EmptyDrops: distinguishing cells from empty droplets in droplet-based single-cell RNA sequencing data. Genome Biol. 20, 63 (2019).

[8] Massoni-Badosa, R. et al. Sampling time-dependent artifacts in single-cell genomics studies. Genome Biol. 21, 112 (2020).

[9] McGinnis, C. S., Murrow, L. M. & Gartner, Z. J. DoubletFinder: Doublet detection in single-cell RNA sequencing data using artificial nearest neighbors. Cell Syst. 8, 329-337.e4 (2019).

[10] Schulze Brüning, R., Tombor, L., Schulz, M. H., Dimmeler, S. & John, D. Comparative analysis of common alignment tools for single-cell RNA sequencing. Gigascience 11, giac001 (2022).

[11] Shalek, A. K. et al. Single-cell RNA-seq reveals dynamic, paracrine control of cellular variation. Nature 510, 363–369 (2014).

[12] Stamper, C. T. et al. Single-cell RNA sequencing of cells from fresh or frozen tissue reveals a signature of freezing marked by heightened stress and activation. Eur. J. Immunol. 54, e2350660 (2024).

[13] Svensson, V. et al. Power analysis of single-cell RNA-sequencing experiments. Nat. Methods 14, 381–387 (2017).

[14] van den Brink, S. C. et al. Single-cell sequencing reveals dissociation-induced gene expression in tissue subpopulations. Nat. Methods 14, 935–936 (2017).

[15] Yu, K. et al. Comprehensive transcriptomic analysis of cell lines as models of primary tumors across 22 tumor types. Nat. Commun. 10, 3574 (2019).

[16] Young, M. D. & Behjati, S. SoupX removes ambient RNA contamination from droplet-based single-cell RNA sequencing data. Gigascience 9, giaa151 (2020).

[17] Zhang, M. J., Ntranos, V. & Tse, D. Determining sequencing depth in a single-cell RNA-seq experiment. Nat. Commun. 11, 774 (2020).

[18] Zheng, G. X. Y. et al. Massively parallel digital transcriptional profiling of single cells. Nat. Commun. 8, 14049 (2017).