Animals can safely donate blood every 6 weeks.
A standard blood donation for a dog is 450ml (‘one canine unit’) and this can safely be obtained from a dog that weighs at least 25kg. It is safe for a 25kg dog to donate this amount of blood because it holds this volume of blood in reserve in the spleen. After about 4 weeks, all that blood has been replaced back into the body. After 6 weeks, it is safe for the dog to donate again because the reserve volume has been replaced in the spleen. Smaller amounts may be obtained from smaller dogs.
Donating blood is almost painless, and most dogs don’t seem to mind giving blood at all. In fact, most dogs don't even realise that they are donating blood!