First of all, I would not get a cat for a 3 year old. I made that mistake years ago. We had a family cat - not a child's cat. However, children play rough with cats and cats claw. My daughter was scratched badly by our family cat. It was not the cat's fault - just its nature. In addition, the litter box must be put in a location that is not accessible to the 3 year old. I became concerned with the changing of the litterbox as well. It can be dangerous when pregnant if you are of child bearing age. OK. Now for the issue of a puppy. A small puppy such as a toy dog can easily be harmed by a three year old with the best intentioned parent who supervises a child reasonably well. A large breed puppy will quickly get big enough to unintentionally knock down a toddler - just because the puppy will love the child. If you want a family pet - not a pet for a 3 year old - but rather a pet that your three year old can interact with - I would suggest a puppy that will be in the 10 to 15 pound range. A miniature schnauzer, a boston terrier, a larger Pomeranian, a sheltie, a beagle - all are dogs that will be big enough to take care of themselves (with good supervision) and not be big enough to unintentionally harm your three year old. You must ask yourself, is this a passing whim? Do you plan on having more children in the near future? Do YOU want a puppy and all of the responsibility that goes along with it? If you are really wanting a puppy or a pet, I think you will get years of pleasure from a dog in this small/medium weight range. I truly would pass on the cat.