Smashrun Sale

Smashrun summer sale puppy joy

Note: The pictured puppy is not our actual puppy. Our puppy refuses to sit still in front of a green screen.

It’s Summer! The sun is shining and the whole world is out running.

Because we like you guys we’re temporarily discounting Smashrun Pro by 25%. If you’re a new user now is a great time to try out all the cool stuff to help you train, and new badges to keep you motivated.

If you’re already an existing user, then you may want to renew early. You’ll save money, and you’ll help us cover the cost of the new server we just bought this month – Did you notice how much snappier things are loading recently?


The new demographic ranks

Finally! The new “Demographic Ranks” is live today. We know. It took for…ever. But, all I can say is it was just really quite hard. Yes, the entire endeavor consists of exactly one single page. But, it is a fairly useful and maybe even, to those who are being somewhat generous, a pretty cool page. Of course, it is almost certainly not half as cool as you were hoping it would be, nor is it even one tenth as cool as we really wanted it to be. It also took 10 times as long to build as we projected. All of this, as those familiar with the industry will be quick to point out, is just a rather long-winded way of explaining that this was a software development project.

So, now that we effectively dispatched any expectations you might have, let’s move on to the good stuff.

So what’s this demographic all up in my rank?

A demographic is made up of three components: sex, age, and affinity.

Choose Demographic

For example, a demographic could be: “Women / 20 – 29 / Marathon Training”. Or it could also be any combination of those. Such as, “Women / Marathon Training”, or even just anyone Marathon Training or anyone 20 – 29, it could also be just anyone at all. The point is that you get to choose who you want to compare yourself to, and you can make that group as broad or narrow as you want.

When we first announced that we were dividing the ranks by demographics, we asked for runners to submit their own affinity groups, or to join the groups others had submitted. This effort produced hundreds of suggestions, but many had only just a few members. We took all of these and culled them down to the 10 most popular. In the future, as more people join Smashrun, we’ll add new narrower affinity groups and maybe, one day, you’ll be able to join Women / 60+ / Barefoot, Finnish, Vegan Runners. But for now, we just have the following: Trail Runners, Marathon Training, Desk Job, Redditor, Run-walker, Military, Student, Busy Parent, New runner, and Ultra-distance.

198 demographics to start

10 affinities X 5 age brackets X 2 sexes = 100 demographics. However, since “All/Any” is also an option, that works out to 198 unique demographics. Some of these ended up being pretty thin, for example: “Men / 60+ / Students,” so we set a threshold of 50 members for any given demographic to go live. In practice, the way this works is that you first join a demographic that’s available, and afterwards choose a demographic that isn’t yet available, but that you would like to join if it was. You’ll be put in a waiting list, and when enough people join, the new demographic goes live and everyone who chose it gets moved automatically from their existing demographic to the new one.

How does it work?

Every day we add up how far, how often and how fast everyone in each demographic ran. Then we use that information to create a brand new curve. Just like when you were in school, this curve creates a percentile rank and that rank contributes to your Overall Score.

Rank Comparions

Each gold medal is worth 3, silver is 2, bronze is 1. So if, like in the example above, you have 1 gold medal (1×3), 11 silver medals (11×2), and 2 bronze medals (2×1), then your Rank Score would be 27. The nice thing about the score is that it’s relative to each individual’s demographic. So, you’re not “competing” with the people you follow. The score is the tally of how everyone is doing within their categories. It’s like the equivalent of an age-graded time or your gender place for a race that you ran.

The other nice (maybe, challenging?) thing about Demographic Ranks is how often the curves change. Every new run logged within your demographic affects that demographic’s curve.

If, for example, you ran 10 kilometers this week, we might calculate that 49% of the people in your demographic “New runners / 60+” ran less than that, and 51% ran more – i.e. your distance was just a bit better than average. So you’ve got a bronze medal! Sweet! But let’s say tomorrow is the last Sunday of the month, and all of the runners in your group go out for long runs because they want to hit their monthly goals. Suddenly, your 10 kilometers isn’t so great anymore, the average 7-day distance jumped up to 12 kilometers and, because of that, now just 40% of your peers ran less than you. Your rank goes down and you’ve lost your medal.

Your rank is a moving target. If you want to stay on top of them, you’ve got to do better than your peers did each and every day. Luckily, you’ll know exactly how to move up within the ranks…

Speed rank breakdown

You can also view the gold/silver/bronze thresholds by mousing over the “Details” which, for the above, looks like this…

10km rank details

Picking your demographic

When you choose your demographic the only thing you should consider is this: Do you think these people might be pretty similar to you? What you don’t want to do is choose a demographic based on how high your rank is. One reason for this is that if everyone did this, then all the ranks would average out and end up being pretty similar. But, more importantly, when you choose people like you, then it’s possible that they have similar running patterns to you. Busy parents might not have time to run on public holidays, and students might be too busy to run during exam season. That means when it’s hard for you it’s also hard for everyone else, so the ranks will be easier to stay on top of.

What’s next?

The obvious thing missing from the new ranks page is a way for you to learn about the other people in your demographic. Who are they? Who runs as far, as fast, and as often as you do? And who’s the best? Who are the leaders? This is all coming soon.


Nike import changes

UPDATE July 11th, 2017
Nike seems to have made further changes, and as a result their API now returns an error rather than the GPS details for many (but not all) Nike users. We’re going to keep investigating, but since Nike is officially a closed platform, we have limited options at this point. I know how painful it is to have a great run, but the data is all locked up and inaccessible, so we’ll keep trying and keep you posted. If anyone has any info that might help please email

There’s been some changes behind the scenes with Nike’s platform this month, changes that unfortunately severely compromised the accuracy of the analysis we’re able to provide. But before I get into the specifics, I’m going to take a somewhat long and meandering digression.

Nike Running has always been a closed platform. You go out and buy a Nike Sportwatch, or an Apple Watch with Nike software, or you just download their app. You record your data on a relatively simple to use, relatively slick interface and the data is synchronized to Nike’s servers. Once your data gets there, it proceeds to live out its life quietly waiting to die in obscurity. There’s a rich ecosystem of powerful (and sometimes even fun) websites that you can use to track your running data provided, of course, that you didn’t record it with a Nike device.

It’s important to understand that when we talk about closed and open, it’s not really black and white. It’s really a spectrum of shades of grey. If, for example, “closed” indicates the blackest black, the kind of black you might find in the threads of a tie worn by Richard Roundtree at a funeral, held at the bottom of Krubera Cavern, at midnight, then, well, the Nike ecosystem is perhaps a shade of slate. Because, in truth, there is no such thing as a completely open platform or closed platform. There’s always some inertia to the free, unrestricted movement of your data. Since no company wants to be called out for locking up your data like some snarky dragon hoarding gold under a mountain, the techniques to restrict the movement of your data are often subtle rather than overt.

Here’s a few common ones:

  • Provide an API, but restrict access to just a few “strategic partners” (Suunto)
  • Craft a terms of service where the company is the owner of the data, rather than the user, and strictly limit what can be done with it. For example, prohibit holding it on a server for longer than 24 hours, or exported in any form to a company with a commercial product. (Strava, Runkeeper)
  • Charge thousands of dollars to access the data in bulk (Garmin)
  • Allow users to export the data, but only if they pay a subscription fee.
  • Allow users to export data, but resample that data first, removing most of the recording so that only the rough shape of the route can be discerned (Runtastic)
  • Export the data via an open API, allow users to download it one by one, or in bulk, but don’t seamlessly push it to other companies (Smashrun)
  • Don’t have an open API, but also, don’t work to prevent sites (like Tapiriik) that benefit your users from helping users to get access to their own data (Garmin)
  • Allow the export of data, but don’t invest any time into fixing the bugs in that export

In Nike’s case, they have an API, but they haven’t granted anyone access to use it in years. In fact they used to has have a function where any user could use the API to export a copy of their own data, but they deactivated it around the time the Nike Apple Watch launched.

So, there’s a kind of range from actively working against the export of your data, to failing to invest a ton of resources to facilitate it. Since the beginning, we’ve helped users to get access to their own data on Nike’s site. It hasn’t been easy, but they also haven’t made it impossible for us either. The Nike Sportwatch is an easy to use device. It’s a good entry level watch that was built for Nike by TomTom. The GPS is quite good, and it records 1 GPS point per second which is great, because it allows nice accurate analysis of structured training. You don’t need to read a manual to use it. You can start, stop, and pause and that’s pretty much it, but it’s also all that most people need.

From Nike we can get the GPS coordinates, but there are no timestamps. So we can tell where you ran, but not when you were there, which makes calculating splits a challenge. Luckily, if you record 1 GPS point per second you can figure out the timestamps just by counting the points. Pauses throw a wrench in that, but it turns out there’s a certain signature typical of pauses that can be used to identify them, and up until recently we used that to good effect.

This month, all of that changed. Nike went from providing 1 second recordings to 10 second recordings. Ten seconds is a long time. Try counting to ten now and imagine how far you could run. Ten seconds is a lifetime. It also makes it impossible to identify pauses, and it means that if you run for 59 seconds, for example, there will only be 5 points returned. The splits become a kind of wild guess. We released a patch yesterday, to try and improve the results, but it’s like trying to squeeze water from a stone, a particularly dense and dry stone, that makes your run look kind of squarish, think granite.

So a few ideas…

The Tom Tom Spark 3 is a great watch for the price. The Garmin 230 is an even better watch for a bit more money. If you have an iPhone, iSmoothRun seamlessly exports your data to nearly every running site on the planet and it’s a solid app for a one time $5 cost. If you have an Android phone, then Sportractive, Ghostracer, Caledos(beta) are all free and worth trying.


RunPlan Integration

Running a couple of races this year? Need a little help staying on top of your training plan? Check out RunPlan! It’s a user-developed web app built on top of the Smashrun API. It’s sleek, extremely functional, and easy to use. Paul designed RunPlan to make custom training plans more manageable. It’s quite common for runners to create their own training plans on spreadsheets, but manually entering each run to see it within the context of of your training plan can feel like work.

Introducing RunPlan – a web app that migrates your training plan from a CSV or excel file and into a full-screen calendar with your training schedule plotted out… and it imports your runs from Smashrun including your splits and your route map!

RunPlan Calendar

You can quickly see when or if you miss any runs, how each week compares to one another, visualize how much or how little you’ve run according to your training plan, and even see if you exceed your planned distance during your training cycle.

RunPlan Progress

You can also share your custom training plans with others. So, if you feel like sharing a plan that worked for you in the past, I’m sure someone else will make good use of it as well.

RunPlan Share Plans

To get started, you’ll first need to create an account on RunPlan. Then, to create a custom training plan in the right format, you can download this example plan, modify it to your training schedule, and upload it here ( when you’re ready.

RunPlan Sync Setup

Afterwards, you just need to link to your Smashrun account within the Settings > Sync Setup and you’re good to go! Just remember to click sync within RunPlan to import your runs.

If you’d like to share some feedback (and compliments!), feel free to reach out to


A new app for a new year


Sportractive is a popular and highly rated free app for Android phones. It’s got a super clean interface, accurate recording, and a ton of features. And best of all, it now has a direct integration with Smashrun.

If you’ve got an Android phone, and you’re looking for an easy way to get your runs on Smashrun it’s definitely worth trying out – especially because it’s completely free.

To set it up with Smashrun, go to Sportractive’s main menu and click on ‘Settings’. Scroll down to ‘Cloud and Social Network Preferences’, click on it, and check Smashrun. In the subsequent window, either create a new account or connect your Smashrun account with Sportractive. You’re all set!

Sportractive Setup


API Improvements

This past week we’ve added a bunch of new functionality to the Smashrun API. We’re moving beyond import/export to try and make some of Smashrun’s unique functionality more accessible.

Some highlights:

  • Stats by all-time / year / month
  • Notables for a run
  • Splits by kilometer or mile
  • Return a route map as SVG, GeoJSON or a Google Maps formatted polyline.
  • Get extended data about a run: sunrise/sunset, moon phase, country, state, city, treadmill, race, and cooper test flags, and much more
  • Edit an existing run, and flag a run as deleted
  • You can also now post FIT files directly to the API

If, however, you’re looking to just play with your data on a spreadsheet, remember you can always get a csv export you easily open in Excel by adding /export to the end of your url. For example:

Coming up soon:
Individual TCX export and bulk zipped export. If you’d like to beta test the functionality shoot us an email.


French Foreign Legion Badge

French foreign legion

We’ve had our head down working on: Bulk export, Demographic ranks, and a greatly expanded API. And I’ll be honest. They are each complex challenges, but they’re also all just really very dull. Don’t get me wrong they’ll be great additions to Smashrun, but the work involved is just so exacting and tedious…

So, like a spoiled child avoiding his homework we played hooky for a day and made a new pro badge. It’s “Le Béret Vert” or as you may know it the French Foreign Legion. To qualify you need to run a at least 2,800 meters during a 12 minute Cooper Test.

The Legion itself, has a fascinating history. It has long been a beacon for the lost and abject, an opportunity for redemption and rebirth. They also get to wear really cool hats.

Note: A Cooper Test is just a 12 minute run at maximum effort. It’s used to estimate your VO2 Max. Usually you do it at a track, but any uninterrupted long flat path will do. To qualify for the badge you need to run for no longer than 12:05 and run at least 2,800 meters.

If you’re a Pro user and you tag a run as a Cooper test, you’ll see an estimate of your VO2 Max and how it compares to other people your age. Cooper tests are kind of like pain endurance tests. 12 minutes is just long enough that you can run at max effort the whole time without leaving anything in the tank. Then it really becomes a question of how much do you want to suffer to see what you’re really capable of at this point in your training. It’s a good way of seeing how your training is paying off in terms of raw cardiovascular improvement. But you’ll absolutely want to make sure you’ve had a doctor check you out first and quit running immediately if you experience any chest pain.


Some small improvements

We’ve been pretty busy polishing up the new Garmin Push API, but we still made a little time to add some small but helpful features.

Projected finish time
If you’ve ever run a marathon, you’ve probably wondered: “If I had run the second half as fast as my first half, what would my time have been?”

Projected time

Well, now you can. Just highlight a section of your pace graph on the bottom of your By Run page. And, of course, you can do the same for any segment of any distance run.

Stryd power meter support
We’re now importing running power from the Stryd power meter. Power meters are cool because they tell you how much energy you’re using instead of how fast you’re running. If you run faster but your power goes down, that means that you’re running more efficiently, and improving running efficiency is how you can see some of the biggest gains in performance. Power meters are also cool for trail runners, because they are unaffected by hills. Top athletes run fast down hills and slow up hills, but their power and heart rate stay mostly flat.



Note: We’re now importing this data whenever we can pick it up but, at present, the only way to analyze it is in the Smashrun Pro map.

Elevation Correction
We’ve added an option to correct the elevation for runs where the elevation looks a bit (or a lot) wonky. The data available for this correction comes from satellite topography, so the resolution is not wonderful. If you run over a bridge, it’ll show you running across the river. If you run through a tunnel, it’ll show you running up and over the top of the tunnel. GPS-based elevation data is, in general, pretty terrible and only a few lucky people have barometric altimeters (woop iPhone 7!), so there’s a lot of messed up elevation data out there. Using this option can be a big improvement.

Correct elevation

Note that there’s over a dozen possible reference objects on the elevation correction dialog pictured above. They start with a giraffe and end with Mount Everest….not that it improves the usefulness that much, but you’ve got to admit it’s sort of neat, right?
To display the dialog and correct the elevation, click on the bad elevation tag.

Bad elevation

After correcting the elevation, you can also click the bad elevation tag again to remove the elevation data.


Garmin Auto-Sync is live

After 4 weeks of testing, we’re happy to announce that the Garmin Auto-Sync is ready! We could not have done this without your help. We’d like to thank all of our users who helped out through our Garmin fund drive, and to everyone who put up with failed imports, weird data, and writing detailed bug reports to help us bring Garmin Auto-Sync out of beta.

As of today, all Garmin users who are currently Pro, or have ever had a Smashrun Pro account, will be able to connect to Garmin Auto-Sync. To enable it, just visit your settings sync page, scroll down to the Garmin Auto-Sync section and connect. Note that you should disable any pop-up blockers before trying to connect.

Once connected, Garmin will automatically push your next new run to Smashrun. It’s a good idea to disconnect or adjust your settings for 3rd party sync services such as FitnessSyncer, RunGap and, especially, Tapiriik. It can get messy when runs are pushed from two directions.


Nike API Issues

Yesterday there were some changes made to the Nike API that prevent us from syncing Nike runs to Smashrun. We’re looking into a resolution and will keep you posted.

We’ve reached out to the people at Nike’s API partner program. The program has been closed for some time, but we’re hoping that they might make an exception. We’re waiting on their response now.

Nike import is BACK UP. Still unofficial, but it’s working.