I made a vague reference at the end of last Friday's post about not always using the hit dice listing in the rulebooks when creating monsters. When making the monsters I've posted here or included in one-page dungeons, I've used a vague system for assigning hit dice based on monster description. I haven't formalized the system yet, so the hit dice are not necessarily consistent, but here's what I've got so far: each descriptor that directly affects combat translates into a +1 for the "adds" portion of the HD+adds statistic. Every +4 is converted into a full hit die. So, a canine (1 HD) with exceptionally sharp teeth would be 1+1 HD.
A human is a base of 1 HD. Herbivore herd animals of roughly human mass are likewise 1 HD. Slightly larger size (cow, horse) adds a die, as does making the beast a pack predator. Animals that habitually travel in smaller groups do so because they're more dangerous: traveling in small family units adds 1 HD, and solitary creatures add 2 HD.
Conversely, every reduction in size by half or increase in community size to swarm/flock subtracts 1 HD. A 0 HD base creature is translated to 1-2 HD, and negative HD base creatures instead subtract from the 1-2 base. For very small creatures that always appear in swarms, you can ignore the HD of individual creatures and treat them more like a communal creature with HD based on the size of the group and successful attacks splitting the creature into smaller groups until completely dispersed.
For much larger creatures, instead of adding a hit die for every doubling of size, I work in terms of scales. I haven't thoroughly worked out this part yet, but I'm figuring double human height/eight times human mass should be a base of 8 HD instead of 1 HD, triple human height is base 12 HD, and higher multiples are multiplied by 4 HD to get the base HD.
Mildly supernatural creatures add 1 HD, but demons or the equivalent should add 5 HD for human-size beings.