Convert Shapefile to KML
Turn a shapefile into a KML you can open in Google Earth. Drop the whole zip, or select the .shp, .dbf and .prj together. If your data is in UTM or a national grid, the .prj is read and the coordinates are reprojected to WGS 84, which is the step most conversions get wrong.
Drop your Shapefile here
or
Drop the whole .zip, or select the .shp, .dbf, .prj and .cpg together. A .shp on its own has no attributes and no coordinate system.
Your file is converted inside this tab and never uploaded. No size limit, no sign-up.
What happens to your data
Shapefile and KML store different things, so some parts of your file translate exactly and others cannot. Here is the whole picture before you convert, rather than after.
Coordinate systemChanged
KML only accepts WGS 84 longitude and latitude. Your .prj is read and the coordinates are converted, so a UTM or state plane layer lands in the right place.
Attribute tableKept
Every .dbf column becomes an ExtendedData field, so the full table shows in the Google Earth balloon and converts back later without loss.
Placemark namesKept
A column called name, title or similar becomes the placemark label you see on the map, and the rest stay as data.
Non-English textKept
The .cpg file is read to work out the attribute encoding, so Hindi, Thai or accented names come through as written instead of as question marks.
ElevationKept
Z values from PointZ, PolyLineZ and PolygonZ shapes are written into the KML coordinates. Google Earth draws them on the ground unless you set an altitude mode.
GeometryKept
Points, lines, polygons and their holes all carry across. KML can hold all three in a single file, so three shapefiles can become one KML.
StylingNot carried over
Shapefiles store no colours to begin with (a .qml or .lyr sidecar holds those), so the KML gets Google Earth's default styling.
How to convert Shapefile to KML
- 1
Add your shapefile
Drag the whole .zip onto the box above, or select the .shp, .dbf, .prj and .cpg files together. A .shp on its own has no attributes and no coordinate system.
- 2
Check what was read
The result tells you how many features were found and which coordinate system the .prj declared, so you can catch a missing or wrong .prj before you use the file.
- 3
Download the KML
You get one .kml file. Choose KMZ instead if you want it zipped for email.
- 4
Open it in Google Earth
Double-click the file, or drag it into Google Earth Pro or Google Earth on the web.
Bring the .prj, or your data will land in the wrong place
This is the single biggest cause of failed shapefile conversions. Shapefiles are often stored in a projected coordinate system (UTM zone 43N, a state plane zone, a national grid), where coordinates are metres or feet from an origin, so a point reads something like 681234, 1434567 rather than 77.59, 12.97.
KML has no choice of coordinate system: it is always WGS 84 longitude and latitude. A converter that ignores the .prj will read 681234 as a longitude, and your site in Bengaluru will be placed somewhere off the coast of Antarctica, or simply fail to draw.
When you include the .prj, those coordinates are properly reprojected and the layer lands exactly where it belongs. If you drop a .shp without one, you are warned rather than quietly given a broken file.
Dropping the zip is easier than picking files
A shapefile is a set: .shp for geometry, .dbf for attributes, .shx for the index, .prj for the coordinate system and .cpg for text encoding. They have to be read together.
If your data came as a zip, just drop the zip; it is unpacked here and every layer inside is read. If you have loose files, select them all at once in the file picker rather than one at a time.
Your attribute table becomes the Google Earth balloon
Each row of the .dbf becomes ExtendedData on its placemark. Click a feature in Google Earth and the full attribute table appears in the popup, field by field.
This also means the conversion is reversible. Convert that KML back to a shapefile later and the columns come back, rather than arriving as a single blob of description text, which is what happens when a converter writes the attributes into an HTML description instead.
Nothing is uploaded
Shapefiles get large, and survey data is often confidential. Both are reasons this converter runs entirely in your browser: the files are read locally, converted in memory and handed back as a download.
There is no server to upload to, so there is no size limit, no queue and no copy of your data anywhere but your own machine.
Shapefile and KML, briefly
ShapefileEsri Shapefile
The format every GIS reads. Not one file but a set: .shp for geometry, .dbf for the attribute table, .shx for the index and .prj for the coordinate system, which travel together in a zip.
KMLKeyhole Markup Language
The XML format Google Earth uses. One readable text file that holds points, lines and polygons together with their names, descriptions and colours.
Questions people ask
Do I need the .prj file to convert a shapefile to KML?
You need it unless your shapefile is already in WGS 84 longitude and latitude. The .prj records which coordinate system the coordinates are in, and KML only accepts WGS 84. Without it, projected coordinates such as UTM metres are read as degrees and the data is placed in completely the wrong part of the world. The converter warns you when no .prj is present rather than silently producing a broken file.
Can I just upload the .shp file on its own?
You can, but you will lose the attribute table and the coordinate system. The .shp holds only geometry. Include the .dbf for attributes and the .prj for the coordinate system, or simply drop the original zip containing all of them.
Is my shapefile uploaded anywhere?
No. The conversion runs entirely inside your browser tab, so your files never leave your computer. This matters for survey and cadastral data under confidentiality terms, and it also means there is no file size limit, since nothing has to travel over a network.
My shapefile is in UTM. Will it still work?
Yes, as long as you include the .prj file. UTM, state plane, national grids and most other projected systems are read from the .prj and converted to WGS 84 longitude and latitude, which is what KML requires. The result opens in Google Earth in exactly the right place.
Will my attribute table show in Google Earth?
Yes. Each .dbf column becomes an ExtendedData field on its placemark, so clicking a feature in Google Earth shows the complete attribute table in the balloon. Storing them this way also means the data converts cleanly back to a shapefile later.
Can I convert several shapefiles into one KML?
If they are in one zip, yes. KML can hold points, lines and polygons together in a single file, which a shapefile cannot, so multiple layers in one zip are merged into one KML. Separate zips need to be converted separately.
What is the difference between KML and KMZ here?
A KMZ is just a zipped KML. Choose KML for a readable text file you can edit, and KMZ when you want a smaller file to email or share. You can convert between the two afterwards without losing anything.
Why does my non-English text look wrong in other converters?
Because they ignore the .cpg file. The .dbf format predates Unicode, so the encoding is declared in a separate .cpg file alongside it. This converter reads that file to decode your attributes correctly, which is why Hindi, Arabic, Thai and accented Latin text come through intact.
Other conversions
Need a combination that is not listed? The universal converter handles every format this tool reads and writes.