I was experimenting Prokka and RAST annotation tools. So, I took a well-annotated swinepox virus genome from genebank (NCBI Reference Sequence: NC_003389.1).

I ran those sequences on Prokka and RAST Seed server at the same time. I can see that only a few (may be around 1%) of the genes were annotated. Most of them were predicted as hypothetical protein. And the results were comparable between Prokka and RAST.

I would assume that these tools look for similar sequences in NCBI and find the best-match protein. But looks like that is not the case. It should be able to find that well annotated swinepox virus genome in genebank and predict most of the proteins.

Also, if almost all the genes are predicted as hypothetical protein then there is not much difference between gene prediction tool like Genemark and genome annotation tool. Are there any better annotation tools ? Or this is what we get ? Or have I misunderstood the concept of annotation ? Please someone help me to understand this thing.

I have attached the image for comparison. Left one the Swinepox genome in .gb format and right one is the same genome annotated with Prokka.

Image : sorry for the low quality screenshot

  • $\begingroup$ Please, provide links to the annotation servers along with all options you've specified. $\endgroup$ Jul 20 '18 at 19:47
  • $\begingroup$ I used Galaxy server. I chose viruses under kingdom. All the other parameters were kept as default. $\endgroup$
    – L R Joshi
    Jul 21 '18 at 19:29
  • $\begingroup$ Prokka works well on bacterial genomes. I quesiton whether it will be useful here. $\endgroup$
    – M__
    Dec 23 '18 at 22:48

Both of the annotation tools you used are designed for prokaryotic genome annotation. I would not expect them to work very well for viruses.

  • $\begingroup$ You can choose between Bacteria, Archea or Viruses when using prokka. So, I think it should work for viruses too. $\endgroup$
    – L R Joshi
    Jul 21 '18 at 19:33
  • 1
    $\begingroup$ @LRJoshi viruses (especially small ones) tend to have overlapping and nested ORFs: something a standard prokaryotic/eukaryotic gene detector (e.g. Glimmer, Genemark, Prodigal) is unlikely to account for. $\endgroup$ Jul 21 '18 at 19:47
  • $\begingroup$ Prokka can do viruses, but you may want to change which translation table it uses to get better blast results $\endgroup$
    – Joe Healey
    Dec 24 '18 at 10:47

I was able to get good annotation using prokka by using following commands in prokka.

prokka --proteins reference.gb --outdir annotation  --prefix myprotein contigs.fa

All the reading frames were annotated. Actually the ones that are hypothetical in reference genomes are also annotated.


If you are looking for another tool, you could try eggnog mapper: it is an annotation tool based on orthology assignments. The EggNOG database happens to have a section for viral Orthologous Groups so you might obtain better results with it.

Note that emapper annotates coding sequences, not whole genomes. You need an extra step to predict CDS, for instance using Prodigal.

Basic usage with the optimized database for viral models:

prodigal -i my.genome.fna -o my.genes -a my.proteins.faa


python emapper.py -i my.proteins.faa --output polb_viruses  -d viruses
  • $\begingroup$ Interesting, do you have a source on this? The documentation of eggnog-mapper mentions "the annotation of novel genomes". I am currently using it to annotate MAGs, so I'd rather know if I am doing something wrong. $\endgroup$ Jul 24 '18 at 8:34
  • $\begingroup$ Eggnog resulted in empty file. Maybe it doesn't work for individual genomes as mentioned by @EliKorvigo $\endgroup$
    – L R Joshi
    Jul 26 '18 at 2:15
  • $\begingroup$ eggnog-mapper takes predicted proteins as input, not whole genomes. You should not use it on raw metagenomes either. You need an extra step to predict CDS with the tool of your choice (e.g. Prodigal). prodigal -i my.genome.fna -o my.genes -a my.proteins.faa then feed my.proteins.faa to eggnog-mapper. $\endgroup$ Jul 26 '18 at 6:48
  • $\begingroup$ My wording has been quite a bit too harsh, I guess. I have only applied eggnog to metagenomes and metatranscriptomes, because in these cases it's not practical to use group-specific homology databases and HMMs. Eggnog's authors have even emphasised this point in their paper. On the other hand, when you do have a clean assembly, you can use a hierarchical group-specific annotator, such as Prokka. Of course, it doesn't mean one can't use eggnog for genomes, hence I find it necessary to apologise for my previous statement. $\endgroup$ Jul 26 '18 at 19:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.