I love riding GPS routes on my Tacx trainer, but I wasn't happy with the built-in functionality for changing the elevation profile of a ride. The built-in smoothing is very slow and still leaves a lot of spikes in elevation. It is next to impossible to remove steep downhill grades that I don't want as part of my indoor training.
The GPX Smoother lets you load a GPX file and apply a few different "smoothing" algorithms
to the elevation. The resulting GPX file can be saved to a file and then imported back into
your Tacx trainer software.
Smooth - uses simple box-score smoothing to smooth the elevation over 5 points.
Set Range - lets you set the maximum and minimum slope.
Flatten - lets you set the maximum change in slope between any two points.
Slide the triangular handles on the smaller graph to select only a portion of the ride to smooth. This allows you create a ride similar to a Slope-Distance Catalyst ride.
The code for the GPX Smoother is on github at https://github.com/brenzy/gpx-smoother.
This is a work in progress. Drop me a line at to request changes or report issues.
Functionality Change(January 21, 2019):
When an elevation tag is missing, the GPX Smoother will add an elevation tag containing the same value as the previous point. If there is no elevation in the GPX file an arbitrary value of 100 metres will be used for elevation.
New Functionality (January 1, 2015):
Added elevation profile and changed slope to a step chart.
New Functionality (November 1, 2014):
Added a Distance vs. Slope graph for Kostya, added "Hide Original" checkbox, swap order of min and max slope boxes.
New Functionality (September 13, 2014):
Added the ability to adjust the number of points to smooth over and the ability to shift the slope upwards or downwards. Marcel, thanks for sending along these two changes!
New Functionality (March 8, 2014):
Add ability to add elevation from Google Maps Elevation Service.
New Functionality (January 26, 2014):
Added zoom to the selected portion of the ride.
New Functionality (January 12, 2014):
Use the drag handles to select the portion of the ride to be smoothed.
Bug Fix (January 7, 2014):
Trying to download large files will crash the browser. Added a message to use the copy and paste method instead. Thanks Guy!
New Functionality (December 12, 2013):
The ability to update the name and description fields of the gpx file was added. A download link was also added to make it easier to get the results.
New Functionality (November 24, 2013):
GPX files that are exported from other programs (like Map My Ride), often do not contain elevation data. The Tacx software will not import GPX files if the elevation is missing (or set to zero on the first point). The smoother will now insert an elevation of 100 metres when an elevation is missing. To get the correct elevation values, import the resulting GPX back into the Tacx trainer editor and select "Altitude" - "Load From Web".