Map makers tool

CSV to map

Parse a CSV of lat/lng in the browser and plot it.

Short answer

Drop or choose a CSV file up to 8 MB. The tool finds the latitude and longitude columns, plots every valid row as a point, and lets you export the points as GeoJSON, KML, or GPX. The file never leaves your browser.

A file that works

name,lat,lon
Denver capitol,39.739,-104.985
Boston capitol,42.358,-71.064

This file plots two points. The name column becomes each point's label. Every other column is kept as a property and carried into the GeoJSON and KML exports.

How to use it

  1. Drop your .csv file onto the box, or click the box to choose it.
  2. The points appear on the map, which zooms to fit them. The line beside the export buttons gives the number of features read.
  3. If nothing appears, check that the file has latitude and longitude columns with a header row.
  4. Press GeoJSON, GPX, or KML to download the points in that format.

How columns are detected

The tool reads the header row first. A column named lat, latitude, y, lat_dd, or latdd is taken as latitude, and lon, lng, long, longitude, x, lon_dd, or londd as longitude. Case does not matter.

With no matching header, it scans the first 50 rows for numeric columns and picks the most likely pair, using the rule that latitude stays within ±90 and longitude within ±180. Rows with blank, non-numeric, or out-of-range values are skipped.

Format tips

Use decimal degrees with a minus sign for south and west. Quoted fields with commas inside them are handled. A column called name or title is used as the label. Degrees-minutes-seconds text is not read here; convert it first with the coordinate converter.

If your file has addresses but no coordinates, geocode them with address to coordinates and paste the results into a new CSV.

Exports

GeoJSON follows RFC 7946, with coordinates in longitude, latitude order. KML opens in Google Earth. GPX turns each point into a waypoint for GPS units and hiking apps. All three are generated in the browser from the parsed points.

Common problems

A file saved from a European spreadsheet may use semicolons between fields and commas as decimal marks. Save it again with commas between fields and periods for decimals.

Coordinates stored as text with degree signs, such as 39°44'N, are not read. Convert them to decimal degrees first. If points land in the wrong hemisphere, a minus sign is missing from the longitude. Also check that the header row is the first line of the file. Title rows above it stop the columns from being detected.

Questions people ask

Is my CSV uploaded?

No. It is read and plotted in your browser.

What is the file size limit?

8 MB.

Why were some rows skipped?

Their latitude or longitude was empty, not a number, or out of range.

Sources and data as of

Data as of: no stored data; files stay in your browser.

  1. 01RFC 7946, the GeoJSON format
  2. 02OGC KML standard
  3. 03GPX 1.1 schema, TopoGrafix

How every number is computed: methodology. Spotted a wrong figure? Report an error.