Skip to content

01. What Is Bulk RNA Sequencing?

Bulk RNA sequencing (bulk RNA-seq) is an experimental method that extracts RNA from a tissue or cell population as one pool and measures its abundance by gene. It takes a tissue piece or purified cell population, produces FASTQ reads, and yields a gene × sample expression matrix after analysis.

Question for this lesson: What table is produced when RNA from many cells is read together, and what can that table support?

Start with the output: one sample becomes one column

Section titled “Start with the output: one sample becomes one column”

Suppose two normal and two tumour samples from colorectal tissue were measured. The values below are illustrative raw counts.

genenormal_1normal_2tumor_1tumor_2
EPCAM8207602,4302,180
CD3D310410520610
COL1A11902401,3401,120

Rows are genes, columns are biological samples, and each value is the number of fragments assigned to that gene. After correcting for sequencing depth and RNA composition, normal and tumour groups can be compared to test which genes change consistently.

The tumor_1 column pools RNA from cancer cells, immune cells, fibroblasts, and other cells in that tissue piece. A high COL1A1 count cannot by itself distinguish increased expression inside cancer cells from an increased abundance of fibroblasts that already express COL1A1.

Read the three words in the name separately

Section titled “Read the three words in the name separately”
termmeaningunit preserved in the data
BulkPool RNA from many cells in one containertissue or purified cell population
RNAMeasure transcripts present at capturerelative abundance of genes or transcripts
SequencingSample cDNA fragments as readsbase sequence and per-base quality

Bulk data are often described as a “tissue average,” but this is not an arithmetic mean that gives every cell equal weight. It is a pooled signal shaped by cell abundance, RNA content per cell, and extraction efficiency. Cell types containing more RNA can contribute more strongly.

The tissue is disrupted and DNA, proteins, and contaminants are removed to obtain an RNA pool. Cell identity and spatial location are lost at this stage. Poly(A) selection or rRNA depletion also determines which RNA species remain in the final library.

RNA is unstable, while common short-read sequencers read DNA. Reverse transcription creates a DNA copy called complementary DNA (cDNA). The cDNA is fragmented and adapters are attached to both ends, producing a cDNA library.

tissue = collect_sample()
rna_pool = extract_rna(tissue) # RNA from many cells is pooled
cdna_pool = reverse_transcribe(rna_pool)
library = add_adapters(fragment(cdna_pool))
assert library.is_compatible_with("sequencer")

This pseudocode represents the type transformation between stages. It does not execute the laboratory protocol.

The sequencer reads bases from library fragments and records them in FASTQ with a quality score for every base. Sample indexes allow multiple libraries to be pooled for sequencing and separated back into sample-specific FASTQ files.

FASTQ reads are quality checked, aligned to a reference genome, and assigned to genes with a GTF annotation. Combining one count column per sample produces the gene × sample matrix shown above.

stageinputoutput
Experimenttissue or cell populationcDNA library
SequencingcDNA libraryFASTQ
Alignment and quantificationFASTQ, reference genome, GTFgene counts per sample
Statistical analysiscount matrix, sample metadataexpression differences and uncertainty
  • Which genes have high or low expression in a sample?
  • Which genes change consistently between two conditions with replicate samples?
  • Which transcripts or splice junctions are observed when the library protocol and read structure support them?

Testing a condition difference requires independent biological replicates for each condition. Reading the same library repeatedly can reduce sequencing variation, but these technical replicates cannot replace biological variation among people or tissue samples.

What cannot be concluded from the count matrix alone?

Section titled “What cannot be concluded from the count matrix alone?”
  • Which cell type produced the RNA?
  • Did an RNA increase produce a protein increase?
  • Is an expression difference a cause or a consequence of disease?
  • Would the effect remain after accounting for sampling and cell-composition differences?

If cell of origin is central to the question, consider single-cell RNA sequencing. Protein abundance, spatial location, and causality require additional measurements and experimental designs.

🧩 Splicing and isoforms: introns are removed from pre-mRNA and exons are joined into mature mRNA. Different exon combinations can produce different isoforms from the same gene. RNA read alignment therefore needs special handling for splice junctions.

Bulk RNA-seq pools RNA from a tissue or cell population, sequences it, and aggregates gene counts by sample. Its core output is a gene × sample matrix. This supports tissue-level comparisons between conditions, but pooling removes cell identity and spatial location.

Next, From a Library to FASTQ explains how a sequencer reads cDNA fragments and records them with quality scores.