Shapefile to GeoJSON Converter

Upload a .zip containing the .shp, .dbf, and .shx files of an Esri Shapefile (or just a bare .shp file) to convert it to GeoJSON. Parsing happens entirely client-side with the shpjs library, so your dataset never leaves your device, which matters for GIS exports that are often too large or sensitive to send to a random online converter.

PrivateFreeWorks offline

Reviewed by Vincenzo Manto, Founder & Lead Developer · Last updated September 27, 2026

How it works

  1. 1

    Zip together your .shp, .dbf, and .shx files (most shapefile exports already come as a .zip), then drop it here.

  2. 2

    The tool reads the zip and parses the shapefile's geometry and attribute table using shpjs.

  3. 3

    A GeoJSON FeatureCollection is generated, with a count of how many features were found.

  4. 4

    Copy the GeoJSON or download it as a .geojson file.

Why convert Shapefile to GeoJSON?

The Esri Shapefile format is still the most common export from GIS software like ArcGIS and QGIS, government open-data portals, and survey tools, but it's a multi-file binary format that most web mapping libraries can't read directly. GeoJSON, by contrast, is understood natively by Leaflet, Mapbox GL, OpenLayers, and virtually every modern spatial API, making conversion a routine first step before publishing shapefile data on the web.

Accurate parsing without a server round-trip

This tool uses shpjs, a well-established JavaScript library for reading .shp geometry and .dbf attribute tables, running the same parsing logic entirely inside your browser tab instead of uploading your dataset to a remote API.

Built for real-world GIS datasets

Government parcel data, environmental survey boundaries, and infrastructure layers are frequently distributed as shapefiles and can also be sensitive or large. Because nothing leaves your device during conversion, this tool is safe to use even on datasets you wouldn't want to hand to an unknown third-party service.

Frequently asked questions

Does this upload my shapefile to a server?

No. The zip is read and parsed entirely in your browser with the shpjs library, and nothing is ever uploaded anywhere, which matters for large or proprietary GIS datasets.

What exactly should be inside the .zip?

At minimum, a matching set of .shp, .dbf, and .shx files with the same base filename (e.g. parcels.shp, parcels.dbf, parcels.shx). A .prj file for coordinate system info is also read if present.

Can I upload just a .shp file without zipping it?

Yes, a bare .shp file is accepted, but without the accompanying .dbf you'll lose the attribute data (feature properties), and only the geometry will convert.

What happens if my zip contains multiple shapefile layers?

If the zip has more than one .shp layer, this tool merges all of their features into a single combined GeoJSON FeatureCollection.

What if the conversion fails?

You'll see a clear error message - most commonly this happens when the zip doesn't contain a valid .shp/.dbf/.shx set, or when the file is corrupted.

Related tools