Excel to KML Converter
Convert an Excel spreadsheet with coordinate columns into KML for Google Earth. Runs entirely in your browser — nothing is uploaded.
Accepted: .xlsx, .xls, .csv. Up to 20.0 MB, converted on your device.
Your file never leaves your device. Nothing is stored on any server.
Site lists, customer addresses with coordinates and survey logs usually live in a spreadsheet, but to see them on a map you need KML. This excel to kml converter reads your workbook, lets you pick the worksheet and the longitude and latitude columns, and writes one placemark per row with every other column kept as an attribute. Older .xls workbooks work too, so xls to kml is just as easy, and everything happens in your browser without uploading the file.
How to convert Excel to KML
Drop the workbook and, if it has several sheets, pick the one to convert.
Map the longitude and latitude columns, plus an optional name and description column. Common column names are detected automatically.
Click Convert and download the KML, or switch the output to KMZ for a smaller file.
What is an Excel file?
An Excel .xlsx file is an Office Open XML workbook: a zipped package of one or more worksheets, each a grid of columns under a header row. Unlike plain text formats, cells keep their type, so numbers and dates stay numbers and dates. It opens in Microsoft Excel, Apple Numbers, Google Sheets and LibreOffice Calc. For geographic data the usual layout is one row per location, with longitude and latitude coordinate columns next to the attribute columns.
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.
What columns does my spreadsheet need?
One column with longitude and one column with latitude, under a header row. Common header names are recognised automatically, such as lon, lng, longitude or 经度 for longitude and lat, latitude or 纬度 for latitude. If your columns are called something else, choose them in the dropdowns of the mapping panel. All other columns are kept as placemark attributes.
Which coordinate format is supported?
Coordinates must be WGS84 decimal degrees, for example 116.397 for longitude and 39.909 for latitude, which is what GPS apps, Google Maps and most exports use. Degrees, minutes and seconds (DMS) or degrees and decimal minutes (DMM) need to be converted first.
The conversion is decimal degrees = degrees + minutes/60 + seconds/3600, with west longitudes and south latitudes written as negative numbers. For example 116°23'52"E becomes 116 + 23/60 + 52/3600 = 116.3978.
What if my columns are reversed or the coordinates are swapped?
The page checks the value ranges of the chosen columns. Latitude must lie between -90 and 90 and longitude between -180 and 180, so when the latitude values exceed ±90 while the longitude values fit within ±180, the columns are almost certainly swapped. A warning appears with a "Swap latitude and longitude" button that exchanges the two columns and reads the sheet again.
Multiple worksheets
Only the selected worksheet is converted. If your workbook holds several sheets with locations, pick another sheet in the mapping panel and convert again for each one; every conversion downloads its own KML file.
Why use this converter
Runs in your browser
Everything runs in your browser. Your files are never uploaded, so confidential survey, cadastral or forestry data stays on your computer.
Column mapping instead of fixed templates
There is no template to copy your data into. Use the spreadsheet as it is, pick which columns hold longitude, latitude, name and description, and every remaining column is written to the placemark as an attribute.
Opens directly in Google Earth
The output is standard KML (or KMZ) in WGS84 with the attributes in ExtendedData, so it opens straight away in Google Earth, Google My Maps, QGIS and most GPS apps.
Frequently asked questions
Does my spreadsheet need a header row?
Yes. The first row is read as the header: its values become the column names that are used for automatic detection and as attribute names in the KML. Without recognisable names, pick the longitude and latitude columns manually in the mapping panel.
Can I use my own column names?
Yes. Columns can have any names, in any language. If they are not detected automatically, choose the longitude, latitude, name and description columns in the mapping panel and click Apply columns.
Can I use degrees/minutes/seconds coordinates?
No, only decimal degrees are supported. Convert DMS values first with degrees + minutes/60 + seconds/3600, using negative numbers for west and south, for example 116°23'52"E becomes 116.3978.
How many rows can it handle?
The limit is the 20 MB file size, which is far more rows than most spreadsheets hold. The workbook is processed in your browser's memory, so very large sheets take a few seconds longer on slower devices.
Is the output KML or KMZ?
KML by default. Switch the output format to KMZ on this page to get a compressed file, or convert between the two later with the KMZ to KML converter.
Will my data be uploaded?
No. The spreadsheet is read and converted by JavaScript in your browser, so it never leaves your device and no copy is stored on any server.
Can I convert KML or KMZ back to Excel?
Yes. Use the KMZ to Excel converter, which writes one row per placemark with the coordinates and all attributes as columns.