Recently I started using the mobile app Moves. It uses the sensors in your iPhone to measure your activity in the same way that devices like FitBit do, but without the need to buy and carry an additional advice. So far, I have been really impressed with the app. It can distinguish between walking, running and cycling. It also displays the information in a nice, simple way.
Most surprising however has been comparing its results with RunKeeper, which I activate when I run. Moves on the other hand is running in the background all the time. The two apps obviously use the same GPS data from the same phone, yet consistently reach different results about the length of my runs. My base run these days is a 5 miler near my home. Moves has been consistently pegging it at 4.9 or 5 miles, while RunKeeper usually pegs it anywhere between 5.25 and 6.5. It’s an interesting case for understanding who is to blame for these discrepancies, the software or the hardware.