Paste raw counts and gene lengths to get CPM, FPKM, and TPM, computed with the correct formulas so TPM sums to the same total in every sample. Export the normalized table as a CSV.
5 genes · columns: label, count, length (bp)
| Gene | Count | Length | CPM | FPKM | TPM |
|---|---|---|---|---|---|
| TP53 | 1250 | 2600 | 61607 | 23695 | 38364 |
| BRCA1 | 430 | 7200 | 21193 | 2943 | 4766 |
| GAPDH | 8800 | 1300 | 433711 | 333624 | 540167 |
| EGFR | 610 | 5500 | 30064 | 5466 | 8850 |
| ACTB | 9200 | 1800 | 453425 | 251903 | 407853 |
A raw RNA-sequencing count is not a clean measure of expression, because it is inflated by two technical factors. A sample sequenced to greater depth accumulates more reads for every gene, and a longer gene collects more reads simply because it presents more sequence to fragment and capture. Normalization exists to strip out both effects so the numbers reflect biology rather than library preparation.
The three common units differ in what they correct and in what order. CPM scales by depth alone and is used for filtering and for length-independent comparisons. FPKM, equivalent to RPKM for paired-end data, corrects for depth then length, but because it normalizes depth first, its per-sample total varies. TPM reverses the order, normalizing by length first and depth last, so that every sample sums to exactly one million transcripts.
That fixed total is the reason Wagner et al. (2012) and Li et al. (2010) argued for TPM over FPKM when comparing a gene across samples: equal totals make the values directly comparable as proportions of the transcript pool. This calculator implements the two-step TPM computation exactly, so the TPM column always sums to one million, and reports FPKM and CPM alongside for reference.
One caveat matters for statistics: these units are excellent for reporting and visualization but formal differential-expression testing should run on raw counts with a dedicated model, because methods such as the median of ratios in DESeq2 or the trimmed mean of M-values in edgeR are more robust than simple depth scaling. Once normalized, values flow naturally into the log2 fold change calculator and a heatmap generator. For the full analysis with a proper count model, the bioinformatics analysis service runs it end to end.
One row per gene with a label, the raw count, and the gene length in base pairs.
Lengths are required for FPKM and TPM; without them the tool still reports CPM.
Get CPM, FPKM, and TPM per gene, with the TPM column summing to one million.
Export the normalized values as a CSV for visualization or reporting.
Next step
From raw counts to normalized values, statistics, and publication-ready figures, handled by a PhD statistician.
Our promise: Free pipeline re-run and figure revisions if reviewers push back.
Timeline
Most projects deliver in under 2 weeks. We confirm an exact date in your quote.
If reviewers push back
If reviewers question the pipeline, parameters, or figures, we re-run the analysis and revise free.
Confidentiality
NDA available on request before any project discussion. Your data, study design, and manuscript stay private either way.
Want a PhD methodologist to handle the whole project?
Get a complete RNA-sequencing analysis from counts to differential expression by a PhD statistician. Free pipeline re-run and figure revisions if reviewers push back. Pay only after you approve your quote.
Both TPM and FPKM correct for sequencing depth and gene length, but in a different order. FPKM divides counts by depth first, then by length, so the sum of FPKM values differs between samples. TPM divides by length first, then by depth, so the TPM values in every sample sum to the same total, one million. That consistent total is why TPM is preferred for comparing the relative expression of a gene across samples.
First divide each gene's read count by its length in kilobases to get a rate that reflects reads per unit length. Sum these rates across all genes, then divide each gene's rate by that sum and multiply by one million. The result is transcripts per million. This tool performs the two-step calculation for you and, because the rates are normalized last, the TPM column always sums to one million.
CPM stands for counts per million and corrects only for sequencing depth: it is a gene's count divided by the sample's total counts, multiplied by one million. CPM does not account for gene length, so it is not suitable for comparing different genes within a sample, but it is a common unit for filtering low-expression genes and for length-independent comparisons of the same gene across samples.
Raw read counts confound true expression with two technical factors: samples sequenced to greater depth accumulate more reads for every gene, and longer genes collect more reads simply because they are longer. Normalization removes these effects so that counts reflect biology. Without it, a gene can appear more highly expressed merely because its sample was sequenced deeper or because the gene is long.
RPKM (reads per kilobase per million) and FPKM (fragments per kilobase per million) use the identical formula; the only difference is terminology. RPKM was coined for single-end sequencing where each read is counted, while FPKM was introduced for paired-end sequencing where a fragment produces two reads that are counted once. Numerically they are computed the same way, which is the FPKM value this tool reports.
TPM and FPKM are within-sample relative measures and are ideal for reporting and visualization, but formal differential-expression testing should use raw counts with a dedicated model. Tools such as DESeq2 and edgeR apply their own library-size normalization, for example the median-of-ratios or trimmed mean of M-values, directly to counts, because those methods are more robust to a few highly expressed genes than simple depth scaling.
Once normalized, compute effect sizes with the log2 fold change calculator, correct significance with the false discovery rate calculator, and visualize expression with the heatmap generator. For the complete RNA-seq pipeline with a proper count model, the bioinformatics analysis service takes raw data to differential expression.
Reviewed by
Dr. Sarah Mitchell holds a PhD in Biostatistics from Johns Hopkins Bloomberg School of Public Health and has over 15 years of experience in systematic review methodology and meta-analysis. She has authored or co-authored 40+ peer-reviewed publications in journals including the Journal of Clinical Epidemiology, BMC Medical Research Methodology, and Research Synthesis Methods. A former Cochrane Review Group statistician and current editorial board member of Systematic Reviews, Dr. Mitchell has supervised 200+ evidence synthesis projects across clinical medicine, public health, and social sciences. She reviews all Research Gold tools to ensure statistical accuracy and compliance with Cochrane Handbook and PRISMA 2020 standards.
Our PhD statisticians run the complete pipeline: differential expression with multiple-testing correction, survival modelling, dimensionality reduction, and publication-ready figures with a reproducible methods section. Constant pricing, most projects delivered in under two weeks.
Our promise: Free pipeline re-run and figure revisions if reviewers push back.
Your project is led by a named PhD methodologist with real credentials and published work.
4.9 / 5 across 1,194+ delivered projects