SignalP 6.0: official server, tutorial, and result interpretation
Use SignalP 6.0 to predict N-terminal signal peptides, distinguish five prokaryotic classes, locate cleavage sites, and interpret residue-level regions.

TL;DR
- The official SignalP 6.0 server is hosted by DTU Health Tech; BioLib provides a mirror when the DTU server is busy.
- For bacterial and archaeal proteins, SignalP 6.0 distinguishes Sec/SPI, Sec/SPII, Sec/SPIII, Tat/SPI, and Tat/SPII. Eukaryotic mode predicts Sec/SPI only.
- Use fast mode for routine or high-throughput screening. Use slow mode when accurate signal-peptide region boundaries matter.
- A positive result supports entry into a classical secretory or membrane-translocation pathway, not necessarily extracellular secretion.
SignalP 6.0 is a protein-sequence method for predicting N-terminal signal peptides, their type, their biochemical regions, and the position at which a signal peptidase is most likely to cleave. The official SignalP 6.0 signal peptide prediction server is operated by DTU Health Tech. A BioLib mirror is available when the DTU server is heavily loaded.[2]
SignalP answers a specific question: does the beginning of this protein contain a narrow-sense secretory signal peptide? It does not by itself determine the protein's final cellular location, prove extracellular secretion, or identify every other type of targeting signal.[2]
What does SignalP 6.0 predict?
For every submitted protein, SignalP 6.0 assigns the most likely protein class, reports the likelihood of each allowed class, predicts a cleavage site when applicable, and provides residue-level region probabilities. In bacteria and archaea, it distinguishes five signal-peptide classes. Eukaryotic mode is restricted to Sec/SPI.[1][2]
| Biological class | Portable-package label | Route and processing | Defining feature | Available for |
|---|---|---|---|---|
| Sec/SPI | SP | Sec pathway; cleaved by signal peptidase I | Usually has n-, h-, and c-regions | Eukaryotes, bacteria, and archaea |
| Sec/SPII | LIPO | Sec pathway; cleaved by signal peptidase II | Lipobox followed by a lipidated cysteine at position +1 | Bacteria and archaea |
| Tat/SPI | TAT | Tat pathway; cleaved by signal peptidase I | Twin-arginine motif, usually within the n-region | Bacteria and archaea |
| Tat/SPII | TATLIPO | Tat pathway; cleaved by signal peptidase II | Twin-arginine motif plus a lipobox and +1 cysteine | Bacteria and archaea |
| Sec/SPIII | PILIN | Sec pathway; cleaved by signal peptidase III | Pilin or pilin-like signal peptide; no n/h/c subdivision | Bacteria and archaea |
| No predicted signal peptide | OTHER | No supported narrow-sense signal peptide | The N-terminus does not match one of the allowed classes strongly enough | All modes |
The five-class claim refers to the bacterial and archaeal model space. A eukaryotic submission is evaluated as Sec/SPI versus Other, because the other four classes are prokaryotic signal-peptide types.[2]
What are the n-, h-, and c-regions?
A typical Sec/SPI signal peptide contains three functional regions rather than one universal sequence motif:
| Region or feature | SignalP label | Meaning |
|---|---|---|
| n-region | N | Amino-terminal region, often enriched in positively charged residues |
| h-region | H | Central hydrophobic region that supports membrane targeting and insertion |
| c-region | C | More polar region around the signal peptidase I cleavage site |
| Twin-arginine feature | R | The characteristic Tat-pathway motif near the end of the n-region |
| Lipoprotein +1 cysteine | c | Conserved cysteine immediately after an SPII cleavage site |
| Mature-protein state | Shown separately | Residues outside the predicted signal peptide |
Sec/SPII and Tat/SPII use a lipobox and +1 cysteine rather than the standard c-region definition. Sec/SPIII signal peptides have no established n/h/c substructure in SignalP's output.[1][2]
How does SignalP 6.0 work?
SignalP 6.0 combines a transformer protein language model with a conditional random field, or CRF. The language model was pretrained on UniRef100 protein sequences and converts each amino acid into a context-dependent representation. The CRF then decodes those representations into a biologically valid sequence of region labels while also producing the protein-level signal-peptide class.[1][3]
This matters because signal peptides share biochemical organization but can have low sequence identity. Protein-language-model pretraining lets the method reuse patterns learned from millions of unlabelled sequences, including when the labelled training set for a particular signal-peptide type is very small.[1]
SignalP 6.0 training data by class
The published dataset contained 25,393 proteins. Of these, 6,357 had an annotated signal peptide, while 16,421 were intracellular proteins and 2,615 were transmembrane proteins used as negative examples. The two classes added in SignalP 6.0 were also the rarest annotated classes.[1]
| Signal-peptide class | Annotated sequences | Share of signal-peptide examples |
|---|---|---|
| Sec/SPI | 3,352 | 52.7% |
| Sec/SPII | 2,261 | 35.6% |
| Tat/SPI | 595 | 9.4% |
| Sec/SPIII | 113 | 1.8% |
| Tat/SPII | 36 | 0.6% |
| Total | 6,357 | 100% |
The percentages are ProteinIQ calculations from the sequence counts reported in the SignalP 6.0 publication.[1]
These counts explain why transfer from a pretrained language model was especially relevant for Sec/SPIII and Tat/SPII. In the publication, SignalP 6.0 improved class detection for nearly every evaluated organism-and-class combination, improved cleavage-site precision, and outperformed the SignalP 5.0 baseline more clearly below 60% identity to the training data.[1]
The evaluation used threefold nested cross-validation and kept homologous sequences in the same partition. This reduces the risk of reporting inflated performance caused by closely related proteins appearing in both training and test data. The method can also process prokaryotic sequences of unknown origin, which is useful for metagenomic and metatranscriptomic data. It still depends on the correct translation start and a complete N-terminus.[1]
SignalP 6.0 versus SignalP 5.0
| Capability | SignalP 5.0 | SignalP 6.0 |
|---|---|---|
| Main model | Deep neural network with structured output | Pretrained transformer protein language model plus CRF |
| Prokaryotic signal-peptide classes | Sec/SPI, Sec/SPII, Tat/SPI | Sec/SPI, Sec/SPII, Tat/SPI, Tat/SPII, Sec/SPIII |
| Signal-peptide region boundaries | Does not report the complete class-specific region structure | Predicts n-, h-, c-, twin-arginine, and lipoprotein features where applicable |
| Organism information | Uses explicit organism-group models | Infers phylogenomic context from sequence; live server only asks Eukarya versus Other |
| Unknown prokaryotic origin | Organism group must be supplied | Designed to support sequences of unknown prokaryotic origin |
| Web modes | One main prediction mode | Fast distilled model and slow full model |
SignalP 6.0 is therefore more than a version-number update. Its main additions are the two rare prokaryotic classes, explicit region prediction, and reduced dependence on known organism origin.[1][2][5]
How to use SignalP 6.0 online
The web server accepts one-letter amino-acid sequences, either pasted directly or uploaded in FASTA format. It is not a nucleotide-sequence tool. Start with the complete translated protein and preserve the true N-terminus, because SignalP only evaluates an amino-terminal targeting signal.[1][2]
- Enter protein sequences. Paste one protein sequence or multiple FASTA records, or upload a FASTA file. Use unique, concise identifiers so that downloaded results remain easy to match to the source data.
- Choose Eukarya or Other. Select Eukarya for proteins from eukaryotic organisms. Select Other for bacterial or archaeal proteins, including prokaryotic sequences whose exact taxonomic origin is unknown.
- Choose long or short output. Use Long output when you need per-sequence plots and detailed inspection. Use Short output for batches because it omits figures and returns one compact result per sequence.
- Choose fast or slow mode. Use Fast for routine screening and large datasets. Use Slow when accurate n-, h-, and c-region boundaries are important enough to justify roughly six times more computation.
- Submit and download the run. Review the browser results, then download the summary, JSON, processed FASTA, or GFF3 output. DTU stores completed results for 24 hours, so save the files needed for reproducibility.
Current web-server limits
| Limit or behavior | Current guidance |
|---|---|
| Minimum sequence length | 10 amino acids |
| Maximum proteins | The live form states 1,000 proteins |
| Maximum sequence length | The instruction text states 10,000 amino acids |
| Detailed batch output | Long output may time out above 100 entries |
| Completed-result retention | 24 hours |
| Accepted ambiguous residues | X, U, B, Z, and O are accepted; unsupported letters are converted to X |
The DTU page currently contains one inconsistency: its live submission form states a maximum of 1,000 proteins, while the longer instruction text still mentions 5,000. Treat 1,000 proteins as the safer operational limit, and use short output for any substantial batch.[2]
Should you use fast or slow SignalP?
Both modes predict the protein class, cleavage site, and residue regions. Fast mode is a reduced model distilled from the full slow model. DTU recommends it for most applications and high-throughput screening. Slow mode is approximately six times slower and is intended for analyses where region-border accuracy matters.[2]
| Use case | Recommended mode |
|---|---|
| Screen hundreds of proteins for likely signal peptides | Fast |
| Annotate a proteome or metagenomic protein set | Fast with short output |
| Decide the likely mature-protein boundary for construct design | Slow, followed by manual or experimental validation |
| Compare n-, h-, and c-region boundaries | Slow |
| Preliminary check before a broader localization workflow | Fast |
Run SignalP 6.0 locally
DTU also distributes a portable Python package with the same core functionality. Academic users can request the package without a license fee; commercial users must contact DTU about licensing. The public GitHub repository contains development code and installation documentation, but users seeking the supported prediction package should follow DTU's download process.[1][2][3][4]
A typical command is:
signalp6 \
--fastafile proteins.fasta \
--organism other \
--output_dir signalp6_results \
--format txt \
--mode fastThe installable package documents fast, slow, and slow-sequential modes. The parallel slow mode requires more than 14 GB of RAM according to the package instructions. slow-sequential lowers that memory requirement but takes substantially longer.[4]
| Local output | Contents |
|---|---|
prediction_results.txt | One row per sequence with the predicted type, class probabilities, and cleavage site |
processed_entries.fasta | Predicted mature proteins with the signal peptide removed |
output.gff3 | Coordinates of predicted signal peptides |
region_output.gff3 | Coordinates of predicted signal-peptide regions |
output.json | Results, run settings, and output-file metadata for pipelines |
| Per-sequence plot files | Optional tabular, PNG, or EPS residue-level output |
For large local runs, avoid generating one plot per sequence unless those plots are needed. The package documentation notes that plotting and file writing can become a meaningful part of the runtime.[4]
How to interpret SignalP 6.0 results
A SignalP result contains three related but different predictions:
- Protein class: the most likely class among those permitted by the chosen organism setting.
- Cleavage site: the most likely bond at which the signal peptide is processed.
- Residue labels: marginal probabilities that each position belongs to a particular signal-peptide region or to the mature protein.[2]
Do not interpret these as interchangeable confidence values. A protein can have a clear Sec/SPI class prediction but a less certain cleavage boundary, or several neighboring cleavage positions can remain plausible even when a signal peptide is strongly supported.
How to read the cleavage position
When SignalP reports “cleavage site between positions 23 and 24,” residues 1 through 23 form the predicted signal peptide and residue 24 is the predicted first residue of the mature chain. This is a boundary between residues, not a residue numbered 23.5.
The official example reports a Sec/SPI prediction with cleavage between positions 13 and 14. Its Sec/SPI class likelihood is about 0.71, while the reported cleavage-site probability is about 0.69. The two values answer different questions: one concerns the protein class, and the other concerns the exact processing boundary.[2]
| Result field | Question it answers |
|---|---|
Prediction | Which signal-peptide class has the highest supported probability? |
| Class likelihoods | How is probability distributed across the allowed protein classes? |
| Cleavage-site probability | How strongly does the model support this exact boundary? |
| Region-probability plot | Which residues are assigned to n-, h-, c-, Tat-, lipoprotein-, or mature-protein states? |
| Most likely label sequence | What single, biologically consistent region path did the CRF select? |
What makes a result uncertain?
Treat the prediction as less decisive when:
- the leading class has only a small likelihood advantage over
OTHERor another class, - neighboring cleavage positions have similar probabilities,
- fast and slow mode place important region boundaries differently,
- the sequence begins with a long hydrophobic segment that could be a retained signal anchor,
- the submitted protein may have an incomplete or incorrect N-terminus,
- or many ambiguous residues occur near the predicted signal peptide.
There is no universal class-likelihood value that converts a prediction into experimental proof. For cleavage-sensitive construct design, inspect the residue plot, rerun the sequence in slow mode, compare curated homologues, and validate the mature N-terminus experimentally when the boundary is consequential.
Does a positive SignalP result mean the protein is secreted?
No. A positive result supports entry into a classical secretory or membrane-translocation pathway. It does not establish the protein's final destination.[2]
| Context | A positive prediction can be consistent with |
|---|---|
| Eukaryotes | Extracellular secretion, ER or Golgi retention, lysosomal or vacuolar targeting, a membrane protein, or a GPI-anchored protein |
| Gram-negative bacteria | Periplasmic localization, inner-membrane retention, outer-membrane insertion, or export beyond the outer membrane |
| Gram-positive bacteria and archaea | Membrane retention or cell-wall attachment; release beyond the cell requires additional evidence |
| Lipoproteins | Membrane-associated mature proteins after lipidation of the +1 cysteine |
| Tat substrates | Export through the twin-arginine pathway rather than the Sec pathway |
A negative result means that SignalP did not identify one of its supported N-terminal signal-peptide patterns. It does not exclude mitochondrial or chloroplast transit peptides, internal signal anchors, peroxisomal or nuclear targeting signals, or secretion pathways that do not use a classical N-terminal signal peptide.[2]
SignalP also does not replace a transmembrane-topology predictor. Signal peptides and N-terminal transmembrane helices are both hydrophobic, and a retained signal anchor can resemble a cleaved signal peptide. Check the entire sequence before converting a predicted cleavage site into a biological annotation or expression construct.[2][6]
A practical confirmation workflow
| Question | Best next analysis |
|---|---|
| Is the N-terminus hydrophobic, and are there other hydrophobic segments? | Use a hydropathy plot |
| Is the whole protein unusually hydrophobic? | Calculate its GRAVY score |
| Does the sequence contain a signal anchor or additional transmembrane helices? | Compare with DeepTMHMM or Phobius |
| Is the N-terminal signal mitochondrial, chloroplastic, or secretory? | Use TargetP 2.0 for eukaryotic proteins |
| Where is the mature protein likely to localize? | Use DeepLoc 2.1 for eukaryotes or DeepLocPro for prokaryotes |
| How does signal-peptide removal change basic sequence properties? | Compare precursor and mature chains with Protein Parameters |
For a predicted mature protein, repeat sequence-level analyses after removing residues through the proposed cleavage position. This makes the effect of the boundary on molecular weight, charge, and hydrophobicity explicit.
Which signal peptide prediction tool should you use?
No single protein-sorting predictor answers every localization question. Choose the method according to the biological decision rather than treating all N-terminal signals as equivalent.
| Tool | Best used for | What it adds beyond SignalP |
|---|---|---|
| TargetP 2.0 | Eukaryotic N-terminal targeting peptides | Distinguishes secretory, mitochondrial, chloroplast, and thylakoid-lumen targeting signals |
| DeepTMHMM | Transmembrane-protein classification and topology | Tests whether hydrophobic segments are retained membrane helices and finds additional helices |
| Phobius | Joint signal-peptide and transmembrane-topology prediction | Explicitly models the competition between a cleaved signal peptide and an N-terminal transmembrane segment |
| DeepLoc 2.1 | Eukaryotic subcellular localization | Predicts one or more final compartments and membrane-association types |
| DeepLocPro | Prokaryotic subcellular localization | Distinguishes cytoplasm, cytoplasmic membrane, periplasm, outer membrane, cell wall or surface, and extracellular space |
SignalP remains the focused choice when the main question is whether a classical N-terminal signal peptide is present, what type it is, and where it is cleaved. Use the other tools to answer broader targeting, membrane-topology, or final-localization questions.[2][6][7][8][9][10]
Frequently asked questions
Where is the official SignalP 6.0 server?
The official server is hosted by DTU Health Tech. DTU also links to a SignalP 6.0 BioLib mirror for periods when the main server is heavily loaded. DTU states that it cannot provide troubleshooting support for the BioLib-hosted service.[2]
Is the tool called SignalP, Signal P, or Signal IP?
The official spelling is SignalP, with no space. “Signal P,” “SignalP6,” “Signal P 6.0,” and “Signal IP 6.0” are common search variants for SignalP 6.0.
Do I need to select an organism group?
Yes, on the current web form you select Eukarya or Other. This is not the old four-way organism requirement. The underlying model can infer prokaryotic phylogenomic context from sequence, while the Eukarya option prevents Sec/SPII, Sec/SPIII, Tat/SPI, and Tat/SPII calls that are not part of the eukaryotic output space.[1][2]
What does Other mean in SignalP 6.0?
The term has two uses. In the organism selector, Other means bacteria or archaea. In prediction output, OTHER means that no supported signal-peptide class was selected for that protein.[2]
Should I use fast or slow mode?
Use fast mode for most single-sequence checks and high-throughput analyses. Use slow mode when precise region boundaries matter, such as detailed signal-peptide analysis or choosing a candidate mature-protein construct. Slow mode takes about six times longer.[2]
Can SignalP 6.0 accept DNA or RNA sequences?
No. Submit translated protein sequences in one-letter amino-acid code. Nucleotide sequences must be translated first, and the correct start site matters because SignalP evaluates the N-terminus.[1][2]
How many sequences can I submit?
The live DTU form currently states a maximum of 1,000 proteins, although its instruction text still mentions 5,000. Use 1,000 as the practical limit and choose short output for batches. Long output may time out above 100 entries.[2]
Can SignalP predict mitochondrial or chloroplast targeting peptides?
SignalP is designed for narrow-sense secretory signal peptides. Use TargetP 2.0 when the question is whether a eukaryotic N-terminus contains a mitochondrial, chloroplast, thylakoid-lumen, or secretory targeting peptide.[2][7]
Can I run SignalP 6.0 locally?
Yes. DTU distributes a portable Python package. It is available to academic users through the download process, while commercial users must contact DTU about licensing. The public GitHub repository contains the model's development code and technical documentation.[1][2][3][4]
Which setting should I use for a viral protein?
Use the category corresponding to the host organism. For example, choose Eukarya for a signal peptide used in a eukaryotic host and Other for a bacteriophage protein handled by a bacterial host. SignalP does not use a separate viral model.[2]


