Skip to content

Convert KML to Shapefile

From Google Earth to a complete zipped shapefile for ArcGIS or QGIS. Free, and the file never leaves your browser.

or drop KML here

How the conversion works

  1. 1

    Choose a .kml file, drop it here, or paste the KML text. A KMZ has to be unzipped first.

  2. 2

    Every Placemark becomes a record. Name, description, folder, timestamp and each ExtendedData field become DBF fields, names cut to the format's 10 characters. Points, lines and polygons go to separate shapefiles, because a shapefile holds one class.

  3. 3

    Download the .zip and add it to QGIS or ArcGIS Pro as a layer.

What the zip contains

One shapefile per geometry class present in the KML, each with its five files.

FileWhat it holds
<name>.shp, .shxThe geometries and their index. A KML with only points gives one shapefile; a mixed one gives <name>_points, <name>_lines and <name>_polygons.
.dbfFields name, descriptio, folder, timestamp and one per ExtendedData field, as text. Names beyond 10 characters are truncated and made unique.
.prjGCS_WGS_1984, which is what KML is.
.cpgUTF-8.

What it does not do

  • KMZ is a zip. Unzip it first and drop the doc.kml.
  • Styles are not carried over: a shapefile has no styling.
  • A Placemark mixing points and lines in one MultiGeometry has no shapefile type and is skipped, with a notice.
  • Altitudes are dropped; the output is 2D.
  • ExtendedData values are written as text fields, since KML does not say which are numbers.

Questions people ask

Does my KML get uploaded?
No. The shapefile is written in your browser tab and zipped there. Nothing is sent.
Why did I get three shapefiles?
Because the KML mixed points, lines and polygons. A shapefile stores one geometry class, so each got its own file inside the zip.
Where did my description go?
Into the DBF field descriptio, the first 10 characters of the word, cut to 254 bytes. DBF limits both.
Can I get a projected shapefile, in UTM for example?
Not from this page: the .prj says WGS 84 because KML is WGS 84. Open the zip in QGIS and Export, Save Features As with the CRS you need.
Does it read Google My Maps exports?
Yes, once unzipped from KMZ. Each My Maps layer is a KML Folder, kept in the folder field, so you can split the shapefile by layer in QGIS.

Next, open it in QGIS

Every one of these files loads in QGIS in one dialog. Once the points or polygons sit on your imagery, the two TerraLab plugins take over: AI Segmentation detects the objects the file is missing, AI Edit renders a project on the map.