Shapefile to KML Converter
Convert ESRI shapefiles to KML for Google Earth and Google My Maps. Reprojected to WGS84 automatically, attributes included, nothing uploaded.
Select a .zip, or pick the .shp, .dbf, .shx and .prj files together. Up to 20.0 MB.
Your file never leaves your device. Nothing is stored on any server.
Shapefiles are the working format of QGIS and ArcGIS, but clients, field teams and management usually want to see the data in Google Earth. This converter takes a zipped shapefile (or the .shp, .dbf, .shx and .prj files selected together), reads the projection from the .prj, reprojects to the WGS84 coordinates KML requires and writes one placemark per feature with all attributes preserved.
How to convert SHP to KML
Select the shapefile: either a .zip that contains the .shp, .dbf, .shx and .prj files, or pick those files together in the file dialog. The preview shows the features on a map with their attribute table.
Choose which attribute should become the placemark name shown in Google Earth, for example a plot ID, road name or village name.
Click Convert and download the .kml. Open it in Google Earth, import it into Google My Maps or share it by email.
What is a Shapefile?
The ESRI Shapefile is the most widely supported vector format in GIS. A "shapefile" is really a set of files with the same base name: .shp holds the geometry, .shx the index, .dbf the attribute table, .prj the coordinate system and .cpg the text encoding. Each shapefile stores a single geometry type, which is why a mixed KML becomes several shapefiles.
What is a KML file?
KML (Keyhole Markup Language) is an XML format for geographic data made popular by Google Earth and Google Maps. It stores points, lines and polygons in WGS84 latitude and longitude, groups them in folders, and can carry attributes in ExtendedData elements or in HTML descriptions.
Why use this converter
Reads the .prj and reprojects
UTM, State Plane, national grids and other projected shapefiles are transformed to WGS84 latitude/longitude, so the placemarks land in the right place in Google Earth.
Attributes are preserved
Attributes are preserved: placemark names, ExtendedData fields and even the key/value tables that Google Earth hides inside HTML descriptions are written as columns.
Choose the placemark name
Pick which field becomes the placemark name. Every other field is written to ExtendedData, so it shows in the Google Earth balloon and survives a later conversion back to shapefile.
Nothing is uploaded
Everything runs in your browser. Your files are never uploaded, so confidential survey, cadastral or forestry data stays on your computer.
Frequently asked questions
Are the shapefile attributes kept in the KML?
Yes. Every column of the .dbf table is written as an ExtendedData Data element on the placemark, so it appears in the Google Earth information balloon and can be read back by GIS software. Text is decoded using the .cpg file when present, and as UTF-8 otherwise.
My shapefile is in UTM. Will the KML be positioned correctly?
Yes, as long as the .prj file is included. The converter reads the projection definition and transforms every coordinate to WGS84, which is the only coordinate system KML supports. If no .prj is present the coordinates are assumed to be WGS84 already and a warning is shown.
Can I convert several shapefiles or layers into one KML?
Select all the parts of one shapefile at a time, or a ZIP containing them. If the ZIP holds more than one shapefile, each becomes its own folder in the KML, so points, lines and polygons can be combined into a single document.
Is the SHP to KML converter free, and where does my data go?
It is free and runs entirely in your browser. The shapefile is not uploaded to any server, which matters when the data is a cadastral map, a concession boundary or any other confidential dataset.
Which programs open the KML?
Google Earth Pro, Google Earth on the web and mobile, Google My Maps, QGIS, ArcGIS and most GPS apps. If you need a single compressed file with icons, use the Shapefile to KMZ converter instead.
How is the placemark name chosen?
A field called "name" is used when it exists; otherwise the first field is used. You can change it in the dropdown before converting. Styling is kept simple and neutral so that Google Earth renders the file quickly.