Convert Shapefile to FlatGeobuf Online — Free GIS Converter
Convert Shapefile to FlatGeobuf (.fgb) for cloud-native GIS, fast web APIs, and HTTP range request streaming — free, browser-based, automatic CRS handling.
Updated May 2026
Shapefile is reliable for desktop GIS, but it is poorly suited for cloud storage and web APIs — its multi-file bundle breaks when served from object storage, and it has no streaming support. FlatGeobuf is the modern binary replacement that handles all of this natively — convert your Shapefile .zip to .fgb with geodata.plus.
Why convert Shapefile to FlatGeobuf?
FlatGeobuf is a cloud-native binary vector format built on Flatbuffers serialization with an embedded Hilbert R-tree spatial index. Unlike Shapefile, which requires all four component files to be present and cannot be served efficiently from static object storage, a FlatGeobuf file is a single binary that supports HTTP range requests — clients can fetch only the spatial subset they need from S3, GCS, or Cloudflare R2 without downloading the entire dataset.
If you are migrating a geospatial data pipeline from legacy desktop workflows to cloud infrastructure, converting your Shapefiles to FlatGeobuf is a significant upgrade. Read performance is dramatically faster than Shapefile (no DBF/SHX overhead), file size is smaller (binary encoding vs. ASCII), and the format is fully supported by GDAL, QGIS, and Mapbox toolchains.
Why use geodata.plus
- Free tier — convert up to 3 files per month at no cost, no credit card required
- Automatic CRS detection — reads the
.prjfile from your Shapefile and stores the correct CRS in the FlatGeobuf file header - Optional reprojection — reproject to any EPSG code before download, for example to WGS 84 for web map consumption
- Browser-based — no GDAL, QGIS, or Node.js tools needed; works on any modern browser
- Encrypted transfer — all uploads use TLS; files are stored temporarily in Cloudflare R2 and automatically deleted on schedule
- Auto-deleted output — output files are automatically deleted after 2 days (free tier) and 7 days (Pro); no manual cleanup needed
How it works
- Upload your Shapefile as a
.ziparchive containing the.shp,.shx,.dbf, and.prjfiles - geodata.plus detects the format and reads the CRS from the
.prjfile - Select FlatGeobuf as the output format; optionally choose a target EPSG code
- Download your
.fgbfile, ready for cloud hosting, GDAL pipelines, or web map integration
Shapefile format
Shapefile is Esri's multi-file vector format consisting of .shp (geometry), .shx (index), .dbf (attributes), and .prj (CRS). Despite being the most universally supported GIS format, its multi-file structure is a liability in cloud environments where files must be uploaded and managed individually, and its binary format requires all components to be present for any read operation. The 2 GB per-file size limit is also a constraint for large national datasets.
| Property | Value |
|---|---|
| Extension | .shp + .shx + .dbf + .prj (delivered as .zip) |
| Type | Vector, multi-file bundle |
| Coordinate system | Any CRS (stored in .prj) |
| Geometry types | Point, Polyline, Polygon, MultiPoint (one type per file) |
| Common software | ArcGIS, QGIS, Tableau, AutoCAD Civil 3D, government portals |
FlatGeobuf format
FlatGeobuf is a binary vector format using Flatbuffers serialization, standardized as an OGC Community Standard in 2021. Its file structure places a packed Hilbert R-tree spatial index in the header, followed by feature data laid out in Hilbert curve order. This layout enables spatial queries to be satisfied by reading a small fraction of the file, and HTTP range requests can fetch exactly the bytes containing features in a given bounding box. The format is significantly faster to read than Shapefile and produces smaller files without any external compression.
| Property | Value |
|---|---|
| Extension | .fgb |
| Type | Vector, single file (binary) |
| Coordinate system | Any CRS |
| Geometry types | Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, GeometryCollection |
| Common software | GDAL/OGR, Mapbox, OpenLayers, QGIS, cloud-native GIS, web APIs |
Frequently asked questions
Will the 10-character DBF field name limit from Shapefile affect the FlatGeobuf output?
The truncated field names from the DBF are carried into the FlatGeobuf column schema as-is. FlatGeobuf itself has no field name length restriction, so the short names are preserved exactly. If your workflow requires restoring the original full field names, you will need to rename the columns after conversion in QGIS or using a GDAL ogr2ogr command with a field name mapping.
How much smaller is the FlatGeobuf compared to the original Shapefile ZIP?
Results vary by dataset, but FlatGeobuf typically produces files 2 to 4 times smaller than the equivalent Shapefile's uncompressed components. The comparison against the zipped Shapefile is closer — ZIP compression on Shapefile data is effective because DBF files compress well. For geometry-heavy datasets with minimal attributes, FlatGeobuf's binary geometry encoding outperforms ZIP compression significantly. For attribute-heavy datasets with many text columns, the difference is smaller.
Can I serve the converted FlatGeobuf file from Amazon S3 and stream it to a Mapbox GL JS map?
Yes. Upload the .fgb file to S3 with public read access and set the Content-Type header to application/octet-stream. Enable CORS on the S3 bucket to allow cross-origin range requests from your web app. In your JavaScript, use the flatgeobuf npm package to fetch and decode features within the map's current bounding box. The library handles HTTP range requests automatically and integrates with both Mapbox GL JS and OpenLayers data sources.