I’ve only done some very light testing, but it seems that the more attributes an entity has, the more expensive it is to call empty? on it.
Still, I’m very interested in the answer to your question, because I tend to existential checks using a lookup ref (d/entity db [:a-unique-attribute ...]), which as far as I can tell will return nil if the entity does not exist.