How to convert GeoJSON to CSV
- Drop the .geojson or .json file into the box.
- Features and their properties are read in the tab.
- Choose CSV and convert; point layers gain X and Y columns, and lines or polygons are kept in a trailing WKT column.
What changes when you convert GeoJSON to CSV
| What | GeoJSON → CSV | |
|---|---|---|
| Geometry | Changes | Point features become X and Y columns; lines and polygons are written to a WKT geometry column, so no shape is lost in the table. |
| Attributes | Kept | Every column and full field name moves from GeoJSON into CSV untouched. |
| Styling & labels | Kept | Neither GeoJSON nor CSV stores visual styling, so there is nothing to lose. Geometry and data carry straight over. |
| Coordinate system | Changes | CSV stores raw coordinates without a CRS tag, so note the coordinate system separately for whoever opens the file. |
| Elevation (Z) | Changes | Z values, if present, appear as an extra column rather than 3D geometry. |
| File structure | Kept | A single, self-contained .csv file you can move around on its own. |
Why convert GeoJSON to CSV?
People pull features from a web API, then open them in Excel or Google Sheets to sort, filter or chart the attributes, and analysts feed the same rows to pandas scripts with no GIS install anywhere in the chain. GeoJSON packs geometry and attributes into one JSON structure, which suits Leaflet or Mapbox GL but reads as noise in a spreadsheet. The conversion flattens that structure into a table that any tool, mapping or not, can open.
Coordinate system handling
Every valid GeoJSON file since RFC 7946 stores WGS84 coordinates with longitude first, which is why this conversion involves no reprojection step and no datum question on the way in. A file written before 2016 could still carry a legacy crs member with projected numbers, and those values pass through exactly as written, so scan the ranges, longitudes inside 180 and latitudes inside 90, whenever the source has some age on it.
Anyone loading the finished table back into GIS software will need to assign EPSG:4326 in the import dialog, because a plain text table cannot record that fact about itself. Sending that one code along with the file spares the next person a guess between datums.
What to check when converting GeoJSON to CSV
CSV is strictly flat, so a properties block holding a nested object, such as an address, becomes one text string in one cell rather than a column per value. Split it later in Excel, or flatten the properties in the GeoJSON before converting when each nested value needs its own column. The X column holds longitude and the Y column holds latitude, because GeoJSON is always WGS84, and the file itself carries no coordinate system tag.
Troubleshooting GeoJSON to CSV
- Excel mangles the coordinates on opening. A double-click import lets Excel apply its own guesses, which rounds long decimals and rewrites anything shaped like a date. Bring the file in through Data > From Text/CSV and set each column type in the import dialog, where the preview shows exactly what will happen to every field.
- The WKT cell of a detailed polygon is cut short. Excel caps a single cell at 32,767 characters, and a boundary with thousands of vertices spells out more WKT than that. The CSV on disk still holds the complete geometry, so read that column in QGIS or pandas, or simplify the shapes before converting when a spreadsheet is the true destination.
- Long ID numbers turned into scientific notation. A spreadsheet treats a sixteen-digit identifier as a floating-point number, shows it as 1.23457E+15 and quietly zeroes the trailing digits on save. Import the ID column as text rather than as a number, and the identifiers stay exact from end to end.
- Some rows appear chopped in half. A property holding a line break is written as a quoted multi-line field, which is valid CSV that line-by-line scripts still split in the middle. Read the file with a parser that honors quoting, such as pandas, Excel or QGIS, or clear the line breaks out of the properties before converting.
- Entire columns sit empty for many rows. The header row is the union of every property key found across the collection, so a key present on only a few features yields a mostly blank column rather than an error. Trim the stray keys at the source, or drop the thin columns afterwards, when a uniform table matters.
About the formats
GeoJSON is where web maps and APIs keep their vector data, with each feature holding a geometry plus a bag of properties. CSV is the flat table that spreadsheets, databases and scripts all agree on. Converting one to the other pulls features out of the mapping stack and into analysis: you export a FeatureCollection and read the attributes as plain columns, so colleagues outside the mapping team can work the records in tools they already know.
Frequently asked questions
Can I chart the data straight away in Excel?
Yes, open the CSV in Excel or Google Sheets and sort, filter or chart the attribute columns. Number properties arrive as numbers, so sums and averages work without any cleanup.
Can I rebuild a map from the CSV later?
Yes. QGIS and pandas can parse the X and Y columns or the WKT column back into geometry, and the CSV to GeoJSON page on this site runs the same trip in reverse.
Why was my file read as empty rather than converted?
The file has to be valid JSON, so a trailing comma, a byte-order mark or a save in rich text format stops the parser before any rows exist. Open the file in a code editor and check the first and last characters.
How does the geometry of each feature land in the CSV?
Point features map to an X and a Y column, with X holding longitude and Y holding latitude, one row per feature. Lines and polygons cannot fit two number columns, so their coordinates are written as WKT into a trailing geometry field that keeps the shape intact.
Does the conversion keep every property on my features?
Yes, each key inside a feature's properties object becomes a column, and every feature becomes one row. A nested object cannot spread across columns, so it is serialized into a single cell as text rather than dropped.
Related converters
Ready to convert?
Drop a file and download the result in seconds. Nothing is uploaded, nothing is stored.