Exporting your runs data from Nike+
I'm a huge fan of Nike+. Recently, however, I've been having some trouble - the iPhone app crashes a little too frequently, a few of my runs wouldn't upload, and my stats don't look quite right.
So, inspired by EagerFeet, I decided to see if I could create a little utility to download of my run data from Nike+, so that I could try out some of the other GPS-based run trackers like RunKeeper or Strava.
After a bit of trial and error, I was able to extract all of my runs, including GPS and heartrate data, and save them as GPX-formatted files that can be imported into most of the other sites.
A few important disclaimers…
- I've built this app without the blessing of Nike+, so I have no idea how long they'll allow it to work.
- Since Nike+ doesn't provide a documented export function, I had to make a few guesses about how to interpret the data. I've double-checked the output for all of my runs, and it looks pretty good. But I can't guarantee that this will work for everyone. In particular, I'm not sure how well I've handled runs with long pauses.
- EagerFeet uses something called oauth that lets you log into Nike+ without sharing your username and password with anyone else. It's a great feature, but I haven't been able to implement it yet myself. So for now, my app requires that you enter your Nike+ credentials. I can promise you that I don't store that info - I only use it to allow my server to log into Nike+ on your behalf, so that it can request your data. Of course - I recognize that for some (or many) of you - this is a dealbreaker. But if you're willing to trust that I will not save or misuse your credentials in any way whatsoever, then you can try this out.
If the download works, the app will prompt you to save a .zip file containing a series of gpx-formatted files, one for each of the runs you select.
If it doesn't, let me know. Feel free to share your suggestions for improvement.
Good luck, and happy running!
Update #1: Holy cow… As of 11/14/2012, over 1,600 people have used the app!
Update #2: Added new feature to let you select the runs you'd like to download; more than 3,300 successful downloads to date. [1/2/2013]
Update #3: Just hit 5,000 successful downloads! Also - I've had enough requests to download runs that don't include GPS data that I think it's worth doing; I hope to have this feature ready in the next few days. Last, it looks like Nike is getting ready to launch an actual, public API; I'll be watching this closely, and will take advantage of whatever improvements it makes possible. [1/30/2013]
Update #4: More than 20,000 successful downloads! Also, I fixed a bug that caused a few of you to see "no runs to export"; hopefully everyone should now be able to download all their GPS-based runs. [6/26/2013]
© 2012 Matt Stuehler