KML to Shapefile Converter
Converts a KML file to Shapefiles with GDAL's ogr2ogr, one Shapefile per KML folder.
Upload a .kml file. Each KML folder becomes its own Shapefile; all of them come in one ZIP with .prj files for WGS84. Folders with mixed geometries are split by geometry type, and the report lists every field name GDAL had to shorten.
Drag a file here to convert, or select file
Accepted: .kml · max. 50 MB
What the converter does
- Each KML folder becomes a Shapefile named after the folder; all Shapefiles are packed into one ZIP with .prj (WGS84).
- A folder with mixed geometries is split into <folder>_points, <folder>_lines and so on; no feature is dropped.
- Heights are kept (PointZ, LineStringZ).
- Field names are cut to 10 characters: description becomes descriptio, altitudeMode becomes altitudeMo, barrierefreiheit_status becomes barrierefr (warnings in the report).
- The KML time fields timestamp, begin and end become date fields without time of day (GDAL warning).
- The report below the upload shows layers and features read and written, skipped layers with the reason, GDAL's warnings and the exact commands.
GDAL command the worker runs
Testkarte, Haltestellen and Wege are the layers of the test file; the worker lists the layers of your KML. Folders with mixed geometries get extra commands with -dialect OGRSQL -sql ... -nln <folder>_points and so on.
Tested with
| Test file | Result |
|---|---|
| KML with 1 placemark in the document and 2 folders (2 points with ExtendedData, 1 line with heights) | ZIP with Testkarte.shp (1), Haltestellen.shp (2), Wege.shp (1); 4 of 4 features; PointZ/LineStringZ; EPSG:4326 |
| KML folder with 1 point and 1 line | Alles_points.shp (1) and Alles_lines.shp (1); report: mixed geometry types, split |
Tested on 24 Sep 2026 with the worker code of this site and GDAL 3.10.3 (conda-forge build on Windows). The worker image runs the Debian build of the same GDAL version; the live worker was not part of these tests.
Limits
- Upload limit: 50 MB per file.
- Only .kml is accepted, not .kmz; unpack a KMZ first.
- Shapefile limits apply: field names up to 10 characters, text up to 254 characters, no date-time type.
- Each GDAL step may run for up to 240 seconds; a longer run is stopped with an error message.
Frequently Asked Questions
Why are the field names shortened?
The .dbf file of a Shapefile allows at most 10 characters per field name, so GDAL shortens KML field names like description or altitudeMode. The report lists each renaming.
Are the heights kept?
Yes. In the test the points came out as PointZ and the line with heights 45, 46 and 44 m as LineStringZ.
What happens to my file?
Your browser uploads it directly to the GDAL worker on Fly.io (region Frankfurt). The worker converts it in a temporary folder and deletes the folder after sending the result, or immediately if the conversion fails. Files are not stored permanently.