How TrailConvert works
TrailConvert converts GPX, KML, KMZ and GeoJSON files directly in your browser, with no upload. There is no server involved in reading your file, converting it, or generating the download.
When you drop a file onto TrailConvert, the browser hands it to a bit of JavaScript running on your own device, using the same File API every site uses to let you attach a file to a form. That code parses the file, converts it to the format you picked, and builds the new file, all in memory, in that browser tab. The file never gets sent anywhere. There is nothing to send it to: TrailConvert has no upload endpoint for route files at all.
This is also why we can be precise instead of vague about "offline." Loading the TrailConvert page for the first time needs a connection, the same as any website. But once it has loaded, converting a file needs no connection at all, because the conversion step never touches the network. You could switch your phone to airplane mode after the page loads, and dropping in a GPX file to convert to KML would still work.
That is a narrower claim than "works without internet," and it is the accurate one. We are not shipping an installable offline app in v1 (that is on our list), so the page itself still needs to load first. What we can promise is that the actual conversion, the part where your route data gets read and rewritten, never leaves your device, and never needs a live connection to do it.
Why we built it this way
Route files usually contain more than a line on a map. A GPX from a hike or a ride often has a timestamped path of exactly where someone was, minute by minute. We did not want to run a service that people have to trust with that, and we did not want to build one either. Doing the conversion entirely client-side means there is no server logging your files, no database to leak, and honestly, less for us to maintain too.
It also means TrailConvert works the same way for a single test file as it does for a real flight plan or a multi-hour ride: read it, convert it, hand you the result. One file per conversion is free, with no account and no signup. If you regularly convert batches of files at once, that is the one thing behind a one-time unlock, but the core conversion itself has never depended on a server and never will.
Who this is for
We built TrailConvert for hikers moving a track between AllTrails, Garmin and Google Earth, cyclists moving files between Strava, Garmin Connect and their bike computer, and drone pilots converting flight-path and waypoint files between planning software and whatever they use to review the flight afterward. If you have ever had a route file in the wrong format, it is probably one of GPX, KML, KMZ or GeoJSON, and TrailConvert converts between all four.
Jump to a specific conversion
Frequently asked questions
- Does TrailConvert upload my files to a server?
- No. TrailConvert converts GPX, KML, KMZ and GeoJSON files entirely in your browser using JavaScript's File API. There is no upload endpoint for route files, so the file never leaves your device.
- Does TrailConvert work offline?
- The page itself needs a connection to load once, like any website. After that, converting a file needs no connection at all, because the conversion step never touches the network.
- What file formats does TrailConvert support?
- TrailConvert converts between GPX, KML, KMZ and GeoJSON, in any direction between those four formats.
- Is TrailConvert free to use?
- Converting one file at a time is free, with no account or signup. Converting a batch of files at once requires a one-time $9 unlock.
TrailConvert is built by Appitro Studio, a small team building web tools we actually use ourselves. You can try the converter at appitrostudio.com/trailconvert.