I received a battery pack that I had ordered today, one of those ones that provide 5 volts using a USB connector, and plug into a USB socket to charge.
I noticed that on the box, it said it was rated for 6000 mAh. The battery itself said 22.2 Wh, and that the output voltage was 5V DC. Converting that back to mAh was: (22.2 / 5) x 1000 = 4,400 mAh. About 75% of the 6,000 mAh printed on the box!
Feeling shortchanged, I picked up another (Li-Polimer) battery pack from a different manufacturer I had lying around and saw it's capacity was: 15 Wh, 4,000 mAh. The voltage again being 5 volts. Converting the Wh reading to mAh was: (15.0 / 5) * 1000 = 3,000 mAh (about 75% of the mAh reading).
My guess is that as the batteries deplete, like the lead-acid batteries of old, the voltage decreases. So if the voltage dropped to 3 volts, it would still deliver the milliamps for the mAh reading, but the Wh for the watt hour reading would be reduced.
I suppose this means that the useful capacity of the battery (the period of time where it actually delivers 5 volts) is even less... perhaps only just half of the mAh rating?