GeoJSON vs Shapefile vs GeoPackage
Original Upload: 2025-12-25
Last Updated:
| GeoJSON | Shapefile | GeoPackage | |
|---|---|---|---|
| Format | JSON text | Binary + sidecar files | SQLite database |
| Files | 1 (.geojson) | 3-7 (.shp, .shx, .dbf, .prj...) | 1 (.gpkg) |
| Size Limit | None (RAM-bound) | 2GB per file | None |
| CRS | WGS84 only (spec) | Any (.prj file) | Any (embedded) |
| Field Names | Unlimited | 10 characters max | Unlimited |
| Data Types | String, Number, Boolean, Null | Limited (no datetime) | Full SQL types |
| Multiple Layers | No | No | Yes |
| Raster Support | No | No | Yes |
| Human Readable | Yes | No | No |
| Web Use | Native | Needs conversion | Needs conversion |
| Edit Partial | No (rewrite all) | Yes | Yes |
| Topology | No | No | Optional |
Use When
GeoJSON: Web apps, APIs, small datasets, human inspection.
Shapefile: Legacy systems, ESRI workflows, regulatory submissions.
GeoPackage: Large datasets, multiple layers, offline mobile, modern desktop GIS.