FlatGeobuf vs GeoJSON: Performance vs Compatibility
GeoJSON is the universal web mapping standard — readable, simple, and supported everywhere. FlatGeobuf is the newer, binary alternative optimised for performance — faster reads, smaller files, and cloud-native streaming via HTTP range requests. Here is how to decide which one to use.
Bottom line
Use FlatGeobuf for high-performance and cloud-native workflows. Use GeoJSON for web sharing, GitHub, and broad tool compatibility.
FlatGeobuf vs GeoJSON: feature comparison
| Feature | FlatGeobuf | GeoJSON |
|---|---|---|
| Format type | Binary (FlatBuffers) | JSON text |
| Human readable | No | Yes |
| Read/write speed | Very fast | Moderate |
| File size | ~60% smaller | Larger |
| HTTP range requests | Yes (random access) | No (full download) |
| Browser JSON parsing | No (needs library) | Native |
| GitHub preview | No | Yes |
| OGC standard | Community Standard | RFC 7946 |
| GDAL support | GDAL 3.1+ | Universal |
| QGIS support | QGIS 3.16+ | Universal |
| Spatial index | Built-in (Hilbert) | None |
FlatGeobufWhen to use FlatGeobuf
- Serving large vector datasets from S3, GCS, or Azure Blob Storage
- Applications where read performance on large files is critical
- Cloud-native tile-free streaming of vector data
- Internal data pipelines where human readability is not needed
- Datasets over 100 MB where GeoJSON parsing becomes slow
GeoJSONWhen to use GeoJSON
- Sharing data publicly on GitHub or the web
- Web mapping with Leaflet, Mapbox GL JS, or D3.js
- APIs that serve geographic features to clients
- Collaboration where humans need to inspect or edit the data
- Any workflow requiring maximum tool and software compatibility
Convert between FlatGeobuf and GeoJSON
Frequently asked questions
Q.How much faster is FlatGeobuf than GeoJSON?
Benchmarks show FlatGeobuf reads 5–10x faster than GeoJSON for large datasets. The difference is most significant for files over 10 MB where JSON parsing overhead becomes measurable.
Q.Can I convert FlatGeobuf to GeoJSON?
Yes. Upload your .fgb file to Maparz and select GeoJSON as the output. The conversion is handled by GDAL and preserves all geometry and attributes.
Q.What are HTTP range requests and why do they matter?
HTTP range requests let a browser or client download only a specific byte range of a file without downloading the whole thing. FlatGeobuf's built-in spatial index allows clients to fetch only the features within a bounding box, making it efficient for large cloud-hosted datasets.
Q.Is FlatGeobuf ready for production use?
Yes. FlatGeobuf is an OGC Community Standard supported by GDAL, QGIS, Maplibre GL JS, and several cloud platforms. It is production-ready for teams using modern GIS toolchains.