Convert GeoJSON to shapefile for the desktop-GIS and legacy tools that still expect Esri's format. Your JSON is rebuilt into the multi-file shapefile set by an in-browser GDAL engine, with nothing sent over the network.
Drop a file here, or click to browse
KML, KMZ, SHP (.zip), GeoJSON, GPKG, GML, GPX, DXF, CSV, Excel, and more
No GeoJSON file to hand? Download a sample GeoJSON file (100 points) and drop it above to see the conversion.
Every format stores different things, so a conversion is never perfectly loss-free. Here is exactly what carries over when you convert GeoJSON to Shapefile, and what to watch for.
| What | GeoJSON → Shapefile | |
|---|---|---|
| Geometry | Changes | Points, lines and polygons are all carried over, but a Shapefile holds a single geometry type per file. A layer that mixes types is written one type at a time. |
| Attributes | Changes | Every column is kept, but the Shapefile .dbf caps field names at 10 characters, so long names are shortened (values are untouched). |
| Styling & labels | Kept | Neither GeoJSON nor Shapefile stores visual styling, so there is nothing to lose, the geometry and data carry straight over. |
| Coordinate system | Kept | The CRS is written into the sidecar .prj file. Data is reprojected to WGS84 by default, or a CRS you choose. |
| Elevation (Z) | Kept | 3D Z values carry from GeoJSON into Shapefile wherever the source records them. |
| File structure | Changes | A working Shapefile is several files, so you download one .zip holding .shp, .shx, .dbf, .prj and .cpg. Keep them together. |
GeoJSON runs the modern web-mapping stack. It is what Leaflet, Mapbox GL and OpenLayers render, and what most web APIs return. Desktop GIS, however, still speaks Shapefile. So people convert GeoJSON to Shapefile to move features off the web and into classic desktop workflows. For example, you pull boundaries or parcels from a web API as GeoJSON, then hand them to a colleague working in ArcGIS or MapInfo. The Shapefile is the lingua franca of desktop GIS, so it loads cleanly into QGIS and GeoServer for publishing and further editing.
GeoJSON is already defined in WGS84 longitude/latitude (EPSG:4326), so no guessing is needed on the way in.
On output, the coordinate system is written into the Shapefile .prj file. By default the data is reprojected to WGS84, or you can choose another EPSG code if your workflow needs one. A quick CRS check before you download saves the classic "my GeoJSON data is in the wrong place" surprise; the guide on coordinate systems and EPSG codes goes deeper.
Check your attribute names before converting. Shapefile field names are capped at 10 characters, so longer GeoJSON property keys get truncated and may collide. Also, a Shapefile holds one geometry type per file, so mixed points, lines and polygons cannot share a single file. Finally, the download arrives as a .zip because a Shapefile is really .shp, .dbf, .shx and .prj together. Keep every part.
GeoJSON files typically come out of Leaflet, Mapbox GL, OpenLayers, QGIS, GDAL. Once you convert to Shapefile, the file opens in ArcGIS Pro, QGIS, MapInfo and GeoServer, the whole desktop-GIS world. The Shapefile output follows the standard specification exactly, so those programs read it without any special import settings.
GeoJSON is what a web map or API usually hands you, a single text file holding features and their properties. Shapefile is what desktop GIS and many agencies still request. This conversion reads those JSON features and writes the matching .shp, .dbf, .shx and .prj set. In practice you export a layer from Leaflet or a web service, then convert it so a colleague can open the data in ArcGIS or MapInfo.
Yes. GeoJSON feature properties become the Shapefile .dbf attribute table. However, field names longer than 10 characters are shortened, so rename long keys first if the exact names matter.
A Shapefile is not one file. It needs at least .shp, .dbf and .shx, usually with a .prj for the coordinate system. The converter bundles these into one .zip so the parts stay together.
Shapefile field names are capped at 10 characters, so longer property keys get truncated on the way out. If two keys collide after truncation, one is renamed to stay unique. Shorten the property names yourself first when the exact labels matter.
A shapefile stores one geometry type per file. When your GeoJSON mixes points, lines and polygons, they cannot share a single shapefile. Split the features by geometry type first, then convert each group so QGIS or ArcGIS reads every layer.
A Shapefile file opens in ArcGIS Pro, QGIS, MapInfo and most desktop GIS. Because the output follows the standard specification, any tool that supports Shapefile will read it without special settings.
No conversion is perfectly loss-free because each format stores different things, but the only change to watch is that shapefile field names are shortened to 10 characters; your geometry, coordinates and values are all preserved.