Plot coordinates on a map – from a list or a spreadsheet

Paste coordinates or a table copied from Excel or Google Sheets, or open a CSV file, and every row becomes a numbered point on the map with its name and columns. Decimal degrees, degrees-minutes-seconds, UTM, MGRS and town names are read, swapped latitude and longitude is caught, and positions keep their full precision to about a centimetre. It runs in your browser and nothing is uploaded.

Paste from a spreadsheet with the column names, or one coordinate or town per line. Street addresses are not looked up.

      The file is read in your browser and never uploaded. Have an Excel file? Turn it into GeoJSON on FileReshape.

      Need a shapefile? Convert the GeoJSON to a shapefile on FileReshape.

      Map and data: OpenFreeMap, MapLibre GL JS, GeoNames (via all-the-cities) – all data sources.

      Key facts

      A list of coordinates is hard to check by reading it. A column of numbers in a spreadsheet, a few positions from a GPS, the corners of a survey or the sites in a report only make sense once they are on a map, where a point in the sea or on the wrong continent stands out at once. This tool puts them there. Paste the cells straight from Excel, Google Sheets or LibreOffice with the column names in the first row, or open a CSV or text file, and the tool finds the latitude and longitude columns by their names in English, German, French, Spanish, Italian or Portuguese, or uses x and y. A list without column names works too: one coordinate per line in whatever format you have, such as 55.6761, 12.5683, 55°40′34″N 12°34′06″E, a UTM coordinate like 32U 691000 6176000, an MGRS reference, a WKT point or a link copied from Google Maps. Lines that are a town or city name, such as "Lyon" or "Springfield, US", are placed at the town centre from the GeoNames list that loads in your browser. Each point gets a number, and the name column and all other columns show in a popup when you click it. Choose a column to colour the points by, such as a category, a status or a sales region, and the legend shows how many points have each value. Every line that could not be placed is listed with its line number and the reason, so nothing goes missing silently. When the map looks right, download the points as KML for Google Earth, GeoJSON for QGIS and web maps, GPX for a GPS unit or CSV with clean latitude and longitude columns, or copy a share link for a short list.

      How to use it

      1. Paste coordinates or spreadsheet cells into the box, open a CSV or text file, or press "Try an example".
      2. Check the points on the map and the list of lines that could not be placed; switch "Two numbers without column names are" if your list has longitude first.
      3. Pick the name column and, if you like, a column to colour the points by, and click a point to see its row.
      4. Download the points as KML, GeoJSON, GPX or CSV, or copy the share link.

      How accurate is it?

      How exact the points are

      The points are placed exactly where the numbers say: the tool keeps every decimal you paste and writes seven decimals of a degree in the downloads, which is about one centimetre on the ground. Six decimals are about 11 cm, five about 1.1 m and four about 11 m, so the precision of the result is the precision of your data. Degrees-minutes-seconds and decimal minutes are converted without rounding. UTM coordinates are converted on the WGS84 ellipsoid with Krüger's series, which agrees with PROJ to under a millimetre, and an MGRS reference is placed at the centre of its square, so a 1 km reference can be up to about 700 m from the real point.

      Datums and coordinate systems

      Latitude and longitude are taken as WGS84, the system of GPS and web maps. Coordinates in another datum, such as ETRS89 or NAD83, differ from WGS84 by less than about 1 to 2 m, which does not show at most zoom levels. Older national datums such as ED50, OSGB36 or Tokyo can be 100 m or more off; convert those first with the coordinate converter, which knows about 6,600 EPSG systems. Projected eastings and northings other than UTM are not read here for the same reason.

      Town names are town centres

      A line that is a place name is matched against the GeoNames list of about 24,000 towns and cities with 15,000 or more people. The point is the town's centre as GeoNames gives it, usually the main square or town hall, so it says where a town is, not where an address is. Names that exist in several countries go to the largest town unless you add the country, as in "Paris, US" or a country column. Street addresses are not looked up.

      Good to know

      Latitude and longitude the wrong way round

      Spreadsheets and GIS exports often write longitude first, the order GeoJSON uses. With column names the tool follows the names, and a row where the latitude is over 90° is turned round and counted in the status line. For a plain list both orders can be valid, so look at the map: if points that should be in Europe land in the Indian Ocean or Somalia, switch "Two numbers without column names are" to longitude, latitude.

      Missing minus signs and hemisphere letters

      Places west of Greenwich and south of the equator have negative longitudes and latitudes. A list that lost its minus signs, or that wrote W and S in a separate column, puts American points in Asia and Australian points in Japan. Add the minus sign or the letter to the number itself, for example -74.0445 or 74.0445 W.

      Decimal commas and separators

      European spreadsheets write 55,6761 with a decimal comma and separate columns with semicolons. Both are understood: the tool picks the separator that splits all lines into the same number of fields, and reads a comma inside a number as a decimal comma. A plain list such as 55,6761 12,5683 works as long as a space or a semicolon separates the two numbers.

      Frequently asked questions

      How do I plot coordinates from Excel on a map?

      Select the columns in Excel, including the row with the column names, copy them and paste into the box. The tool finds the latitude and longitude columns, shows every row as a point and keeps the other columns in the popup. You can also save the sheet as CSV and open the file.

      How many points can I plot?

      Up to 5,000 rows at a time. All of them are drawn on the map and included in the downloads; the list in the panel shows the first 200. Larger files are cut at 5,000 rows, and the status line says how many were left out.

      Can I plot addresses?

      No, only coordinates and town or city names. Looking up street addresses needs a geocoding service, which would send your list to a server. Town names are matched in your browser against GeoNames and placed at the town centre, which is good for an overview but not for a delivery route.

      Can I colour the points by a category?

      Yes. Choose a column under "Colour by" and each of its nine most common values gets its own colour, with the rest in grey. The legend shows the colours and how many points have each value, and the colours are kept in the KML and GeoJSON downloads.

      Is my data uploaded?

      No. The text you paste and the file you open are read by your browser, and the points are drawn there. Only a short list is written into the share link, and only when you press it; nothing is sent to GeoDrafter.

      Something wrong or missing? E-mail [email protected] and it will be fixed.