All tools
Home › Spreadsheet to spatial data

XLSX & CSV to spatial data

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

No uploadNo trackingOpen standards (GDAL/OGR)Works offline once loaded

How it works

  1. Drop your CSV or Excel file above. It's read locally by a GDAL engine compiled to WebAssembly.
  2. Your latitude and longitude columns are detected automatically and turned into map points. (Named something unusual? Open Advanced and type the column names.)
  3. Pick an output format and click Convert, then download, no upload, no signup.

Supported inputs & outputs

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.

Getting your coordinates right

A correctly formatted spreadsheet for mapping: a name column plus latitude and longitude columns in decimal degrees, one row per place
A mappable spreadsheet: a latitude and a longitude column in decimal degrees, one row per place. Column names like lat/lon or y/x are detected automatically.

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.

Spreadsheet and mapping formats compared

Spreadsheet to map converter format relationships: the source format and every format you can convert it to in your browser
What you can convert to and from with the spreadsheet to map converter, all in your browser.
FormatWhat it isGeometryStylingCRSOpens in
CSV .csvCSV is the universal spreadsheet exchange format: rows of plain-text values that open in…Points (columns) + WKTNoNone (assign)Excel, Google Sheets, QGIS
Excel (XLSX) .xlsxXLSX is the modern Microsoft Excel workbook formatPoints (columns) + WKTNoNone (assign)Microsoft Excel, LibreOffice, Google Sheets
KML .kmlKML is the XML-based format Google Earth and Google Maps use to describe points, lines, …Points, lines, polygonsYesWGS84 onlyGoogle Earth, Google Maps, QGIS
GeoJSON .geojsonGeoJSON is an open, JSON-based standard (RFC 7946) for encoding vector features and thei…Points, lines, polygonsNoWGS84 onlyLeaflet, Mapbox GL, OpenLayers
Shapefile .shpThe Shapefile is the long-standing Esri vector format and remains the lingua franca of d…One type per fileNoAny (stored)ArcGIS, QGIS, GeoServer
GPX .gpxGPX is the open XML standard that GPS devices and fitness apps use to record waypoints, …Points & linesNoWGS84 onlyGarmin, Strava, Komoot

Which format should I use?

The two columns that make a spreadsheet mappable

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 classic swapped lat/long mistake

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.

Lines and shapes with a WKT column

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.

Decimal degrees, not degrees-minutes-seconds

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.

You need coordinates, addresses are not geocoded

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.

Popular spreadsheet conversions

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.

Frequently asked questions

What do I need in my spreadsheet?

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.

Which files can I use?

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.

My points are in the wrong place, why?

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).

Are my files uploaded?

No. A GDAL engine compiled to WebAssembly runs in your browser, so your spreadsheet never leaves your device.

Can I convert back to a spreadsheet?

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.

Related converters