How to Select Target Antigens for Reverse Vaccinology

Target selection narrows a whole proteome to a few proteins worth working on. Keep proteins that are secreted or surface exposed, carry a signal peptide, have at most one transmembrane helix, share no significant similarity with human proteins, and are conserved across the strains you care about. Everything downstream inherits this choice.
Every guide in our immunoinformatics series starts from a protein sequence you are assumed to already have. This one is about where that sequence comes from, because it is the step that decides whether the rest of the project is worth doing. A construct built on a cytoplasmic protein that antibodies never meet will still dock nicely to TLR4 and still give you a stable simulation. The numbers will look fine and the biology will be wrong.
What makes a protein a good vaccine target?
Four properties, and only the first is about immunology.
The immune system can physically reach it. Antibodies do not cross into the bacterial cytoplasm or into an intact virion’s interior. A target has to be secreted, anchored in the outer membrane, or otherwise displayed on the surface. This single constraint removes most of any proteome.
You can make it. A protein with seven membrane-spanning segments is difficult to express as a soluble recombinant antigen, which is why published pipelines usually keep proteins with no more than one predicted transmembrane helix. State the cutoff you used and why, rather than copying a number from another paper.
It does not look like us. A candidate with a strong similarity to a human protein carries an autoimmunity risk, and it is cheap to check.
It does not change. A target that differs between strains or serotypes gives you a vaccine that works against one isolate. Conservation is what separates a design exercise from a useful one.
This logic is not new, and it has a name and a primary source. Rappuoli set out the approach in Reverse vaccinology (Current Opinion in Microbiology, 2000, 3(5):445-450), after the group behind it screened the serogroup B meningococcus genome for surface-exposed candidates in Pizza et al., Science, 2000, 287(5459):1816-1820. The tools have changed completely since then. The filter logic has not.
How do you get the proteome to start from?
Two routes, and which one you use depends on whether your organism has a curated proteome.
The first is UniProt Proteomes. Searching the UniProt proteomes endpoint on 12 September 2026 returned 1,334,862 proteomes in total, of which 37,190 are marked as reference proteomes. A reference proteome is the one to take when it exists, because it is the curated representative for that organism rather than one submitter’s assembly. If you script it, the REST search endpoint accepts query=reference:true and returns the count in the X-Total-Results response header, and a single sequence comes back from a URL of the form rest.uniprot.org/uniprotkb/<accession>.fasta.
The second is GenBank, when you want one specific sequenced isolate rather than a curated representative. This is what our own team did for monkeypox virus: the published MPXV study took strain W-Nigeria under accession KJ642615.1, characterised 176 proteins in that proteome, and then, in the paper’s own words, “filtered only glycoproteins and membrane proteins for further analysis”. That sentence is the entire target-selection step of a published vaccine design, and the number is worth holding on to: 176 proteins in, a handful out.
Record the accession, the database and the date you downloaded it. Reference proteomes are updated, and a project that cannot say which version it used cannot be reproduced.
Which filters do you apply, and in what order?
Order matters because each filter is more expensive than the one before it. Run the cheap, mechanical screens first so the slow steps see a short list.
| Filter | Tool | What you keep | What it costs you | Why students skip it |
|---|---|---|---|---|
| 1. Signal peptide | SignalP 6.0 | Proteins predicted to be exported | Misses non-classical secretion routes | They assume localisation already covers it |
| 2. Transmembrane topology | DeepTMHMM | Proteins with zero or one predicted TM helix | Discards real surface proteins that are polytopic | The cutoff is copied, never justified |
| 3. Subcellular localisation | PSORTb for bacteria, plus the topology result | Extracellular and outer-membrane proteins | Predictions disagree at the margins | It needs a per-protein run, so it feels slow |
| 4. Human homology | BLASTp against Homo sapiens, taxid 9606 | Candidates with no significant human hit | An extra manual step no server does for you | It appears late in most tutorials, if at all |
| 5. Conservation | Clustal Omega, then the IEDB Epitope Conservancy tool | Proteins stable across your strains or serotypes | Needs more than one sequenced genome | Only one strain is available, so it is dropped silently |
Antigenicity prediction sits after all five, not before. It is the step most students do first and alone, and it is the least discriminating of the set. We cover it in detail in our guide to antigenicity, allergenicity and toxicity screening, which is where the server thresholds and their limits belong.
Want the guided, hands-on version?
Our live Molecular Modeling & MD Simulations cohort bootcamp takes you from zero to running real docking and MD workflows, with a portfolio project for your grad-school applications.
How do you predict whether a protein is secreted or surface exposed?
Start with the signal peptide. SignalP 6.0 at DTU Health Tech is the current version, and its own page states that the server “predicts the presence of signal peptides and the location of their cleavage sites in proteins from Archaea, Gram-positive Bacteria, Gram-negative Bacteria and Eukarya”, and that in Bacteria and Archaea it “can discriminate between five types of signal peptides”. That discrimination matters: which secretion system moves your protein changes how you would eventually express it.
Two operational points. Set the organism group correctly, because a eukaryotic setting applied to a bacterial proteome produces confident nonsense. And read the cleavage site, not only the yes or no. If you go on to express the mature protein, the construct usually starts after the cleavage site.
Then run topology. DeepTMHMM is the current successor to the retired TMHMM server, and it gives you the number and position of predicted transmembrane helices. Use it for two decisions at once: the count, which feeds the expression argument above, and the topology, which tells you which loops face outward. Epitope prediction on an inward-facing loop is wasted effort even when the protein itself is a good target.
For bacteria, PSORTb adds a localisation call across cytoplasm, inner membrane, periplasm, outer membrane and extracellular space. Its server sits behind a browser check, so open it directly rather than expecting a script to reach it. When SignalP and the topology prediction disagree, treat the protein as unresolved and say so in your methods instead of picking whichever answer you preferred. InterPro is the useful tie-breaker, because a known domain family often settles where a protein sits.
How do you rule out proteins that look like human proteins?
Run protein BLAST with your candidate as the query and the database restricted to Homo sapiens, taxid 9606. You are looking for the absence of a meaningful hit, so record the E-value threshold you applied and the best hit you did get, even if it was poor. A result stated as “no significant similarity” with no threshold behind it is not a result.
Our monkeypox paper did this check at the construct stage and reported that the vaccine construct “is dissimilar to human proteins (taxid: 9606; Homo sapiens) in a protein-protein BLAST analysis”. Doing it at the target stage as well is cheaper, because it removes a protein before you spend a week predicting epitopes on it.
One caution. Homology to a human protein is a risk signal, not a verdict, and short local matches are common and often meaningless. Report what you found and let the threshold do the deciding.
How do you check the target is conserved across strains?
At the protein level, align the homologous sequences from every strain or serotype you can get with Clustal Omega on the EBI Job Dispatcher and look at where the variation sits. A target with a conserved core and a variable surface loop is a real and common outcome, and it changes which region you take epitopes from.
At the epitope level, the IEDB Epitope Conservancy Analysis tool does the job directly. Its form has three steps: your epitope sequences, the protein sequences to search, and the calculation options, where you choose between linear and discontinuous conservancy and set a sequence identity threshold from 100% down in ten-point steps. The tool is supported by a contract from the National Institute of Allergy and Infectious Diseases.
The team’s monkeypox work shows how strict this can reasonably be. Conservation was checked across three strains, WRAIR7-61, Sierra Leone and COP-58, and the paper states that epitopes “exhibiting 100% identity in sequences among the selected monkeypox strains were selected since they possessed less probability of any mutation”. A 100% threshold across three strains is a defensible choice. So is a lower one, if you say what you chose and why.
What do you do when target selection goes wrong?
There is no reference proteome for your organism. Take a specific sequenced isolate from GenBank instead and name the accession, as the monkeypox study did with KJ642615.1. A named isolate is reproducible. An unnamed “sequence from NCBI” is not.
Every surviving candidate has six or more transmembrane helices. This is common in some bacteria. Do not quietly widen the cutoff. Either move to the extracellular loops of those proteins, which the topology output gives you directly, or state that you kept a polytopic protein and explain how you would express only its exposed domain.
SignalP and the topology prediction disagree. A lipoprotein signal or a signal anchor can look like a transmembrane helix to one tool and a signal peptide to the other. Check the domain annotation in InterPro, and keep the protein flagged as uncertain rather than forcing a call.
A candidate hits a human protein. Look at what the hit actually is before discarding. A short match inside a common structural motif is different from a full-length match to a human enzyme. Record the alignment length and identity so a reviewer can judge it.
Only one strain of your organism is sequenced. You cannot compute conservancy, so do not present a number. Say that only one genome was available, name it, and treat conservation as untested. A stated limitation is a much smaller problem than an invented result.
Nothing survives all five filters. Relax one filter deliberately, in writing, rather than several quietly. Conservation is usually the safest to relax, because you can note the variable positions; surface exposure is the one to never relax, because it is the whole premise.
Frequently asked questions
How many target proteins should I end up with?
There is no fixed number, and any page that gives you one is guessing. The published monkeypox study started from 176 proteins in one strain proteome and carried forward only the glycoproteins and membrane proteins. What matters is that every protein you dropped was dropped by a filter you can name.
Can I skip target selection if my supervisor gave me the protein?
You still run the checks, and you write them up. If the protein was chosen for you, showing that it is surface exposed, human-dissimilar and conserved is what makes the rest of the work defensible. It usually takes an afternoon.
Do I need programming for this step?
No. Every tool named here has a web interface. Scripting helps once you are screening hundreds of proteins, and the UniProt REST endpoint is the natural place to start. Our computational biology skills roadmap sets out the order to learn it in.
Is a computationally selected target a validated one?
No. Every filter here is a prediction. Target selection tells you which proteins are worth the next month of work, not which protein will produce a protective response. That answer only comes from experiments.
What comes after target selection?
Epitope prediction. Linear B-cell epitopes come first in most pipelines, followed by T-cell epitopes and MHC binding, and then the filtering step that removes most of your candidates.
Who wrote this
This guide comes from the StemSkills Lab team, which has more than ten years of combined work in sequence and structural bioinformatics, drug discovery and design, and multiscale molecular modeling, and has published peer-reviewed multi-epitope vaccine designs using this exact workflow. The monkeypox study cited above is our own, and its target-selection method is quoted from the published paper rather than paraphrased. Every tool link was checked on 12 September 2026.
With your targets chosen, the next step is predicting B-cell epitopes with BepiPred and ABCpred, followed by T-cell epitopes and MHC binding and then assembling the construct. The full nine-step sequence, with the tools for each stage, is laid out in our immunoinformatics roadmap.
Want the guided, hands-on version?
Our live Molecular Modeling & MD Simulations cohort bootcamp takes you from zero to running real docking and MD workflows, with a portfolio project for your grad-school applications.
