Why this page exists
This site once said “your files stay on your computer” while every track file was being sent to the server. The sentence wasn’t malicious, it was unverified — copied from a template. Since then one rule applies here: no statement about data without a measurement behind it.
How this was measured
A script opens every tool in a real browser, drops a test file in, runs the tool and records every single network request — 159 cases across all tools and formats. The table below is the result of that measurement, not a description of the source code. Last measured on 2026-08-01.
Tool by tool
GPX stays in the browser, other formats are sent for conversion
| Tool | Outside services |
|---|---|
| Geotag Photos from GPX | OpenStreetMap |
| GPX Elevation Profile | none |
| GPX to Blog Map | OpenStreetMap, OpenTopoMap, CyclOSM / OpenStreetMap France |
| GPX Viewer | OpenStreetMap |
| Merge GPX files | none |
Always goes to the Reisezoom server
| Tool | Outside services |
|---|---|
| Add elevation to GPX | OpenTopoData |
| Change GPX timestamps | none |
| Clean GPX | none |
| FIT → GPX | none |
| FIT → KML | none |
| GeoJSON → GPX | none |
| GPS Studio Web (main page) | OpenStreetMap |
| GPX → CSV | none |
| GPX → GeoJSON | none |
| GPX → KML | none |
| GPX → KMZ | none |
| GPX → TCX | none |
| KML → GPX | none |
| KMZ → GPX | none |
| Move the start of a loop | none |
| NMEA → GPX | none |
| Reverse GPX | none |
| Simplify GPX | none |
| Split GPX | none |
| Splits per kilometre | none |
| TCX → GPX | none |
| Trim GPX | none |
Outside services
These services are not ours. Whatever arrives there is subject to their own terms.
| Service | Who asks | What is sent |
|---|---|---|
| OpenTopoData | our server | coordinates of sample points along your track — roughly one every 90 m, not every point, at most 600 |
| OpenStreetMap | your browser | the tile numbers of the visible map section — which reveals roughly where your track is |
| OpenTopoMap | your browser | the tile numbers of the visible map section |
| CyclOSM / OpenStreetMap France | your browser | the tile numbers of the visible map section |
Your browser talks to the service directly — your IP address is visible there. Our server asks, not your browser — the service sees our server’s IP, not yours.
Photos
Photos are never uploaded — neither to display them nor to geotag them. Reading the capture time and writing the coordinates happens entirely in your browser. You can verify this: using a photo tool produces no network request containing your image.
What is stored
Of the track files: nothing. Whatever is uploaded for conversion is written to a temporary directory, processed and deleted at the end of the same request — including when processing fails. There is no database, no history, no user account.
What the web server logs
Like every web server, this one records which address was requested when and from which IP. That includes the processing endpoints. The file name is deliberately not part of the address but sent as a header — headers are not logged. Without that precaution, “hike with dad.gpx” would end up in the log. How long our host keeps those logs is stated in the privacy policy.
Limits
- Largest file — 30 MB
- Files at once (merging) — 12
- Terrain-model lookups per run — 600
Check it yourself
You shouldn’t have to take this page on faith. Open your browser’s developer tools (F12), switch to “Network” and drop a file into a tool. You’ll see exactly what is sent — and what isn’t.
The same information in machine-readable form: dataflow.json
And the desktop app?
The desktop app processes everything on your computer. On its own it talks to two places: it checks at startup whether a newer version exists, and it loads map material from Mapbox using your own access token. Your tracks and photos do not leave your machine.