How to convert CSV to KML or KMZ
- Drop the CSV; coordinate columns are detected from their headers, and the dropdowns let you correct a wrong guess.
- Pick the output format: KML when the file will be edited, KMZ when it should travel as one small attachment.
- Convert and download; each row is now a placemark you can open in Google Earth.
What changes when you convert CSV to KML or KMZ
| What | CSV → KML | |
|---|---|---|
| Geometry | Kept | Each row with coordinates becomes a point feature. If the table has a WKT geometry column, its lines and polygons are rebuilt as real shapes. |
| Attributes | Kept | Every column and full field name moves from CSV into KML untouched. |
| Styling & labels | Changes | KML supports styling; features are written with clean default styling and a name label you can restyle in Google Earth. |
| Coordinate system | Changes | CSV carries no coordinate system, so values are read as WGS84 longitude/latitude (EPSG:4326), which KML requires. Set a source CRS if your data is in meters. |
| Elevation (Z) | Not stored | CSV has no 3D geometry. An elevation column, if the table has one, rides along as an ordinary attribute rather than as Z height. |
| File structure | Kept | A single, self-contained .kml file you can move around on its own. |
| KMZ instead of KML | Kept | Identical content zipped into one .kmz: the same placemarks, attributes and coordinates, usually several times smaller, and a single attachment to email. |
What your spreadsheet needs first
The sheet needs two columns the converter can read as a position: a latitude and a longitude, in decimal degrees. Every other column, the site name, the date, an ID number, a reading, rides along and shows up in the placemark balloon when someone clicks the point in Google Earth. There is no template to download and no fixed column order.
The columns that matter
- Latitude between -90 and 90, negative in the southern hemisphere. Headers such as
lat,latitudeoryare recognized without any setup. - Longitude between -180 and 180, negative west of Greenwich. Headers such as
lon,lng,longitudeorxare recognized the same way. - A name column if you want readable labels. Without one, Google Earth shows a bare pin for each row.
Write the coordinates as decimal degrees, 33.6844 and 73.0479, with a decimal point rather than a comma. A value such as 33°41'04"N is text to the converter; run it through the coordinate converter first. If the automatic column guess is wrong, the dropdowns above the Convert button let you point at the right headers before anything is written.
Why convert CSV to KML or KMZ?
People keep location data in spreadsheets because a CSV of addresses, sensor readings or survey points is easy to edit in Excel or Google Sheets, but a spreadsheet cannot plot those rows on imagery. KML is the language Google Earth and Google Maps speak, and KMZ is the same document zipped into one small file, so converting turns flat rows into placemarks draped over satellite imagery. Field teams export a CSV of sampling sites and open it in Google Earth the same afternoon.
Coordinate system handling
A spreadsheet has no coordinate system of its own, so the converter reads the latitude and longitude columns as WGS84 decimal degrees unless you say otherwise. If the sheet holds eastings and northings in meters or feet, from a UTM zone, a state plane zone or a national grid, pick that coordinate system before converting and the points are reprojected on the way in; left as degrees they would land near Null Island or thousands of kilometers off (how to find the EPSG code).
KML and KMZ are fixed to WGS84 longitude and latitude by the Google Earth specification, so the output is always written in that system. The only decision is making sure the input values are understood correctly.
What to check when converting CSV to KML or KMZ
A row only becomes a placemark when the converter can read a position from it: latitude between -90 and 90 in a column headed lat, latitude or y, and longitude between -180 and 180 headed lon, lng, longitude or x. Write the values as decimal degrees with a decimal point, not a comma; a value such as 33°41'04"N is text to the converter, so run it through the coordinate converter first. There is no template and no fixed column order, and a name column gives readable labels instead of bare pins.
Troubleshooting CSV to KML or KMZ
- Points land in the wrong place, or in the sea. The latitude and longitude columns are swapped, or the values are projected meters read as degrees. Check the column pickers, confirm latitude sits between -90 and 90, and if the sheet holds UTM or state plane values set that coordinate system before converting.
- Nothing appears after converting. The rows have no usable coordinates, or the numbers are stored as text with a thousands separator or a decimal comma. Make the coordinate columns plain numbers with a decimal point and check that at least one row has both values.
- The balloon shows a wall of text. Every non-coordinate column is written into the description, so a sheet with forty columns produces a long balloon. Delete the columns you do not need before converting, or keep a short name column so the label at least stays readable.
- The KMZ arrives as a .zip or will not open from a mail app. Some mail and chat apps rename a .kmz to .zip or block it outright. Change the extension back to .kmz, share the file through a link, or send the KML version instead.
About the formats
A CSV holds your places as plain rows, usually exported from Excel, Google Sheets or a database with a latitude column and a longitude column. KML is the plain-text format Google Earth reads, where each row becomes a placemark with a name and a description balloon, and KMZ is that KML compressed into one archive that Google Earth opens with a double-click. The conversion reads the coordinate columns, builds a placemark per row, writes the remaining columns into the balloon, and for KMZ zips the result so a long point list travels as one small file.
Frequently asked questions
Why are my points in the sea off West Africa?
Coordinates of 0,0 land at Null Island. The coordinate columns were empty, unrecognized or stored as text, so pick the right columns in the dropdowns, make sure the cells hold numbers, and convert again.
Where did the missing half of my rows go?
Rows with a blank or non-numeric coordinate are skipped rather than placed at zero. Sort the sheet by the coordinate columns to find the blanks and stray text before converting a second time.
My sheet has start and end coordinates per row, so will I get lines?
No. Each row makes one point placemark, even when it carries two coordinate pairs. To draw paths, put the ordered points in a WKT LINESTRING column, which is read as geometry.
Should I choose KML or KMZ for the download?
Choose KML when someone may open the file in a text editor, load it into QGIS or a web tool, or edit the styling by hand. Choose KMZ when the file goes out by email: the same content zipped into one attachment, usually several times smaller, which Google Earth opens directly.
Which column becomes the placemark name, and where do the other columns go?
A column named name or title is the natural label, and the remaining non-coordinate columns are written into the description balloon, so clicking a point shows your other fields. Keep headers short and clear, because they become the field labels.
Related converters
From the same file you can also make a shapefile for QGIS or ArcGIS, a GeoJSON layer for a web map, or GPX waypoints for a handheld. The CSV and Excel to Google Earth guide explains the coordinate columns, and the Spreadsheet to map tool previews them live.
Ready to convert?
Drop a file and download the result in seconds. Nothing is uploaded, nothing is stored.