Overview
Welcome to the PitStopper.net change log! This page tracks new features and improvements added to your starred GPX route planning and POI discovery tool.
September 2026
September 11, 2026
Firefox: the map is smooth again
Panning and zooming a route with a lot of points of interest was stuttering badly in Firefox. Each marker's pin carried a soft drop shadow, and Firefox repainted every one of them on every frame; the shadow is drawn a cheaper way now. Measured on a route with 400 markers, panning went from 15 frames a second to 60. Chrome and Safari were never affected.
September 10, 2026
A proper menu drawer on phones
The app menu now slides in from the left like any other phone app, full height with the map dimmed behind it, and closes on a tap outside, on the button, or with Escape. It also fixes a bug where About and Help stayed stuck on screen over the sidebar button instead of collapsing with the rest of the menu.
GPZ files, in and out
A .gpz is a zipped GPX, and it now opens like any other route file - drop it in, replace a route with it, or add several at once. You can save one too: tick Compress it (.gpz) when exporting. A 1.2 MB matched track becomes 163 KB, and Cruiser, Locus Map and GPX Viewer all open it directly.
The staging site says so, and sends you home when there is nothing to test
pitstopper.net/staging now carries a banner explaining what it is, and moves you to the live site automatically whenever the two are running the same build. Shared project links keep working either way: the link is handed over before anything reads it, so it opens once, on the live site.
September 9, 2026
A mountain switchback is no longer called a u-turn
A 180 degree bend that stays on the same road is now announced as a sharp left or right, because there is no junction to turn at. Doubling back at a junction or onto the road beside you is still a u-turn.
A tidier Track to Paths/Roads panel
The Level of detail buttons now explain themselves on hover, What counts as a deviation sits with them rather than further down, and the "Match again" button has gone: pressing any of these settings re-runs the match on the spot.
Fewer turn instructions on a road you never leave, and hairpin warnings you can switch off
A bend in the road you are already on is no longer an instruction unless it is genuinely sharp, which on a mountain track removes about a third of the turn list. Sharp ones stay as a warning that a hairpin is coming, and a new Hairpin warnings tick box in the Track to Paths/Roads panel and on Compare tracks turns even those off. A u-turn is always announced whatever the setting.
Direction arrows on the track comparer
Each track on Compare tracks now carries small arrows showing which way it runs, in its own colour. Two lines drawn on top of each other say nothing about direction on their own, and a conversion that reverses a track used to look identical to one that did not.
Where a converted track follows your recording
When no road or path is mapped under part of your track, PitStopper keeps that stretch exactly as you recorded it rather than inventing one. The match report now lists those stretches instead of only totalling them, and hovering one lights it up on the map so you can see which bit it means.
Right-click a road to see what the map knows about it
What is this road? on the map's right-click menu shows the OpenStreetMap tags for the ways under your click - what it is, what it is surfaced with, and who is allowed on it - with a plain answer to the question behind most odd-looking conversions: whether PitStopper will match your track to it, and if a restriction was lifted, which mode lifted it.
Proper turn arrows
The turn list and the map now use drawings made for navigation rather than general-purpose arrows: a sharp turn is acute instead of a right angle, a keep-left shows the fork with one arrowhead, a roundabout says which way round, and the three kinds of u-turn are three different pictures instead of one.
Turn instructions show up on the comparer's map
Each row of Turn instructions now has its own marker on the map, drawn with that turn's arrow. Hovering a row lights the place up and clicking one goes there, so a turn listed at 556 m no longer has to be hunted for.
U-turns now say which way, and stop claiming turns that are not
A sharp turn that doubles back is only a u-turn if it puts you on the same road or one right beside it, so the turn list checks where the road comes back rather than the angle alone. Going back the way you came stays a plain u-turn, leaving you free to turn round either way; coming back on the road alongside is now written as a left or right u-turn, which Locus and Cruiser draw with a direction arrow.
September 7, 2026
One dialog for exporting points of interest too
Export POIs now offers GPX, Mapsforge and CSV in one place, with each format's own options below the choice. CSV used to be a separate menu entry opening a separate dialog, which meant the starred and flagged filters could never be applied to it.
One export dialog, with the fiddly bits folded away
Export a file replaces the separate GPX, FIT and KML entries - the format is now a choice inside the dialog, so changing your mind no longer means starting again. Only the options that change what goes in the file are on show; the rest sit under Advanced options.
Send to Phone: open your route in any map app
Export → Send to Phone gives you a QR code. Scan it, the route saves to your phone, and your phone's own "open with" offers Cruiser, Locus Map, OsmAnd, Organic Maps, CoMaps, Komoot, Garmin Connect or anything else that takes a route file. It uses the same export dialog as a download, so every option applies, and you can send a GPX or a FIT. The link works once, expires after ten minutes, and tells you when your phone has collected it. It is end-to-end encrypted, like a project share: the key rides in the link and never reaches our server.
Menu bar reordered
Export now sits last on the left with an icon, since it is where the GPX, FIT, print report and phone transfers live and it was the menu people could not find. About and Help have moved to the far right beside the save chip.
Category search forgives a typo, and knows what you call things
resturant, phamacy and bicylce now find what you meant, and chemist, cashpoint, layby, bothy, bike shop and sleep all work. Typo correction only runs when the exact spelling found nothing, so a correct search is never diluted by near misses.
Category search now speaks your language
Searching the category list understands fontaine, drinkwater, Zeltplatz and several hundred other words per language, and one term finds a whole family - eau brings up every kind of water point at once. Synonyms come from Organic Maps' open category data.
Tell OpenStreetMap when something is wrong
A Report button on any point of interest that came from OpenStreetMap sends a public OSM Note - "this tap is gone", "this is not the right place" - for a local mapper to act on. It writes a note, never an edit, so nothing on the map can be damaged by it.
"Allow ferries" and "Allow steps" now work both ways
Clearing either box did nothing: BRouter's profiles allow both by default and the planner only ever sent the permissive value, so a route could still be put on a ferry after you had said no. Both boxes now start ticked, matching what the router actually does, and clearing one genuinely rules it out.
Ferries, steps, toll roads and six more barriers
Hazards & Obstacles now finds ferry crossings, flights of steps and toll roads, plus lift gates, kissing gates, stiles, bollards, blocks and swing gates. This matters most on an imported route, where no router ever weighed any of it.
Obstacles in the route comparison
Comparing planner alternatives now shows what is on each one - "1 × Ford, 2 × Barrier" - beside the distance and climb, so a route that is 400 m shorter but crosses a ford is an informed choice. One lookup covers every option.
Choose what counts as a deviation, in the panel
Track to Paths/Roads now has the three deviation settings the compare tool has, each button showing what it would find, so "four findings" reads as a threshold rather than a fact. Switching is instant.
Clearer choices after a match
The two buttons at the end now name the route they act on - Keep both, Delete the original, Delete the matched one - instead of "Keep only the matched track" and "Discard it", which never said which route was going.
Hover a difference to see it on the map
Pointing at an entry in Differences worth looking at draws an amber band over that stretch on both lines and lights up its pin, and hovering the pin lights up the entry. Keyboard focus does the same.
Match to Roads is now Track to Paths/Roads
The old name suggested it only handled roads. It matches bridleways, footpaths and tracks just as happily, which is most of what a walk is made of.
Match to Roads reports what the compare tool reports
The panel now measures the matched line against your recording with the same code as compare-tracks.html, so it lists every stretch where the two part company in either direction, ranked, and names the roads each is on. It used to report only the places the matched line strayed, which meant a section it skipped or added never appeared.
Compare tracks: the results lead with a verdict
The comparison now opens with a one-sentence verdict per conversion, the headline table is down to six columns that fit beside the map, and Places worth looking at is an index that jumps to each deviation rather than a second copy of it.
The comparisons you have shared, listed
The Share dialog now lists the links this browser has made, with how long each has left and how often it has been opened, and lets you copy one again or withdraw it early. Expired ones stay on the list, greyed, so a link that stopped working has a visible reason.
Compare tracks speaks eight languages
The whole page follows the language you have the site set to, the measured findings included, with numbers in that language's own format. Pick a language from the flag in the top bar.
Compare tracks is easier to find
It is linked from the More menu across the site and listed in the sitemap, and the page now answers the common questions about it in a section under the results.
The comparer says which road, what shape, and where to look first
Each deviation now names the OpenStreetMap ways under both lines, says whether it is a parallel line, a cut corner, a shortcut or a detour, and a Places worth looking at section ranks them so a long ride does not start with twenty equal-weight entries.
Compare tracks reads FIT files
Drop a .fit straight in rather than exporting it to GPX first, and a new table shows what each file kept: elevation, times, heart rate, cadence, power and the ascent they add up to.
Compare tracks: a page for checking one track against another
A standalone page, compare-tracks.html: load a track, run it through PitStopper's engine, and optionally add another tool's conversion. It shows where each one leaves the original, what OpenStreetMap has under each line, and whether the turn instructions agree, and the matched track can be downloaded.
The map states what counts as a deviation, and a What counts as a deviation setting tightens or loosens it for a closer look.
September 6, 2026
The menus are shorter, and each tool has one home
Twelve of the thirteen sidebar tools were also listed in the menu bar. They are not any more: Route drops 12 to 6, POI 7 to 3, View 5 to 3, and the one-item Info menu is gone. The Tools menu is grouped into My route and The map.
Navigation data looks like every other panel on a phone
It opened as a floating card with its own header, while every other tool is a sidebar panel. Now it is one too, at any width.
Weather controls move off the map, and temperature gets a switch
The weather toggles were a bar floating over the map they were controlling. They are a sidebar panel now, with the ride's start time at the top. Temperature gets a switch of its own - it was the only layer you could not turn off.
Find a country in the Climb Database by typing it
The filter listed ISO codes, so you had to guess between GB, UK and England. Type any of them now - or holland, or espana.
The Bulk POI Editor takes the window
It is a table, and it was in an 850px box. The name and note columns get the room now.
Preferences takes the window, and now holds Theme and Units
Both were submenus you had to hover to find. They are sections in Preferences, which now fills the window. The theme tick was also lying: it read a key nothing wrote, so it always said Auto.
Pointing at a turn shows it on the map again
Hovering a turn drew only a faint ring unless "Show turns on the map" was on. It draws the turn's own arrow now, either way.
Typing a coordinate now actually goes there
Decimal, DMS and Plus Code entry were broken in both Search for a location and Add POI - six ways in, none working. All six work now.
Distance markers start at 10, in your own units
It opened at 1, which offered 143 markers on a 144 km route, and in kilometres whatever units you use.
Search for a location, and Distance Markers, are sidebar panels
Both were modals covering the map they worked on. As panels the map stays visible and the panel stays open, so you can try an interval and look.
The four map-search tools are now in one place
Draw a box, draw a shape, query a point and find the closest place lived in three unrelated menus. They are one panel, Find POIs on the map, and the results appear in it.
Wind you can actually read
The animated field looked identical at 4 km/h and 40. Weather view now shows an arrow and a speed at points along the route, coloured red for headwind, amber cross, green tail. The field is still there, off by default.
Export filenames that say what is in the file
The reviewer's suggestion: tick what you want and the export builds the name - Ride_wpt_navtrk.gpx, plus distance, POI count, climb, date, shape and more. Your choices are remembered.
Full search along route: point at a result to see where it is
Search Route is now Full search along route. Pointing at a result rings it on the map, there is a corridor width slider, and Further away finds places by name anywhere.
The "..." menu is now called Tools
Three dots said nothing about what was behind them.
Fixed: the map scale you couldn't read
White on white on light tiles. It now has its own contrast.
Auto plan stops moved into the sidebar
Plan Stops is Auto plan stops, a stepped panel rather than a modal. Its suggestions behave like POIs - hover to highlight, click to open.
September 5, 2026
Mobile: the map gets its screen back
A pass over the phone layout, mostly giving space back to the map:
- Both rows of map buttons fold away behind one button, at full touch size. The bottom set now runs up the left edge instead of scrolling sideways with five of thirteen off the screen.
- A blue "?" button on each set captions every button with what it does - the tooltip a desktop user gets on hover. Clears after five seconds.
- Menu, panel and auto-save buttons sit in one row, and step out of the way when the sidebar is open.
- The planner drops its heading, its Search button and its tabs while you draw, and its Done once the full-width "Done routing, discover POIs" appears. Controls above the start and finish boxes: 422px down to 315px.
- Elevation thumbnail is shorter and has lost its "Tap to expand" badge.
- The coloured strip across the top is gone - the map runs to the top of the screen, and the Routes heading shares the row with the buttons.
- Panning is seven times smoother - a full 60 frames a second on a mid-range phone, where it managed about 8 before. The map draws at a lower resolution while it is moving and full sharpness the moment it stops, and phones now start on a raster basemap, which pans at twice the frame rate of the vector one. Hill shading, contour lines and translated map labels need the vector map, so switch back from the map-layer button if you want them - it remembers.
- The attribution folds into a © you can tap instead of a line of text across the bottom of the map.
- The menu and auto-save buttons follow your phone's dark mode, as the map buttons and sidebar already did.
- The lone navigation button on the map is gone - the View menu and the sidebar panel already open the same turn list.
Fixed along the way: the sidebar started in two states at once, so the panel button did nothing but hide itself; switching tabs mid-plan left a sidebar with no way out; and the "Navigation data" button sat on top of the buttons beside it.
An empty notification bar that was always there
The toast that shows messages like "GPX file loaded" was being drawn even with nothing in it - an empty bar with a shadow, sitting at the top of the page from the moment it loaded. On a desktop it hid behind the header; on a phone it appeared as an unexplained white strip across the top. It now stays out of the way until there is something to say.
Turn markers are now off until you ask for them
The turn arrows on the map used to appear the moment a route with navigation data loaded. A matched recording can carry sixty of them, which buries the route you came to look at - worst on a phone. The turn list is unchanged; the markers on the map are now opt-in, from "Show turns on the map" in the Navigation data panel, and it remembers your choice.
Step through POIs with the arrow keys
With a POI popup open, left and right move to the previous and next one along the route - the same thing the arrows on the popup do, without reaching for the mouse. Useful when you are working along a route deciding where to stop.
The keys only take over while a popup is open; with the map itself in focus they still pan it as before.
The map buttons, sorted into two kinds
The buttons around the map were mixed together. They are now split by what they are: the bar along the bottom holds view and map controls - zoom, undo, which basemap, how it is lit, and what is drawn on it - while the strip down the right holds actions you take, like searching, querying a spot or editing the track.
So Show/Hide POIs, named peaks, the starred and flagged filters, and POI clustering have moved to the bottom bar. All the map's toggles now show the same orange marker when they are on. The Previous and Next POI buttons have been removed.
Contour lines on the map
A second button beside the hill shading turns on contour lines, with the heights labelled on the major ones. Shading shows you the shape of the ground; contours give you the numbers, so you can tell a steady drag from a wall before you have opened the elevation profile.
They follow your units: metres get round metre intervals, miles get round foot ones - 500 ft rather than the 164 ft you would get from converting a 50 m line. They are drawn in your browser from the same elevation data the hill shading already uses, so there is nothing extra to download.
Fixes from the live error log
A ride crossing the Greenwich meridian could break the 3D view. Longitude zero was being read as "no longitude", which turned the camera position into nonsense and stopped the 3D map opening. It runs straight through London, so this was not the edge case it sounds like.
Separately, start-up was all-or-nothing: if any one part of it failed, everything set up after that point quietly did not happen, leaving a scattering of buttons that did nothing and no clue why. Start-up now carries on past a failure and names the part that broke.
Your saved projects, two at a time and drawn
The Load Project list is wider, in two columns, and each project now carries a little drawing of its own route - the shape of the ride, no map behind it. A loop looks like a loop and an out-and-back looks like an out-and-back, which is how you recognise a project well before you have read its name.
"View all projects" on the front page also opens the list when it gets there. It used to take you to the app and leave the list shut, so the one thing you had asked for was the one thing that did not happen.
September 4, 2026
The map speaks your language too
PitStopper has been translated into eight languages for a while, but the map underneath was always English - and where a place had no English name, whatever the local mapper wrote. Now the map's own labels follow the interface, so a French rider planning a route through Belgium sees Anvers and Bruxelles rather than Antwerpen and Brussel.
There is an override in Settings → Preferences, because the two are genuinely different questions. Pick any of our languages for the map independently of the interface, or choose Local names to see every place exactly as it is written on the ground - which is the one you want when you will be following the road signs. The language pickers now live in Preferences as well as the header.
No extra download: the map data already carries names in 75 languages, we simply were not asking for them.
Turn instructions you can read at a glance
Left and right turns are now drawn with a bent arrow rather than a straight one, the way a junction sign shows the road turning. A plain left arrow says "left is that way", which is a compass direction; the bent one says "the road turns here", which is the instruction.
Roundabouts now show the exit number in a circle everywhere - the map marker and the side panel included, not just imported files. On a route we matched ourselves the marker was drawing an ordinary turn arrow while the text beside it read "Take the 1st exit onto Headley Road". The printed turn sheet gets both changes too.
The map now shows the shape of the ground
The main map is hill shaded. Ridges, valleys and the sides of a climb are visible at a glance, which for anyone planning a ride or a walk is the difference between a route that goes over a hill and one that goes around it. There is a button in the bottom-right corner of the map to turn it off, and it is on by default.
We have had relief shading in the 3D view and in Route Video for a while, but not on the flat map that most planning actually happens on. This is the same elevation data, so it costs no new download and works with every OpenFreeMap style. Shading applies to the OpenFreeMap vector map; on the satellite and other raster layers the button is greyed out.
A turn list that matches the one in your navigation app
Roundabouts are now drawn as a numbered circle - the exit number in a ring, exactly as Cruiser shows it. The circling arrow they used to have was wrong wherever traffic goes the other way round: it pointed clockwise, which is how a British rider takes a roundabout and the exact opposite of how a Belgian one does. A number needs no such opinion.
The list now opens and closes properly too. An imported navigation file gets the road it sets off along, taken from the file's own first point, so the list no longer starts on a turn you only reach after riding the length of an unnamed road. And every list ends with "Arrive at destination", rather than stopping at the last turn with nothing to say the instructions have run out.
Each distance has also moved one row, onto the instruction it belongs to. Standing at a turn, the number you want is how far until the next one, not how far you have come since the last. Checked side by side against Cruiser on the same file: the two lists now agree row for row and metre for metre.
Roundabout exits now reach Cruiser and Locus
The exit number a matched track works out is now written into the exported GPX, so the app you navigate with says it too, not just PitStopper. It goes in the turn symbol at the roundabout entry, which is where Locus and Cruiser look for it: roundabout_e3 is "take the third exit".
Reading files has widened to match. PitStopper now recognises every announced turn instruction those two apps support, including exits, slip roads, merges, destinations and left or right u-turns, so an imported navigation file shows what its author meant rather than falling back to "Continue".
A turn list you can read down
Each turn now gets the full width for its instruction, with the distance and time on a line beneath it and the edit and delete buttons stacked at the right. Before, the instruction was sharing one line with both of them and had about 120 pixels to live in, so "Turn right onto Pearson Road" wrapped to four lines and every row was a different height.
On the Surface tab, "Show surface colours on the map" has moved up to sit directly under the tabs, where Turn-by-turn keeps its own map toggle. It is the same question on both tabs, so it should not be in a different place on each. The surface list itself is tighter as well, and now fits on screen instead of showing two rows at a time.
Roundabouts: take the third exit
A matched track now reads roundabouts the way a sat-nav does: one instruction as you arrive, saying which exit to take and the road it leads onto, instead of a scatter of small turns around the ring.
Counting them properly took more care than it sounds. OpenStreetMap usually stores a roundabout as several separate arcs, so they are gathered back into one junction first - on a 44 km Berkshire ride, 23 roundabout ways were 6 actual roundabouts. Where the arms are dual carriageways each one touches the ring twice, so only the half you could leave by is counted, and service roads, tracks and private drives are skipped unless that is where you went. Nothing under about 15 metres across is numbered at all, because "take the first exit" is a silly way to say "turn right".
None of it needs to know which side of the road a country drives on: OpenStreetMap draws every roundabout in the direction its traffic goes, so counting forward along the ring is right in Belgium and in Britain alike.
Pick the map from the map
The buttons at the bottom left of the map gain a Map layer chooser: Streets, Satellite, Topographic, Cycling, Outdoors and OpenFreeMap, the same list as View → Map Layer but within reach of the thing it changes. Each has a swatch of its own colours so you can pick by eye.
The palette button beside it changes the style of the OpenFreeMap layer, and only that layer has styles, so on any other map it is now greyed out with a tooltip saying why rather than opening a menu that does nothing.
Two fixes on the turn list
Turn markers were being drawn underneath the route's direction arrows, so an arrow sitting on a junction hid the instruction for it. They now have a layer of their own above the arrows.
And opening the turn list from Match to Roads then closing it now takes you back to Match to Roads, rather than dropping you on the Search panel you had been on before any of it started.
Turn markers say the road, and can become a POI
Hovering a turn marker on the map now reads the same sentence as the turn list, road name included: "Turn right onto Palokenstraat" rather than just "Turn right". Both are built by one function now, so they cannot drift apart again.
Clicking a turn marker opens a small panel with how far into the ride it is and an Add a POI here button. A junction is often worth remembering as well as navigating, and the POI lands on the turn's own coordinates rather than wherever you managed to click.
Route Video: music
Your video can now have a soundtrack. Eight tracks, ordered from calmest to briskest, from a gentle ukulele to drum & bass. Pick one from the Music list in the video panel and it plays as you choose it, so you can hear it against the route before committing to a render. The track is looped or trimmed to the exact length of your film and faded at both ends, and the choice starts at None, so nothing is added unless you ask for it. All eight are levelled to the same loudness, so moving down the list changes the mood and not the volume.
The music is free for you to use, including on a monetised channel. Six of the eight are public domain (CC0) and ask nothing at all; the other two are Creative Commons Attribution, and their credit appears on the end card automatically, which is what that licence asks in return. Anything with a NoDerivatives, NonCommercial or ShareAlike clause is deliberately absent: setting music to moving images counts as an adaptation, we cannot know whose channel your video ends up on, and ShareAlike would put your own video under the same licence.
Route Video: a clock, a route legend, and a closing credit
The player now shows where you are and how long the finished video will be, as minutes and seconds beside the scrubber, so you know what you are about to record before you record it.
Route legend is a new option: a small diagram of the whole ride in the top right corner, with a dot moving along it as the video plays. It keeps the shape of your route rather than stretching it to fill the box, and it corrects for longitude being shorter than latitude, so a north-south ride looks like a north-south ride.
You can also give the film your own opening title and a sentence or two, shown on a card over the first shot and gone by the time the camera dives in. Both are empty by default, so nothing appears unless you write it, and the card follows your typing as you go.
Videos now open and close with Made at PitStopper.net. It fades out as the opening dive begins, so it reads as a title rather than a watermark, and it returns on the end card. The opening one can be turned off; the closing one stays.
The match offer no longer hides behind a dismissed dialog
The offer to match a recorded ride to the roads appeared only inside the import summary, which has a "Don't Show Again" button. Anyone who had ever pressed that never saw it, because they had dismissed a summary of what was imported rather than the one line in it about what to do next. When the summary is turned off, the offer now appears on its own at the foot of the screen instead.
Fixed alongside it: the Show import summary preference did nothing. A boolean setting was being compared against the text "true", so only the older "Don't Show Again" button ever actually hid the dialog.
Print your turn instructions, with a picture of every junction
Export → Print Turn Instructions, or the link above the turn list, makes a sheet of every turn: the instruction, the road it leads onto, the distance to it and the running total, with a small map of each junction beside it. There is a map of the whole route at the top. Both pictures can be turned off if you would rather have a plain list. The menu entry is greyed out when the route has no turn instructions.
The junction pictures are drawn here from the same map tiles the app uses, so there is no third-party service involved and the print matches the screen. A 45 km ride with 47 turns takes a few seconds to prepare. Rows never split across a page break, because half a junction picture at the foot of one sheet is no use on the road.
Turn lists start where you do, and the arrows mean something
A turn list used to open on its first turn, which is not the first thing that happens: you ride the length of a road to reach it, and nothing said which way to set off. Every list now opens with Head south-west on Badgers Rise, read from the route's own first stretch and the road beneath it.
The turn arrows have been put on one compass. They previously mixed two ideas, with an up arrow for "continue" but a right-angle glyph for a sharp turn and nothing pointing backwards at all, so a slight left showed the most rearward arrow in the set and read as "go back the way you came". Now up is ahead, a slight turn is 45 degrees off it, a turn is 90, and a sharp turn genuinely points backwards. Roundabouts get a circling arrow and the words "At the roundabout"; previously they had neither and were labelled "Continue".
The Surface tab now opens with the answer rather than the detail: a bar in the map's own colours showing how much of the ride is paved, unpaved and unrecorded, with a percentage and a distance against each. Hovering a stretch in the list picks it out on the map, and clicking one frames it, the way the turn list already worked.
Routes planned from scratch get road surface too. The roads are already fetched to name the turns, so the surface comes from the same request, and the Surface tab and its map colours now work for a planned route as well as a matched one.
Road surface, for free, from the match
Matching a track to the roads now also reads what those roads are made of. The Surface tab of the Navigation data panel, which until now only had anything to say about an imported navigation file, works for any matched track: a list of stretches with their distances, and a toggle to paint them along the route on the map. On a 44 km ride, 70% of the distance has a surface recorded in OpenStreetMap, and the rest is shown honestly as unknown rather than assumed to match its neighbours. The result panel names the mix, for example "Asphalt 30.78km, Unpaved 427m".
It goes into the exported file too, as the same route_information extension Cruiser writes, so a device that understands surface gets it along with the turns. Markers are written only where the surface changes, which is how the format works, and an unknown stretch is marked as such rather than being allowed to inherit its neighbour's. A 44 km ride gains about 2 KB.
It costs nothing. The roads were already fetched to do the matching and every tag came with them; only the road names were being kept. Two bugs turned up in the process: the surface colours understood only the three words a Cruiser navigation file uses, so real OpenStreetMap values like asphalt fell through to the rough-surface orange and painted a tarmac ride as though it were a gravel track. And the coloured overlay could vanish underneath a route line, which it no longer can.
Your stops come with the matched track
Points of interest found along a recording now belong to the matched version too, so the obvious next move, deleting the recording once a cleaner one exists, no longer takes every cafe and water point with it. The panel gained the two decisions it was leading up to: Keep only the matched track, which removes the recording, hands the stops over with their distances re-measured against the new line, and puts the matched route back to a normal colour and width, or Discard it, which puts the recording back exactly as it was. Both are undoable.
The result now opens with a sentence saying whether it went well, rather than leaving you to work that out from four numbers. Climbing is shown before and after when it moves, because a line rebuilt from fewer points counts less GPS wobble as ascent, and the figure dropping by itself is alarming without an explanation. Each place the two lines disagree gets a numbered pin on the map, so you can see whether they are spread through the ride or all in one wood.
Turn instructions on paths are far less noisy. A bend within one road was already ignored where the road had a name, but an unnamed lane or footpath had no name to compare, so every wiggle became an instruction. A 134 km walking trail dropped from 586 turns to 287, and a 44 km ride from 59 to 47.
What the match actually did
Matching a track takes about a second, which is fast enough to look like nothing happened. The result panel now has a What was done section that says otherwise: how many road sections were considered and how many your track used, how many named roads that came to, any repeated or standing-still points that were dropped, how far the new line ever strays from your own, how much of it was kept as recorded because there was no road there, the point count before and after, and how long it took. Most of these were already being worked out and thrown away. It is folded shut, so the four figures that matter stay at the top.
PitStopper spots a recorded ride when you import one
Import a GPS recording and PitStopper now says so, and offers to match it to the roads there and then. It works out which it is from the file itself rather than guessing: a FIT file states outright whether it holds an activity or a course, a heart rate or power reading can only have been measured, and most tools write their own name into the file. Where nothing settles it, the shape of the points does. Checked against twenty-two real files, it never once mistook a planned route for a recording, which is the mistake that matters: nothing is offered unless it is fairly sure.
Match to Roads moves into the sidebar
It was a dialog over the map, for a feature whose whole output is two lines on the map. It now sits in the sidebar beside them, from the "..." menu, so the list of places the two differ stays put while you click through them and nothing covers what you are looking at. The turn list gained a toggle to show or hide the turn markers, which matters once a matched ride has put sixty of them along the line.
Turn-by-turn from a recorded track
Matching a track to the roads now also works out its turns, so a ride you recorded can be exported as a turn-by-turn GPX for Cruiser or Locus Map. Each instruction names the road it leads onto - "Turn left onto Mill Lane" - read from OpenStreetMap at the junction itself. Nothing is re-routed: the turns come from the shape of your own track, so a deliberate detour keeps its turns and a route no planner would choose still gets instructions. Where the ride left the road network entirely the turn is still there, without a road name, rather than missing.
The list is kept short on purpose. OpenStreetMap splits roads at bridges, surface changes and parish boundaries, and calling each of those a turn would give about four instructions per kilometre; following one wiggly lane would read as four separate turns onto the same road. A 53 km route comes out with 35 instructions. Level of detail in the match panel moves that up or down and the list rebuilds instantly, so you can see the effect rather than guess at it.
Every generated turn can be corrected by hand in the Navigation data panel: change the instruction, or remove one that should not be there. Turns that arrived inside an imported file stay read-only, since that file is re-exported exactly as it came in.
September 3, 2026
Match a track to the roads
A GPS recording wanders either side of the road it was made on, and joining those fixes with straight lines also cuts the corners off every bend. Route → Match to Roads works out which roads you actually used and draws the line along them, giving a cleaner shape and a more honest distance. On a 44 km ride whose bike computer kept its own total, the raw coordinates were 123 m out; the matched line is 77 m out.
Your recording is never altered. The matched version is added as a second route beside it, so you can compare the two and delete either. It follows what you really did, detours to the shops included; Edit Track is still the way to change the route itself. Times, heart rate, power and temperature all come across, and a stop stays a stop, so the ride's elapsed time is preserved to the second. Where the matched line and your recording disagree, the panel says where and by how much rather than leaving you to find it on the road.
The two are drawn to be compared: your recording underneath as a wide green line, the matched version on top as a thin red one, so it reads as a red thread lying in a green channel and any disagreement shows at a glance. Line thickness is now a route setting in its own right, beside the colour, so you can set up that kind of comparison for any two routes.
It works on drawn routes as well as recordings. A route built in another tool has no GPS noise, but it was drawn against that tool's own map, which does not always place a road where OpenStreetMap does; matching lines the two up and fills in the road between points the designer placed far apart. Either way the result follows the track it was given rather than what a router would prefer, so a deliberate detour survives and a road closed since is neither known nor applied.
Road names on a planned route's turns
The turn list of a route planned in PitStopper now says which road each turn leads onto - "Turn left onto Molenstraat" rather than just "Turn left" - and the exported turn-by-turn GPX carries the same names for Cruiser and Locus. The names come from our own copy of OpenStreetMap a moment after the route appears, so nothing waits on them. Where a lane has no name on the map the instruction stays as it was, rather than borrowing the name of the road beside it. Editing a section of the route afterwards names the fresh turns in that section too.
Recording quality
A recorded GPS track is a cloud of fixes with a line's shape, and every wobble between two of them is counted as distance ridden, so a recording always measures a little long. A new Recording Quality entry in the Route menu says so plainly: how many points the ride holds, what those points measure, and any obvious errors found in them. For a FIT file it also shows what your device's own odometer recorded, which is an independent measurement of the same ride and usually the more honest number. The same summary appears on import when the two disagree. Nothing here changes your route; it is an observation, not a correction.
September 2, 2026
September 1, 2026
August 2026
August 31, 2026
August 30, 2026
August 29, 2026
August 28, 2026
August 27, 2026
August 27, 2026
routes_2.zip, so exporting both left two files you could not tell apart. They are now routes_2_gpx.zip and routes_2_fit.zip.
August 26, 2026
.psp file or a shared link now stays as unsaved work rather than quietly joining your saved projects, and the status is visible on phones too.
August 25, 2026
August 24, 2026
August 23, 2026
August 22, 2026
August 21, 2026
August 20, 2026
August 19, 2026
August 18, 2026
August 17, 2026
August 12, 2026
August 10, 2026
August 4, 2026
August 3, 2026
August 2, 2026
August 1, 2026
July 2026
July 31, 2026
July 30, 2026
July 29, 2026
July 28, 2026
July 27, 2026
July 26, 2026
July 20, 2026
July 19, 2026
July 18, 2026
July 17, 2026
July 16, 2026
July 15, 2026
July 14, 2026
July 13, 2026
July 12, 2026
July 11, 2026
July 10, 2026
July 9, 2026
July 8, 2026
July 7, 2026
July 6, 2026
- A POI server failure no longer masquerades as “no POIs here” - partial searches show an amber Search Incomplete warning with a one-click Retry missing, and are never cached as complete
- The POI Cache viewer shows each category’s status (complete / incomplete / unverified) with a per-category re-search button
- Deleted POIs stay deleted - they no longer come back after a radius change, category toggle, re-search, or project reload; Restore All now actually works
- Editing a route now invalidates its POI cache; deleting a route removes its POIs everywhere
- Per-category search distances beyond the global radius now really fetch that far
- Clearing the POI cache sticks after a reload; multi-route caches survive reloads
- The search radius is remembered correctly - new sessions no longer start silently at 20 m, and saved projects record the radius you actually used
- Map markers and the POI list always show the same set when switching or selecting routes
- Projects now save everything: clock-time settings in downloaded files, distance markers (with custom labels), custom category colours, per-route POI visibility, and which routes are ticked for search
- FIT export round-trips are lossless - altitude/distance telemetry was silently corrupted (up to 100×) in re-exported files, and a deleted FIT route could leak its recorded track into another route’s export
- Re-importing a PitStopper GPX keeps your notes, full POI names, and ~40 more categories that previously collapsed to “other”
- Export hardening: HTML injection via crafted POI/route names fixed in the print report, event sticker and CSV dialog; CSV formula injection neutralised
- Storage honesty: a failed save can no longer show a “project saved” success message, and interrupted storage migrations now resume instead of hiding projects
- The app now self-checks its internal wiring at startup and reports errors (anonymously) so problems get found before you hit them
July 5, 2026
- POI “distance to finish” and arrival time use that POI’s own route
- Next/previous-of-type and the “last café on route” gap warnings stay on one route
- Elevation chart only flags the active route’s road obstacles
- Reports, GPX and FIT exports honour the route selection - and FIT can now combine selected routes into one course
- Auto-save recovery keeps every route; project cards show the whole project’s distance
- Per-category POI limit applies per route; POI list and CSV group by route
- 3D map frames all selected routes; historical weather names which route it’s for
- Nearest-point matching corrected at northern latitudes (POI distance/side/elevation could be up to ~250 m off)
- Elevation gain/loss, and the flyover & animation charts, now honour feet
- “Add daylight POIs” duration no longer ~1000× too long
- Reverse Route updates POI distances and swaps climb/descent
- Walking time estimates no longer ~19% too slow on the flat
- Distance-marker ETAs use your route’s real pace, not a fixed 15 km/h
- FIT course-point times spread across the whole ride; UTM coordinate conversion corrected
July 1, 2026
June 2026
June 30, 2026
June 29, 2026
<link> to pitstopper.net in their <metadata> header, so apps that read GPX metadata can credit and link back to PitStopper.
<type> to the point's actual Garmin course-point type (e.g. AID STATION, FOOD, FIRST AID) instead of a generic placeholder, matching how Garmin Connect writes them - so a point's category carries through when you re-import into Garmin or other tools. It reuses the same category mapping as the FIT export.