GPX to GeoPackage Converter
Writes waypoints, routes and tracks of a GPX file as layers into one GeoPackage.
Upload a .gpx file. Waypoints, routes and tracks become separate layers of one GeoPackage with all GPX fields (ele, time, name, desc and so on). Elevations become the third coordinate.
Drag a file here to convert, or select file
Accepted: .gpx · max. 50 MB
What the converter does
- Waypoints, routes and tracks become the layers waypoints, routes and tracks; empty ones are skipped.
- All GPX fields are kept as columns, e.g. ele, time, name, cmt, desc, sym, type.
- Elevations become the third coordinate (ELE_AS_25D=YES). A track is a MultiLineString with one part per segment.
- The helper layers route_points and track_points are not exported; the time stamps of single track points exist only there. The report lists both.
- The report below the upload shows layers and features read and written, skipped layers with the reason, GDAL's warnings and the exact commands.
GDAL command the worker runs
The worker lists only the non-empty layers.
Tested with
| Test file | Result |
|---|---|
| GPX with 2 waypoints, 1 route (3 points), 1 track with 2 segments | 3 layers: waypoints (2, PointZ), routes (1), tracks (1, MultiLineStringZ); 4 of 4 |
Tested on 24 Sep 2026 with the worker code of this site and GDAL 3.10.3 (conda-forge build on Windows). The worker image runs the Debian build of the same GDAL version; the live worker was not part of these tests.
Limits
- Upload limit: 50 MB per file.
- Time stamps of individual track points are not in the output.
- Each GDAL step may run for up to 240 seconds; a longer run is stopped with an error message.
Frequently Asked Questions
What happens to my file?
Your browser uploads it directly to the GDAL worker on Fly.io (region Frankfurt). The worker converts it in a temporary folder and deletes the folder after sending the result, or immediately if the conversion fails. Files are not stored permanently.