GIS file converter

Convert any map file to the format you need: KML, KMZ, shapefile, GPX, GeoJSON or CSV. Pick the output, drop the file, check it on the map. Free, and no account needed.

Drop a map file here

Download the sample

Your file stays on your computer: nothing is uploaded.

In short

Convert KML, shapefile, GPX, GeoJSON and CSV online

The Spatibase GIS file converter converts KML, KMZ, ESRI shapefile, GPX, GeoJSON, CSV and Excel files into any of KML, KMZ, shapefile, GPX, GeoJSON and CSV, in your web browser. It’s free with no account, it opens files up to 50 MB, and your file is never uploaded.

What it does with your file:

  • Finds the format itself. It reads the first bytes, so a .zip with a shapefile, a KMZ renamed to .zip or GeoJSON saved as .json all open. Pick the source format only to narrow the file picker.
  • Shows it before you download. Every place, line and area goes on a map with a list, so you can check the file before you send it on.
  • Says what the target can’t hold. Notes under the map list shortened shapefile fields, dropped styles, split layers and anything left out.
  • Standard coordinates. Everything comes out in WGS 84 longitude and latitude; a shapefile in another projection is reprojected from its .prj.
How to

How to convert a GIS file

  1. Pick the format you need under Convert to, for example Shapefile for a GIS team or KML for Google Earth. Leave From on Detect automatically.
  2. Drop your file on the box, or press Choose a file. For a shapefile, drop the .zip, or pick the .shp, .dbf, .prj and .cpg together.
  3. Look over the map and the notes under it: they say what the new format keeps and what it leaves out.
  4. Press the download button for your format. Changed your mind? Pick another format under Convert to: the open file converts again, no need to drop it twice.
Every conversion

Which conversions it does

Rows are the file you have, columns the format you need. Pairs with a page of their own link to it, with what the conversion keeps and how to open the result.

Formats

Which format to convert to

Pick the format the next app or person expects. Each one keeps something different:

FormatOpens inKeepsLeaves out
KMLGoogle Earth, Google My Maps, most GIS appsNames, descriptions, folders, fields as ExtendedData, styles from a KML sourceNothing a map viewer needs; large files get slow in Google Earth
KMZGoogle Earth, Google My MapsThe same as KML, zipped (often 5 to 10 times smaller)Photos and icons from the original KMZ are not carried over
ShapefileQGIS, ArcGIS, permit and planning portalsShapes and attributes, in WGS 84 with a .prj and UTF-8 .cpgStyles; field names cut to 10 characters; text over 254 bytes; one kind of shape per layer, so a mix becomes up to three layers
GPXGPS devices, Garmin, Strava, Komoot, OsmAndPoints as waypoints, lines as tracks, names, descriptions, elevationAreas (written as their outline tracks) and most custom fields
GeoJSONWeb maps (MapLibre, Leaflet, Mapbox), code, SpatibaseEverything: all fields with their types, every kind of shapeStyles; nothing else
CSVExcel, Google Sheets, databasesOne row per feature: every field, latitude and longitude for points, the shape as WKT text for lines and areasNothing, but lines and areas are text, so a spreadsheet can’t draw them
Do it in code

Convert any GIS file with ogr2ogr

GDAL’s ogr2ogr, which comes with QGIS, converts between these formats and many more on the command line. The output format goes after -f, the new file first, the source last:

ogr2ogr -f GeoJSON places.geojson places.kml          # KML → GeoJSON
ogr2ogr -f KML places.kml places.shp                   # shapefile → KML
ogr2ogr -f GPX places.gpx places.geojson -dsco GPX_USE_EXTENSIONS=YES
ogr2ogr -f "ESRI Shapefile" out/ places.geojson -lco ENCODING=UTF-8
ogr2ogr -f CSV places.csv places.gpx tracks -lco GEOMETRY=AS_WKT
ogr2ogr -f LIBKML places.kmz places.geojson            # KMZ needs the LIBKML driver

Run `ogr2ogr --formats` to see which formats your GDAL build reads and writes; LIBKML (for KMZ) is in most builds that come with QGIS.

GPX and shapefiles have layers. A GPX has waypoints, routes and tracks; name the one you want after the source. A shapefile takes one kind of shape, so add -where "OGR_GEOMETRY='POINT'" per kind for mixed data.

FAQ

Questions about converting GIS files

What is a GIS file converter?

A tool that rewrites map data from one file format into another, such as KML to shapefile or GPX to GeoJSON. The places, lines and areas stay the same; what changes is how they are stored and which apps can open them. This one runs in your browser and handles KML, KMZ, shapefile, GPX, GeoJSON and CSV.

Which map file formats can I convert here?

It reads KML, KMZ, ESRI shapefiles (zipped or as loose .shp, .dbf, .prj and .cpg files), GPX, GeoJSON, CSV, TSV and Excel .xlsx. It writes KML, KMZ, shapefile (.zip), GPX, GeoJSON and CSV, in any direction, 30 pairs in all.

How do I know which format my file is?

You don’t need to: leave From on Detect automatically and drop the file. The converter reads its contents and says what it found in the notes, even when the extension is wrong, such as a KMZ saved as .zip.

Will I lose anything when I convert between formats?

Sometimes, and the notes under the map say what. Shapefiles cut field names to 10 characters and hold one kind of shape per layer, GPX has no areas, KML and GeoJSON drop each other’s styling, and CSV stores lines and areas as WKT text. The shapes and their coordinates are always kept.

Can I convert several files at once?

One file at a time, except a shapefile, whose .shp, .dbf, .prj and .cpg parts are picked together. To merge files, convert each to GeoJSON and import them into one Spatibase project, or use ogr2ogr with -append.

Is it safe to convert confidential map data here?

Yes. The file is read and converted by your own browser and never sent to Spatibase or anyone else; you can even disconnect after the page loads. Only the background map tiles come from the internet.

Moving the places into Spatibase? Read how to import your data.

Talk to us

Not sure it’s a fit? Let’s find out

Tell us about your use case and what you need, from data model to security and deployment. In 30 minutes we’ll look at it together and tell you honestly if we can help.

Or write to hello@spatibase.com.