Looking at the output files I see things like this :
from database with human:
C NB502083:48:HKTMTAFXY:1:11101:19388:1052 Homo sapiens (taxid 9606) 76|76 9606:3 131567:5 9606:1 131567:1 9606:5 131567:3 9606:24 |:| 9606:21 2759:5 9606:5 2759:6 9606:5
from database without human
C NB502083:48:HKTMTAFXY:1:11101:19388:1052 1280 76|76 0:3 1280:5 0:1 1280:1 0:5 1280:3 0:24 |:| 0:3 1280:5 0:1 1280:1 0:5 1280:3 0:24
taxon 1280 is Staphylococcus aureus, but there are many kmer not in database '0:'. Taking a closer look at the output I see that to be unclassified both reads must be completely absent from kmer db. I guess from this observation that one is better with the most complete kmer database.
I'm curious what happens if you remove the mitochondrial DNA from the reference and re-run. I had a similar problem which I solved, see here: Kraken2 database curation might not be a problem with human though (except for the mitochondria)
thanks for the info. I did try with a new database not containing human mitochondrial DNA, but the count doesn't change much ...