Partial sequence tags from peptide MS/MS spectra, and a filter that keeps only the spectra whose tags occur in sequences you supply.
A sequence tag is a short peptide read inferred directly from a fragment-ion ladder — no database search, no precursor digest. FASTag is a fast, sensitive prefilter: it tells you what is worth looking at before you commit to a slow method.
-fasta.The algorithm is a reimplementation of DirecTag (Tabb et al., J. Proteome Res. 2008, 7:3838). That paper is the citation — FASTag has no separate publication.
Measured against DirecTag 1.4.21142 at 128 threads on public ProteomeXchange runs, with a September 2026 FASTag build and settings matched to DirecTag (tag length 3, 50 tags, 100 peaks, no gaps, no deisotoping); wall clock and peak memory for the whole run, including writing the tags:
| FASTag | DirecTag | |
|---|---|---|
| PXD047793, timsTOF diaTracer pseudo-MS2, 3.09 M spectra, 23 GB | 15.65 s, 280 MB | 746.61 s, 69.4 GB |
| PXD028735, timsTOF diaPASEF, 151,648 spectra | 5.79 s, 864,815 tags | 541.5 s, 0 spectra read |
| Valid tag ranked first (PXD000001) | 90.91% | 88.69% |
| Valid tag within top 50 (PXD000001) | 98.62% | 98.62% |
Memory is flat in the file size rather than proportional to it, so a run is bounded by threads, not by input. Both tools reach the same accuracy ceiling on PXD000001 — 98.62% of the spectra identified by its Mascot search get a valid tag — and FASTag gets there sooner in the ranking. A benchmark of the current release on further public data, at several thread counts and against database-search identifications, is in preparation.
Binaries are self-contained — the tool, its libraries and the OpenMS data it needs. macOS builds are signed with a Developer ID certificate, notarized by Apple, and the disk images carry their notarization ticket, so they open with no network connection.
Your system:
| Platform | Desktop app | Command line |
|---|---|---|
| macOS, Apple silicon | FASTag-gui-macos-arm64.dmg | FASTag-macos-arm64.dmg |
| macOS, Intel | not built from 1.8.0 on; the last Intel release is 1.6.1 | |
| Windows x64 | FASTag-gui-windows-x64-setup.exe | FASTag-windows-x64.zip |
| Linux x86-64 | — | FASTag-linux-x64.tar.gz |
| Linux arm64 | — | FASTag-linux-arm64.tar.gz |
Species detection additionally needs the taxonomy index, FASTag-taxonomy-k7.tar.gz, which is already embedded in the release tarballs above. Windows binaries are not yet Authenticode-signed, so SmartScreen will warn on first run. All releases: github.com/okohlbacher/FASTag/releases.
# tags for every MS2 spectrum in a run
FASTag -in run.mzML -out tags.tsv
# high-resolution data, seed length 3 extended to at most 15 residues
FASTag -in run.mzML -out tags.tsv -tag_length 3 -extension 6
# ion-trap MS2 — set the tolerance to match the analyser
FASTag -in run.mzML -out tags.tsv -fragment_tolerance 0.3 -fragment_tolerance_unit Da
# keep only tags occurring in a protein of interest, and the spectra carrying them
FASTag -in run.mzML -out tags.tsv -fasta protein.fasta -out_spectra hits.mzML
# mzPeak in, mzPeak out — any combination of mzML and mzpeak works
FASTag -in run.mzpeak -out tags.tsv -out_spectra hits.mzpeak
Isotope collapsing and one gap per tag are on by default. For the fastest possible run, or to
match a tool with no equivalent of either, add -no_deisotope -gaps 0.
FASTag reads and writes mzPeak, the Parquet-backed mass-spectrometry container. Tagging is unaffected by which you use: reading a run as mzPeak gives the same spectra as reading it as mzML, and a run written to mzPeak and tagged again reproduces the original tag set exactly.
Support comes from mzpeak-openms, bundled with every released binary.
For the algorithm:
Tabb DL, Ma ZQ, Martin DB, Ham AJ, Chambers MC. DirecTag: accurate sequence tags from peptide MS/MS through statistical scoring. J Proteome Res 2008; 7(9): 3838–46. doi:10.1021/pr800154p
For the framework:
Pfeuffer J, Bielow C, Wein S, et al. OpenMS 3 enables reproducible analysis of large-scale mass spectrometry data. Nat Methods 2024. doi:10.1038/s41592-024-02197-7