ridewithgps.com
Data from the GPS I'm using (a car GPS) is unreliable and always overestimates. I've tried mapmyride as well but found ridewithgps the more reliable. Strava might work too (haven't used it much).
I'll second ridewithgps. It's where I get my elevation data too.