I have used Endomondo, MyTracks, Strava and Mapmyride. All work well. All but one of them, and I forget which one, uploaded the data immediately when you stop recording. The bandwidth was killing me, so I got a Garmin Edge 500, and upload via USB on my desk top, and have gone back to a lower data plan on my cell service. Unless you are unlike me, a data whale that would have unlimited data anyway, the Garmin will pay for itself in a few months of tracking daily commutes. If you are not recording daily, Strava and MyTraks were my favorites. I save all my Garmin stuff to Strava.