For the curious, here's the data on how fast corpses and bits decayed.
First time is the time between "You killed the ___" and getting the bit from the corpse. Second time is the time between "You killed the ___" and the bit decaying to dust. Third time is the time between getting the bit from the corpse and the bit decaying to dust.
|bit||source||from kill to get||from kill to decay||from get to decay|
Sadly, you don't get a message when a corpse decays to dust, so I didn't get timestamps for all of them... once I realized this I started glancing at the corpse frequently near the end, and recorded the last timestamp where there was still a corpse (as long as it was no more than a few seconds before a message indicating there was no corpse).