# Question about consensus taxonomy assignment in classify-consensus-vsearch

**URL:** https://forum.qiime2.org/t/question-about-consensus-taxonomy-assignment-in-classify-consensus-vsearch/33574
**Category:** User Support
**Tags:** feature-classifier
**Created:** [August 13, 2025, 10:15am UTC](https://forum.qiime2.org/t/question-about-consensus-taxonomy-assignment-in-classify-consensus-vsearch/33574 "2025-08-13T10:15:33Z")
**Posts on this page:** 1
**Showing post:** 27

<div class="post-metadata">

### Author: ![lacerta](https://forum.qiime2.org/letter_avatar_proxy/v4/letter/l/ba8739/32.png) [@lacerta](https://forum.qiime2.org/u/lacerta)
#### Post date: [August 21, 2025, 1:26pm UTC](https://forum.qiime2.org/t/question-about-consensus-taxonomy-assignment-in-classify-consensus-vsearch/33574/27 "2025-08-21T13:26:48Z")

</div>

Hi everyone,

Following some investigation with @SoilRotifer, we were able to determine the cause of the unexpected truncation in the consensus taxonomy I reported earlier.

The issue is linked to **missing taxonomic annotations at lower levels in the reference files**. Returning to my previous example, the top hits for one ASV were:

> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Creontiades`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Campylomma`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Creontiades`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f__Miridae`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Creontiades`

Here, one hit lacked a genus annotation, so `classify-consensus-vsearch` returned:

> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f__Miridae`

On the other hand, when we kept the empty placeholders for missing ranks in the reference:

> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Creontiades;s_`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Creontiades;s_`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Campylomma;s_`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Creontiades;s_`  
> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f__Miridae;g_;s_`

the consensus matched the expected result:

> `k __Metazoa;p__ Arthropoda;c __Insecta;o__ Hemiptera;f __Miridae;g__ Creontiades;s_`

**Conclusion:** It is a good idea to always include all rank levels in the reference taxonomy, even if they are just empty placeholders (e.g., `f __`, `g__ `, `s_`). This should prevent unexpected truncation in consensus taxonomic assignments.

Some RESCRIPt actions, such as `get_silva_data` and `get-ncbi-data`, include a flag called `--p-rank-propagation`, to help mitigate this issue, as explained in [this part of the SILVA tutorial](https://forum.qiime2.org/t/processing-filtering-and-evaluating-the-silva-database-and-other-reference-sequence-data-with-rescript/15494#heading--second-header).

Additionally, RESCRIPt provides an `edit-taxonomy` action that allows batch modification of taxonomic labels, including inserting missing prefixes when needed.

Thanks so much to the QIIME 2 team for all your help and support!

---

_[View the full topic](https://forum.qiime2.org/t/question-about-consensus-taxonomy-assignment-in-classify-consensus-vsearch/33574)._
