# KMZ to Shapefile converter

> Convert a KMZ from Google Earth or Google My Maps straight into an ESRI shapefile (SHP) for ArcGIS or QGIS, without unzipping it first. Free, and no account needed.

Open the tool: https://spatibase.com/tools/kmz-to-shapefile/

**KMZ in, SHP out, in one step.** The Spatibase KMZ to Shapefile converter opens the KMZ archive in your web browser, reads the KML inside it and writes an ESRI shapefile. In short:

- **No unzip tool needed.** Drop the .kmz as it is; the converter finds the `doc.kml` inside.
- **You download one .zip** with a layer per kind of shape (points, lines, areas), each in WGS 84 (EPSG:4326) with UTF-8 text in a `.cpg`.
- **Attributes:** placemark names, descriptions as plain text, folder paths and ExtendedData values become columns, names cut to 10 characters. Icons, colours and photos packed in the KMZ stay behind.
- **Stays on your computer.** KMZ files up to 50 MB, no upload, no account.

## What it does
- Convert KMZ files to an ESRI shapefile (.zip) without unzipping them first
- Reads KMZ exports from Google My Maps, Google Earth Pro and ArcGIS
- Writes one layer per kind of shape: points, lines and areas
- Turns names, descriptions, folders and ExtendedData into attribute columns
- Lists every column name that had to be shortened
- Includes a WGS 84 .prj and a UTF-8 .cpg with every layer
- Runs in the browser: the KMZ is not uploaded

## How to convert KMZ to a shapefile
1. Get the KMZ. Google My Maps saves one when you choose Export to KML/KMZ in the three-dot menu and leave the KML box unticked; Google Earth Pro does with Save Place As, type Kmz.
2. Drop the .kmz on the box above, or press Choose a file. No KMZ at hand? Open the sample: a Barcelona map with five places, a walk and three areas.
3. Look at the map, then read the notes below it: they name the layers you will get and every column that was renamed.
4. Press Download shapefile (.zip). Inside are sets of `.shp`, `.shx`, `.dbf`, `.prj` and `.cpg` files, such as `barcelona_points` and `barcelona_areas`.
5. Unzip the download. In ArcGIS Pro, choose Add Data and pick each `.shp`; in QGIS, drag the `.shp` files onto the map canvas.

## Formats and limits
- **Opens:** .kmz or .kml, up to 50 MB. Other map files (KML, KMZ, GPX, GeoJSON, shapefile, CSV) convert too.
- **Downloads:** Shapefile, GeoJSON, CSV of the same features.
- **Privacy:** the file is read in your browser and never uploaded.
- Try it with a sample: https://spatibase.com/tools/kmz-to-shapefile/?sample=1
- Download the sample file (the one Open a sample opens): https://spatibase.com/tools/samples/barcelona.kmz

## What a KMZ keeps and loses as a shapefile
| What | What happens |
|---|---|
| The KML inside the KMZ | Read for you: `doc.kml` at the top of the archive, or the first .kml when there is no doc.kml. |
| Pins, paths and polygons | Written as separate layers ending in `_points`, `_lines` and `_areas`, because each .shp holds a single shape type. |
| Placemark names | A `name` column. |
| Descriptions | A `descriptio` column with the text only; HTML tags, links and tables are flattened. |
| ExtendedData | One text column per field. Switch a column to a number type afterwards in your GIS if you need sums or ranges. |
| Folder structure | A `folder` column holding the path, for example `Site plan / Phase 1`. |
| Photos and custom icons packed in the KMZ | Left behind: a shapefile stores shapes and a table, not images or symbols. |
| Column names longer than 10 characters | Shortened and kept unique, with accents removed (`date_of_visit` → `date_of_vi`). The notes list each one. |
| Text over 254 bytes | Cut to fit the .dbf limit; the notes count the values that were cut. |
| Altitude, timestamps, overlays and network links | Not written. The layers are 2D longitude and latitude, and overlays and network links are counted in the notes. |

## KMZ and shapefile: two archives that hold different things
**A KMZ is a zipped KML.** Google Earth compresses one KML file, usually `doc.kml`, together with the pictures it shows. Rename a .kmz to .zip and any unzip app opens it.

**A zipped shapefile is a bundle too,** but of a different kind. Each layer is a group of files that share one name and only work together:

- **.shp and .shx:** the geometry and its index.
- **.dbf:** the attribute table, one row per shape.
- **.prj and .cpg:** the coordinate system and the text encoding.

**Why the pictures drop out.** The attribute table holds text, numbers and dates, nothing else. Keep the KMZ if the photos matter, or download GeoJSON here as well for longer names and longer text.

**Already unzipped your KMZ?** Drop the `doc.kml` instead; the result is the same. The KML to Shapefile converter covers plain .kml files in more detail.

## Convert KMZ to SHP with ogr2ogr, without unzipping
GDAL reads straight into a zip archive through its `/vsizip/` path prefix, so the KML inside a KMZ can go to ogr2ogr as it is. Write one shape type per run, each into its own folder:

```bash
# /vsizip/ opens the archive in place; doc.kml is the KML inside
ogr2ogr -f "ESRI Shapefile" points/ /vsizip/site.kmz/doc.kml -where "OGR_GEOMETRY='POINT'" -lco ENCODING=UTF-8
ogr2ogr -f "ESRI Shapefile" lines/ /vsizip/site.kmz/doc.kml -where "OGR_GEOMETRY='LINESTRING'" -lco ENCODING=UTF-8
ogr2ogr -f "ESRI Shapefile" areas/ /vsizip/site.kmz/doc.kml -where "OGR_GEOMETRY='POLYGON'" -lco ENCODING=UTF-8
```

Two things to check before running it:

- **The inner file name.** List the archive with `unzip -l site.kmz`; some tools call the KML something other than doc.kml.
- **Layer names follow KML folders.** GDAL turns each KML folder into its own layer, so a KMZ with several folders gives several shapefiles in each output folder.

## Frequently asked questions
### Do I have to unzip a KMZ before converting it to a shapefile?
Not here: drop the .kmz and the converter reads the KML inside it. Desktop tools differ: ArcGIS Pro’s KML To Layer accepts a KMZ directly, while some older QGIS and GDAL setups need the KMZ renamed to .zip and unzipped first.

### How do I get a shapefile out of Google My Maps?
My Maps can’t save a shapefile. Export the map as KMZ (three-dot menu → Export to KML/KMZ), then convert that KMZ here and you get a zipped shapefile with a layer per kind of shape.

### What happens to the photos and icons inside my KMZ?
They are left out. A shapefile has no place for images or symbols, so you get the shapes and their attributes. Style the layers again in ArcGIS or QGIS.

### Why does my KMZ turn into several shapefiles?
The KMZ has pins, paths and areas together, and a single .shp holds just one shape type. You get one layer each, for example site_points, site_lines and site_areas, all in the same zip.

### Which projection does the converted shapefile use?
WGS 84 longitude and latitude (EPSG:4326), the same as every KMZ, written in each layer’s .prj. Reproject it in your GIS if your project uses a local grid such as UTM or a state plane.

## Next step
Turn the file into a live map your team can edit: **Save to Spatibase (free)** on the page saves it to a free Spatibase project (https://app.spatibase.com/signup), your places on a map you can edit and a live GeoJSON address for your site. Or download the GeoJSON and import it by hand (https://spatibase.com/docs/content/import/).
