Convert GPX to FlatGeobuf Online — Free GIS Converter
Convert GPX tracks, routes, and waypoints to FlatGeobuf (.fgb) for fast cloud-native GIS streaming and web API delivery.
Updated May 2026
Converting GPX to FlatGeobuf transforms GPS tracks and waypoints into a high-performance binary format that supports HTTP range requests, enabling fast partial reads and streaming delivery of geospatial data from cloud storage without a dedicated server.
Why convert GPX to FlatGeobuf?
GPX is an XML format optimized for portability and human readability, but these properties make it slow to parse at scale — a large GPX file with tens of thousands of track points requires reading and parsing the entire XML document before any geometry is accessible. FlatGeobuf is a cloud-native binary format designed to solve exactly this problem. Its spatial index and support for HTTP range requests mean that a viewer or API can fetch only the portion of the file intersecting a bounding box, without downloading the whole dataset. If you are building a web application that serves GPS track data from S3, Cloudflare R2, or Azure Blob Storage, FlatGeobuf is dramatically more efficient than GPX for the delivery layer.
Why use geodata.plus
- Free tier includes 3 conversions per month with no account required
- Automatic format and CRS detection on upload
- Optional reprojection to any EPSG code — FlatGeobuf supports any CRS
- Entirely browser-based — no GDAL or Node.js toolchain required to perform the conversion
- Encrypted upload (TLS); files stored in Cloudflare R2, automatically deleted after 2 days (free) or 7 days (Pro)
- Output includes a packed spatial index for optimal HTTP range-request performance
How it works
- Upload your
.gpxfile to geodata.plus - geodata.plus detects the GPX format and confirms WGS 84 (EPSG:4326) as the source CRS
- Select FlatGeobuf as the output format; optionally choose a target CRS for your application
- Download your
.fgbfile and upload it to cloud storage or serve it directly from your web application
GPX format
GPX (GPS Exchange Format) is an XML standard for GPS data portability. All GPX coordinates are in WGS 84. It holds waypoints, routes, and tracks, with optional per-point elevation and timestamps. GPX is widely supported by consumer GPS devices and fitness platforms, making it the most common raw output of field data collection. However, its XML structure is verbose and requires full-file parsing, making it unsuitable as a delivery format for large datasets in web applications.
| Property | Value |
|---|---|
| Extension | .gpx |
| Type | Vector, single-file XML |
| Coordinate system | WGS 84 (EPSG:4326) only |
| Geometry types | Points (waypoints), LineStrings (routes/tracks) |
| Common software | Garmin, Strava, AllTrails, Komoot, QGIS, ArcGIS |
FlatGeobuf format
FlatGeobuf is a binary vector format built on Google's FlatBuffers serialization library. Its key innovation is a packed Hilbert R-tree spatial index at the start of the file, combined with a layout that allows HTTP servers to respond to range requests for specific spatial regions. This makes FlatGeobuf ideal for serving large geospatial datasets from static cloud storage — a client can request the features within a viewport bounding box without downloading the entire file. FlatGeobuf is supported by GDAL/OGR, Mapbox, the flatgeobuf JavaScript library, and QGIS.
| Property | Value |
|---|---|
| Extension | .fgb |
| Type | Vector, single-file binary |
| Coordinate system | Any CRS |
| Geometry types | Point, LineString, Polygon, Multi- variants |
| Common software | GDAL, Mapbox, QGIS, cloud-native GIS, web APIs |
Frequently asked questions
Can I serve a FlatGeobuf file from S3 and read it directly in a browser?
Yes, and this is one of the primary use cases for FlatGeobuf. The flatgeobuf JavaScript package can fetch features from a .fgb file on S3 or any HTTP server using range requests. You need to enable CORS on the bucket, set the correct content-type header, and ensure range requests are allowed — all standard S3 configuration. The library handles the spatial index and range fetching automatically.
Does FlatGeobuf preserve the elevation and timestamp data from my GPX tracks? Elevation is preserved as the Z coordinate in the FlatGeobuf geometry. Timestamps from GPX track points are stored as attribute fields in the output. The FlatGeobuf schema is derived from the source data, so all attributes present in the GPX — including name, description, time, and elevation — are carried through to the output file.
How much smaller is a FlatGeobuf file compared to the original GPX? FlatGeobuf is a binary format while GPX is XML, so the size reduction depends on verbosity of the source GPX. In practice, FlatGeobuf files are typically 30–60% smaller than equivalent GPX files for the same track data, and they parse orders of magnitude faster because no XML tokenization is required.