Skip to main content
Vecaria

GeoPackage to GeoJSON

Local

Convert GeoPackage (.gpkg) to GeoJSON in your browser — every feature table and WKB geometry, map preview before download. Free, no sign-up, nothing uploaded.

Drag files here, or click to browse

Supports GPKG, GeoPackage

Choose file

GeoPackage (.gpkg) → GeoJSON, locally in your browser.

What is it? GeoPackage to GeoJSON reads feature tables and WKB geometry from a GeoPackage (.gpkg) and converts them to GeoJSON. The ISO WKB curve family (CircularString/CompoundCurve/CurvePolygon/MultiCurve/MultiSurface) and Triangle/TIN/PolyhedralSurface are supported — curves are densified to polylines (≈5° arc step, GDAL CONVERT_TO_LINEAR semantics) — and the converted result renders on an in-page map preview.

TL;DR: Convert a GeoPackage (.gpkg) to GeoJSON in your browser — feature tables and WKB geometry, pick the layer when the file carries several, map preview before download. Free with no sign-up; nothing is uploaded.

How to use

  1. Open a .gpkg file.
  2. Choose a feature table (when the file carries several).
  3. Review the result on the map preview, then download the GeoJSON.

FAQ

Can it read multiple tables?

You can select which feature table to export.

What happens to curve geometries?

CircularString, CompoundCurve, CurvePolygon, MultiCurve and MultiSurface are converted to their linear GeoJSON counterparts by densifying arcs (three-point circles, collinear control points degrade to straight segments, ≈5° step); Triangle/TIN/PolyhedralSurface map to Polygon/MultiPolygon. True curve primitives don't exist in GeoJSON — the densification mirrors GDAL's CONVERT_TO_LINEAR.

Is it local?

Yes.

Is GPKG the same as GeoPackage?

Yes — .gpkg is the file extension of an OGC GeoPackage, a SQLite database that stores vector layers. The tool reads feature tables from gpkg_contents; with several tables each output is suffixed "<table>_layer" and you pick which one to export.

Does it reproject to WGS84?

No — coordinates pass through unchanged and the output GeoJSON carries no CRS marker. A non-WGS84 GeoPackage (e.g. srs_id 2056) yields source-CRS numbers: interpret them in the source CRS or reproject first.

Are Z elevations kept?

Yes — geometry is read per the ISO WKB dimension families, so Z elevations survive; M (measures) are dropped because GeoJSON has no M dimension. Curves (CircularString, CompoundCurve, CurvePolygon…) are densified to polylines at a ≈5° arc step, mirroring GDAL's CONVERT_TO_LINEAR.

Does it convert raster or tile tables?

No — only feature tables are converted; raster tile pyramids inside the .gpkg are skipped. Input size is bounded by your device's memory, since the whole file is parsed locally with an in-browser SQLite engine.

Examples

  • Drop in a .gpkg → get GeoJSON (map preview before download)

Supported formats

GeoPackageGeoJSON

Limitations

  • In-browser parsing is bounded by file size.
  • Feature tables from gpkg_contents are read; with multiple tables each output feature set is suffixed "<table>_layer".
  • Geometry is read per the ISO WKB dimension families: Z elevations are kept, M (measures) are dropped (GeoJSON has no M dimension) — M-only geometries no longer misread M as Z, and ZM streams no longer misalign.
  • Curve types are densified to polylines (≈5° arc step) — GeoJSON has no curve primitives; unknown geometry type codes fail loudly in both languages.
  • Coordinates pass through unchanged: the output GeoJSON carries no CRS marker, so a non-WGS84 GeoPackage (e.g. srs_id 2056) yields source-CRS numbers — interpret them in the source CRS or reproject first.
  • Raster tile tables are not converted.
  • Processed locally in your browser — nothing is uploaded.

Privacy

Privacy first: this tool runs entirely in your browser — your input and files never leave your device, and everything is cleared when you close the page.