MSstats is an R/Bioconductor package for statistical relative quantification of proteins and peptides in mass spectrometry-based proteomics experiments. It supports label-free and label-based (isotope-labeled reference peptide/protein) workflows, and is applicable to targeted Selected Reaction Monitoring (SRM), Data-Dependent Acquisition (DDA/shotgun), and Data-Independent Acquisition (DIA/SWATH-MS) experiments, including designs with fractionation. Given identified and quantified peaks from upstream tools (Skyline, MaxQuant, Proteome Discoverer, Spectronaut, DIA-NN, FragPipe, OpenSWATH, and others), MSstats performs normalization, missing value imputation, feature selection, run-level summarization, and model-based statistical testing to detect differentially abundant proteins or peptides across conditions. Because the underlying statistical framework operates on generic quantitative features, it can be easily extended to other quantitative signals, such as targeted metabolomics data.
MSstats has been developed and maintained by the Vitek Lab at the Khoury College of Computer Sciences, Northeastern University, since 2012. The package and its documentation are also available at msstats.org.
This repository is used for active development and testing of MSstats. The package is released through Bioconductor on its regular 6-month release cycle.
- 13+ years in Bioconductor (since release 2.13, 2013)
- 9 packages in the MSstats ecosystem, covering DDA/DIA/SRM, TMT, PTMs, LiP-MS, large-scale/out-of-memory data, network analysis, dose-response, and a no-code GUI
- 13 peer-reviewed publications / preprints, ~2,000+ citations combined (see Citations)
- ~6,000 monthly downloads across the ecosystem (see Download statistics), tracked automatically from Bioconductor's own logs
MSstats has grown into a family of packages that address distinct needs in MS-based proteomics analysis. Each package targets a different experiment type or stage of the analysis pipeline:
flowchart LR
A["Upstream search tools<br/>Skyline · MaxQuant · Spectronaut<br/>DIA-NN · FragPipe · OpenMS/OpenSWATH · ..."] --> B["MSstatsConvert<br/>(format converters)"]
A --> G["MSstatsBig<br/>(larger-than-memory converters)"]
B --> C["MSstats<br/>DDA / DIA / SRM<br/>label-free & label-based"]
G --> C
C --> D["MSstatsTMT<br/>isobaric labeling"]
C --> E["MSstatsPTM<br/>post-translational mods"]
C --> F["MSstatsLiP<br/>limited proteolysis"]
C --> I["MSstatsResponse<br/>dose-response"]
D --> H["MSstatsBioNet<br/>network enrichment"]
E --> H
F --> H
I --> H
C --> H
C --> J["MSstatsShiny<br/>point-and-click GUI"]
D --> J
E --> J
F --> J
I --> J
H --> J
| Package | Description |
|---|---|
| MSstats | Core package for DDA, SRM, and DIA label-free/label-based experiments. |
| MSstatsTMT (GitHub) | Statistical analysis of experiments with isobaric (TMT) labeling and multiple mixtures, including repeated-measures designs. |
| MSstatsPTM (GitHub) | Quantitative analysis of post-translational modifications (PTMs), jointly modeling PTM-site and protein-level abundance. |
| MSstatsLiP (GitHub) | Analysis of limited proteolysis mass spectrometry (LiP-MS) data to detect protein structural changes. |
| MSstatsBig (GitHub) | Converters and tooling for processing larger-than-memory quantitative datasets. |
| MSstatsShiny (GitHub · web app) | Point-and-click R-Shiny GUI integrating MSstats family of packages. |
| MSstatsBioNet (GitHub) | Network analysis and enrichment of MSstats differential abundance results using prior-knowledge networks (e.g., INDRA). |
| MSstatsResponse (GitHub) | Semi-parametric dose-response modeling for chemoproteomics experiments (drug-protein interaction / IC50 estimation). |
| MSstatsConvert (GitHub) | Shared converters that translate output from Skyline, MaxQuant, Proteome Discoverer, Spectronaut, DIA-NN, FragPipe, OpenSWATH, and more into MSstats format. |
MSstatsResponse's semi-parametric curve-fitting approach to dose-response data generalizes beyond drug-protein interaction/IC50 estimation: the same concept applies to related experiment types such as Thermal Proteome Profiling (TPP) and protein turnover kinetics, where abundance is likewise modeled as a smooth function of a continuous variable (temperature or time) rather than a fixed curve shape.
MSstats is developed and maintained out of the Vitek Lab at Northeastern University.
Current developers:
- Devon Kohler
- Anthony Wu
- Mateusz Staniak
- Sarah Szvetecz
Former developers include Meena Choi, Deril Raju, Tsung-Heng Tsai, and Ting Huang. See the full author list in DESCRIPTION and the lab's publications page for the wider set of contributors across the MSstats ecosystem.
The lab also organizes the annual May Institute, a computational proteomics training program at Northeastern University covering mass spectrometry, statistics, and bioinformatics, which regularly features MSstats developers as instructors.
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("MSstats")The development version can be installed directly from this repository:
BiocManager::install("Vitek-Lab/MSstats", ref = "devel")library(MSstats)
# Use one of the datasets bundled with the package (label-based SRM example)
data("SRMRawData")
# Pre-process: log-transform, normalize, and summarize to protein level
QuantData <- dataProcess(SRMRawData, use_log_file = FALSE)
# Test all pairwise comparisons between conditions
testResults <- groupComparison(contrast.matrix = "pairwise",
data = QuantData,
use_log_file = FALSE)
head(testResults$ComparisonResult)Real experiments typically start by converting a search engine/tool's output
(e.g., Skyline, MaxQuant, Spectronaut, DIA-NN, FragPipe) into MSstats format
with a *toMSstatsFormat converter from MSstatsConvert, then proceeding with
dataProcess() and groupComparison() as above. See the vignettes below for
complete, tool-specific examples.
MSstats does not read raw search-tool output directly. Instead, a converter
translates each tool's report into MSstats format (one row per feature, run,
and condition) before dataProcess() is called. These converters are
implemented in MSstatsConvert:
| Search tool / format | Converter function |
|---|---|
| Skyline | SkylinetoMSstatsFormat() |
| MaxQuant | MaxQtoMSstatsFormat() |
| Progenesis | ProgenesistoMSstatsFormat() |
| Spectronaut | SpectronauttoMSstatsFormat() |
| Proteome Discoverer | PDtoMSstatsFormat() |
| DIA-NN | DIANNtoMSstatsFormat() |
| DIA-Umpire | DIAUmpiretoMSstatsFormat() |
| FragPipe | FragPipetoMSstatsFormat() |
| OpenMS | OpenMStoMSstatsFormat() |
| OpenSWATH | OpenSWATHtoMSstatsFormat() |
| Metamorpheus | MetamorpheusToMSstatsFormat() |
MSstatsConvert also provides a set of *toMSstatsTMTFormat() converters
(MaxQuant, OpenMS, Proteome Discoverer, Philosopher/FragPipe, Protein
Prospector, SpectroMine) for isobaric-labeling experiments, used with
MSstatsTMT instead of MSstats.
See the End to End Workflow vignette for the
required input files and options for each converter.
- MSstats: Protein/Peptide significance analysis — overview of all functionality
- MSstats: End to End Workflow — full worked example from raw data to results
- MSstats+ vignette
- Official website: msstats.org
- Bioconductor package page and reference manual
- Questions about usage, statistical methods, or troubleshooting: please post to the MSstats Google Group. This is monitored by the development team and searchable, so it's the fastest way to get help and to see if your question has already been answered.
- Bug reports and feature requests for this repository: please open a GitHub issue.
MSstats has been part of Bioconductor since release 2.13 (2013) and is used across the proteomics community, integrated as an external tool in Skyline and underlying the MSstats family of packages and MSstatsShiny.
Citation counts from OpenAlex, updated monthly. Google Scholar counts are typically higher, since Scholar indexes a broader range of sources (theses, gray literature, etc.); OpenAlex has a free, stable, official API. Last updated 2026-07-16 (UTC).
This table is regenerated automatically alongside the download statistics
below by
.github/workflows/update-citation-stats.yaml,
using OpenAlex rather than Google Scholar — Scholar
has no official API and blocks automated requests, which makes it unreliable
for an unattended scheduled job. If you'd like exact Google Scholar counts,
see the MSstats citations search
directly.
Average monthly downloads over the last 6 complete months, computed directly from Bioconductor's download logs. Last updated 2026-07-15 (UTC).
| Package | Avg. monthly downloads |
|---|---|
| MSstats | 1,566 |
| MSstatsTMT | 796 |
| MSstatsPTM | 632 |
| MSstatsLiP | 442 |
| MSstatsBig | 384 |
| MSstatsShiny | 437 |
| MSstatsBioNet | 311 |
| MSstatsResponse | 298 |
| MSstatsConvert | 1,100 |
This table is regenerated automatically once a month by
.github/workflows/update-download-stats.yaml,
which pulls the latest numbers from
Bioconductor's download logs
for every package in the ecosystem.
If you use MSstats or a package from the MSstats ecosystem, please cite the relevant publication(s):
- Oberg AL, Vitek O. Statistical design of quantitative mass spectrometry-based proteomic experiments. J Proteome Res. 2009;8(5):2144-2156. DOI: 10.1021/pr8010099
- Choi M, Chang CY, Clough T, Broudy D, Killeen T, MacLean B, Vitek O. MSstats: an R package for statistical analysis of quantitative mass spectrometry-based proteomic experiments. Bioinformatics. 2014;30(17):2524-2526. DOI: 10.1093/bioinformatics/btu305
- Tsai TH, Choi M, Banfai B, Liu Y, MacLean BX, Dunkley T, Vitek O. Selection of Features with Consistent Profiles Improves Relative Protein Quantification in Mass Spectrometry Experiments. Mol Cell Proteomics. 2020;19(6):944-959. DOI: 10.1074/mcp.RA119.001792
- Kohler D, Staniak M, Tsai TH, Huang T, Shulman N, Bernhardt OM, MacLean BX, Nesvizhskii AI, Reiter L, Sabido E, Choi M, Vitek O. MSstats Version 4.0: Statistical Analyses of Quantitative Mass Spectrometry-Based Proteomic Experiments with Chromatography-Based Quantification at Scale. J Proteome Res. 2023;22(5):1466-1482. DOI: 10.1021/acs.jproteome.2c00834
- Kohler D, Vitek O, et al. An MSstats workflow for detecting differentially abundant proteins in large-scale data-independent acquisition mass spectrometry experiments with FragPipe processing. Nat Protoc. 2024;19:2915-2938. DOI: 10.1038/s41596-024-01000-3
- Kohler D, Dogu E, Bhattacharya M, Karayel O, Magana M, Wu A, Anania VG, Vitek O. Accounting for longitudinal peak quality metrics with MSstats+ enhances differential analysis in proteomic experiments with data-independent acquisition (introduces MSstats+). bioRxiv. 2025. DOI: 10.1101/2025.09.11.675573
- Huang T, Choi M, Tzouros M, Golling S, Pandya NJ, Banfai B, Dunkley T, Vitek O. MSstatsTMT: Statistical Detection of Differentially Abundant Proteins in Experiments with Isobaric Labeling and Multiple Mixtures. Mol Cell Proteomics. 2020;19(10):1706-1723. DOI: 10.1074/mcp.RA120.002105
- Huang T, Staniak M, da Veiga Leprevost F, Figueroa-Navedo AM, Ivanov AR, Nesvizhskii AI, Choi M, Vitek O. Statistical Detection of Differentially Abundant Proteins in Experiments with Repeated Measures Designs and Isobaric Labeling. J Proteome Res. 2023;22(8):2641-2659. DOI: 10.1021/acs.jproteome.3c00155
- Figueroa-Navedo AM, Kapre R, Gupta T, Xu Y, Phaneuf CG, Jean Beltran PM, Xue L, Ivanov AR, Vitek O. MSstatsTMT Improves Accuracy of Thermal Proteome Profiling. Mol Cell Proteomics. 2025;24(8):100999. DOI: 10.1016/j.mcpro.2025.100999
- Kohler D, Tsai TH, Verschueren E, Huang T, Hinkle T, Phu L, Choi M, Vitek O. MSstatsPTM: Statistical Relative Quantification of Posttranslational Modifications in Bottom-Up Mass Spectrometry-Based Proteomics. Mol Cell Proteomics. 2022;22(1):100477. DOI: 10.1016/j.mcpro.2022.100477
- Malinovska L, Cappelletti V, Kohler D, Piazza I, Tsai TH, Pepelnjak M, Stalder P, Dörig C, Sesterhenn F, Elsässer F, Kralickova L, Beaton N, Reiter L, de Souza N, Vitek O, Picotti P. Proteome-wide structural changes measured with limited proteolysis-mass spectrometry: an advanced protocol for high-throughput applications (introduces MSstatsLiP). Nat Protoc. 2023;18(3):659-682. DOI: 10.1038/s41596-022-00771-x
- Kohler D, Kaza M, Pasi C, Huang T, Staniak M, Mohandas D, Sabido E, Choi M, Vitek O. MSstatsShiny: A GUI for Versatile, Scalable, and Reproducible Statistical Analyses of Quantitative Proteomic Experiments. J Proteome Res. 2023;22(2):551-556. DOI: 10.1021/acs.jproteome.2c00603
- Szvetecz S, Kohler D, Vitek O. MSstatsResponse: Semi-parametric statistical model enhances detection of drug-protein interactions in chemoproteomics experiments. bioRxiv. 2026. DOI: 10.64898/2026.03.09.710598
- Wu A, Kohler D, Navada P, Robbins J, Boyle G, Boshart A, Karis K, Neefjes J, Konvalinka A, Sarthy J, Pino L, Gyori B, Vitek O. MSstatsBioNet: Integrating Statistical Analyses with Prior Knowledge Biomolecular Networks for Quantitative Proteomics and Phosphoproteomics. bioRxiv. 2026. DOI: 10.64898/2026.07.09.737605
MSstats development has been supported by the Chan Zuckerberg Initiative's Essential Open Source Software for Science.
MSstats is released under the Artistic-2.0 license.