Tumour mutational burden (TMB)
Tumour mutational burden (TMB) looks like a single number: somatic mutations per megabase. But which mutations the numerator counts, and how large a region the denominator divides by, differ from one assay to the next. This chapter takes the ratio apart, then looks at where the much-quoted 10 mut/Mb line comes from and why it does not transfer freely.
Numerator and denominator
TMB = somatic mutations counted ÷ size of the callable territory in Mb.
Numerator: WES usually counts non-synonymous mutations (SNVs plus small indels). Some assays add synonymous mutations, others exclude known drivers; change the definition and the number changes. The numerator also inherits everything upstream: low purity and shallow depth miss mutations, FFPE damage and contamination add false ones.
Denominator: ideally the coding territory actually callable, the part covered well enough in both tumour and normal. In practice it is often approximated by the capture size, which depends on the kit, commonly about 30–60 Mb. maftools’ tcgaCompare uses 35.8 Mb for TCGA by default; tmb() uses 50 Mb when no capture size is given.
Computing TMB on LAML
The widget divides each of the 193 patients’ counts by 35.8 Mb and plots them from low to high on a log axis. The median is about 0.25 mut/Mb and no patient comes near 10 mut/Mb. AML sits at the very bottom of the TMB range across tumour types; melanoma, smoking-related lung cancer and mismatch-repair-deficient tumours sit at the other end.
Try three things:
- Change the denominator from 35.8 to 50 Mb: every value shrinks by 35.8 / 50, the order stays, but conclusions against a fixed cut-off can change.
- Turn on “count silent variants too”: the numerator grows and every value rises.
- Drag the denominator to about 1 Mb: the numbers jump. This only shows what the denominator does. A panel covers about 1 Mb and finds far fewer mutations in the first place; WES counts divided by 1 Mb are not a panel TMB.
By default the widget shows only the 193 patients with a MAF record, which is what most tools do. The clinical table holds 7 more patients who were sequenced but have no mutation record; their TMB is 0 and they belong in the distribution. Switch on the last toggle to add them back. Here the median hardly moves, because many patients share the same small count, but in a cohort with many quiet tumours dropping the zeros can shift the median and every cut-off built on it.
Where the 10 mut/Mb line comes from
In 2020 the FDA, on the basis of the KEYNOTE-158 study, approved pembrolizumab for unresectable or metastatic solid tumours with TMB ≥ 10 mut/Mb that had progressed after prior treatment, and approved FoundationOne CDx (F1CDx) as the companion diagnostic. The line is therefore defined on F1CDx:
- F1CDx is a 324-gene panel with about 0.8 Mb of coding territory;
- its numerator includes synonymous mutations, excludes known driver mutations and removes germline variants;
- WES non-synonymous TMB counts differently, divides by a much larger territory and covers different genes.
So WES TMB cannot simply be cut at 10 mut/Mb. Comparing the two needs both assays run on the same samples and calibrated against each other. Even on the panel, the cut-off predicts response differently across tumour types.
Common pitfalls
- Leaving the capture size to a software default. maftools’ tmb() defaults to 50 Mb, which may be far from your kit.
- Comparing WES TMB with 10 mut/Mb directly. That line is a panel measure; WES needs its own calibration.
- Dropping samples without mutations. A sequenced sample absent from the MAF has a TMB of 0; dropping it raises the median.
- Deleting hypermutated samples as false positives. Check the spectrum first: tumours with POLE mutations or mismatch-repair deficiency genuinely have very high TMB.