Turn a spreadsheet of coordinates into a map. Drop a CSV or Excel file with latitude & longitude columns and export it as KML, KMZ, Shapefile, GeoJSON, GPX, DXF, GeoPackage, GML or WKT, free, and entirely in your browser. Nothing is uploaded.
Drop a CSV or Excel file here, or click to browse
.csv, .xlsx, .ods, .tsv, with latitude & longitude (or X/Y) columns
A WKT/geometry column (points, lines or polygons) is used when set, it takes priority over Lon/Lat.
Inputs: CSV, TSV, Excel (.xlsx), OpenDocument (.ods), any spreadsheet with coordinate columns, or a column of WKT geometry. (The old binary .xls format isn't supported in the browser, re-save it as .xlsx or CSV first.)
Outputs: GeoJSON, KML, KMZ, Shapefile, GeoPackage, GML, GPX, DXF, Excel (XLSX), CSV, WKT/CSV.
Each row becomes a point from its coordinate columns. Headings like lat/lon, latitude/longitude and y/x are recognised automatically. If your file uses different names, open Advanced and type them in. Coordinates are assumed to be WGS84 longitude/latitude (EPSG:4326); if yours are in another system (for example Web Mercator metres) set the CRS in Advanced. Rows without valid coordinates are skipped.
| Format | What it is | Geometry | Styling | CRS | Opens in |
|---|---|---|---|---|---|
| CSV .csv | CSV is the universal spreadsheet exchange format: rows of plain-text values that open in… | Points (columns) + WKT | No | None (assign) | Excel, Google Sheets, QGIS |
| Excel (XLSX) .xlsx | XLSX is the modern Microsoft Excel workbook format | Points (columns) + WKT | No | None (assign) | Microsoft Excel, LibreOffice, Google Sheets |
| KML .kml | KML is the XML-based format Google Earth and Google Maps use to describe points, lines, … | Points, lines, polygons | Yes | WGS84 only | Google Earth, Google Maps, QGIS |
| GeoJSON .geojson | GeoJSON is an open, JSON-based standard (RFC 7946) for encoding vector features and thei… | Points, lines, polygons | No | WGS84 only | Leaflet, Mapbox GL, OpenLayers |
| Shapefile .shp | The Shapefile is the long-standing Esri vector format and remains the lingua franca of d… | One type per file | No | Any (stored) | ArcGIS, QGIS, GeoServer |
| GPX .gpx | GPX is the open XML standard that GPS devices and fitness apps use to record waypoints, … | Points & lines | No | WGS84 only | Garmin, Strava, Komoot |
A spreadsheet only becomes a map when each row carries a location. In practice that means two number columns: one for latitude (how far north or south, roughly -90 to 90) and one for longitude (how far east or west, roughly -180 to 180). The tool auto-detects the usual headings, so lat/lon, latitude/longitude, y/x, and even Lat/Long are recognised without any setup. If your columns are named something unusual (say GPS_N and GPS_E), open the column pickers and choose them by hand.
The single most common problem is latitude and longitude ending up in the wrong slots. The giveaway: your points sit in the ocean off West Africa, land in the wrong country, or scatter in a way that makes no sense. That happens because latitude and longitude look interchangeable but are not, and many exports list longitude first. A quick sanity check for the United States and western Europe (the UK, Ireland, Portugal, Spain and most of France) longitude is negative, while most of the rest of Europe, Africa, Asia and Australia have positive longitude. If the map looks wrong, try swapping the two columns in the pickers.
Two coordinate columns give you points, one per row. If you need lines or polygons instead (a delivery route, a property boundary), put the geometry in a single column as WKT text, for example LINESTRING(-1.5 53.8, -1.4 53.9) or POLYGON((...)). Point the tool at that WKT column and it takes priority over the lat/long pair.
Coordinates need to be plain decimal numbers such as 40.7128 and -74.0060. Values written as degrees-minutes-seconds like 40°42'46"N will not plot, convert them to decimal degrees first. By default your numbers are treated as WGS84 (ordinary GPS lat/long); if a colleague tells you the data is in metres or another system, set that coordinate system in Advanced.
This runs entirely in your browser and does not look up street addresses. A column of addresses or place names alone will not map, each row must already have latitude and longitude numbers. To get coordinates from addresses, geocode them first (many spreadsheet add-ons and free tools do this) and bring the results back as two columns.
Pick the output that matches where your data is headed. To drop your rows into Google Earth, convert CSV to KML or send an Excel sheet straight through with Excel to KML. When a GIS colleague needs a shapefile, convert CSV to a shapefile; for a web developer, convert CSV to GeoJSON. Loading a GPS device? Use CSV to GPX. And for a large, tidy single-file database, convert CSV to GeoPackage.
Two columns of coordinates, usually latitude and longitude (also called Y and X). They can be named lat/lon, latitude/longitude, y/x and similar; common headings are detected automatically. Alternatively, a single column of WKT geometry works too.
CSV, TSV, Excel (.xlsx) and OpenDocument (.ods) spreadsheets, read locally in your browser. The older binary .xls format isn't supported, open it in Excel or Google Sheets and save as .xlsx or CSV first.
Almost always a coordinate mix-up: latitude and longitude swapped, or the data is in a projected system (metres) rather than WGS84 degrees. Open Advanced to name the exact columns and set the coordinate system (e.g. EPSG:3857).
No. A GDAL engine compiled to WebAssembly runs in your browser, so your spreadsheet never leaves your device.
Yes, pick CSV or Excel (XLSX) as the output to go the other way, or WKT to keep geometry as text in a spreadsheet cell.