Convert Excel (XLSX) to shapefile

Free, private and fast: everything runs in your browser and your Excel (XLSX) file is never uploaded.

Excel (XLSX) to Shapefile: why convert

Field crews, surveyors and planners often deliver point data as an Excel sheet: an ID, a description and two coordinate columns. ArcGIS and QGIS can import that, but only with several clicks every time, and the coordinate system is easily lost. This converter makes a ready shapefile from the .xlsx: it finds the sheet and the coordinate columns, creates a point for each row, keeps the other columns as attributes and writes a .prj so the points land in the right place. Coordinates in a projected system such as UTM or a national grid stay in that system when you enter its EPSG code; latitude and longitude become a WGS84 shapefile, or any system you choose. The shapefile parts come together in a zip.

How to convert Excel (XLSX) to Shapefile

  1. Drop your .xlsx file in the box, or click to choose it.
  2. Check the coordinate columns and, for projected X/Y values, enter the EPSG code.
  3. Optionally choose an output coordinate system, then click Convert to shapefile and download the zip.

What changes when you convert

Column names are cut to 10 characters

A shapefile's attribute table (.dbf) allows field names of at most 10 characters. Longer Excel headers such as "Inspection date" are shortened, and the converter lists every name it changed. Rename the columns in Excel first if you want to choose the short names yourself.

Rows without coordinates are left out

A shapefile cannot store a point without a position. Rows with an empty or invalid coordinate are skipped, and the converter says how many. Use the GeoJSON converter if you need to keep them.

Text, numbers and dates

Text cells become text fields and keep leading zeros. Numbers become numeric fields, and dates are written as text in the form 2024-05-01, which every GIS program reads. Very long text is cut at the 254 characters a .dbf field can hold.

Which coordinate system?

The sheet itself does not say. Values between -180 and 180 and -90 and 90 are taken as WGS84 longitude and latitude. Larger numbers, such as 6170000, are projected; the converter then asks for the EPSG code instead of guessing.

About the formats

Excel (XLSX)

XLSX is the workbook format of Microsoft Excel since Excel 2007, also written by LibreOffice, Numbers and Google Sheets. Address lists, sample sites and asset registers often live in a spreadsheet with a latitude and a longitude column, but a spreadsheet is not map data until those columns become points.

  • A workbook can hold several sheets; each sheet is one table with a header row.
  • Cells keep their type: numbers, dates and text, so a postcode like 0150 can keep its leading zero.
  • There is no geometry and no coordinate system; coordinates are just numbers in columns.
  • The older .xls format (Excel 97-2003) is a different, binary format.

Shapefile

The Esri Shapefile is the most widely used GIS vector format. A single "shapefile" is really a set of files with the same name: .shp holds the geometry, .shx an index, .dbf the attribute table, and the optional .prj the coordinate system and .cpg the text encoding.

  • Needs at least .shp, .shx and .dbf. Upload them together or as one .zip.
  • Field names are limited to 10 characters and text values to 254 characters.
  • Each shapefile holds one geometry type only: points, lines or polygons.
  • Without a .prj file the coordinate system is unknown.

Frequently asked questions

Is the spreadsheet uploaded?

No. Everything runs in your browser, and the workbook never leaves your computer.

Which files do I get?

A zip with the .shp, .shx and .dbf, the .prj with the coordinate system and a .cpg saying the text is UTF-8. Unzip it and add the .shp in ArcGIS or QGIS.

Can I convert lines or polygons from Excel?

Yes, if the sheet has a column with WKT text such as LINESTRING (…) or POLYGON (…). Each geometry type becomes its own shapefile.

What if my sheet has several tables?

The converter reads one table per sheet, starting in the first row. Put each table on its own sheet, with the one you need first.