Quick lookup for the four most commonly compared geospatial formats. For the fuller explanation of how each one works — plus CSV, WKT, and TopoJSON — see Geospatial File Formats.
| GeoJSON | KML | GPX | Shapefile | |
|---|---|---|---|---|
| File layout | One .json file | One .kml file | One .gpx file | .zip bundle (.shp + .dbf + .prj) |
| Geometry | Point/Line/Polygon | Point/Line/Polygon | Point/Line only | Point/Line/Polygon |
| Coordinate order | [longitude, latitude] | [longitude, latitude] | lat/lon as separate attributes | Often projected, not lat/lon at all |
| Coordinate system | Always WGS84 | Always WGS84 | Always WGS84 | Often UTM/State Plane — needs a .prj to know |
| Properties | Arbitrary JSON | Name + description | Name, time, elevation | .dbf attribute table |
| Typical source | Web maps, APIs | Google Earth, GIS exports | GPS devices, fitness apps | Desktop GIS (QGIS, ArcGIS) |
The one thing that actually differs in practice
GPX is the one format here that can't hold a Polygon at all — only points (waypoints) and lines (tracks/routes). If your data includes areas (a boundary, a zone), GPX simply isn't an option; GeoJSON, KML, or Shapefile all handle it fine.
Shapefile is the one format here that isn't reliably plain latitude/longitude — the other three always are. Opening or converting a Shapefile without accounting for its projection is the single most common way this format goes wrong.
Quick answer
- Building a web map? GeoJSON — it's what every JS mapping library expects natively.
- Opening in Google Earth, or sharing with someone non-technical? KML.
- Data from a GPS device or fitness app? It's already GPX — no need to convert unless your destination needs something else.
- Working with a file from QGIS or ArcGIS? Shapefile — convert it to GeoJSON first if you need it somewhere that doesn't read
.shpbundles directly.
Convert or verify a file
- Geo Format Converter — convert between all of these (and CSV, WKT, TopoJSON) in either direction, with Shapefile reprojection handled automatically.
- GeoJSON / KML / GPX / CSV Viewer — render a file on a map to confirm it landed in the right place.
- Geo QA & CRS Inspector — deterministically check a Shapefile's projection and catch coordinates left in the wrong CRS, without needing to spot it on a map first.
- Geo Reprojection & Repair Workbench — fix a Shapefile left in the wrong projection, no desktop GIS needed.