diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm
index eed87341310..2ba70b37b61 100644
--- a/code/modules/station_goals/dna_vault.dm
+++ b/code/modules/station_goals/dna_vault.dm
@@ -296,10 +296,11 @@ GLOBAL_LIST_INIT(non_simple_animals, typecacheof(list(/mob/living/carbon/human/m
return
if(!completed)
return
- var/datum/species/S = H.dna.species
- if(HAS_TRAIT(H, TRAIT_GENELESS))
+ if(!istype(H) || HAS_TRAIT(H, TRAIT_GENELESS))
to_chat(H, "Error, no DNA detected.")
return
+
+ var/datum/species/S = H.dna.species
switch(upgrade_type)
if(VAULT_TOXIN)
to_chat(H, "You feel resistant to airborne toxins.")