Shapefile, KML, GeoJSON, and CSV: Which File Types Matter for Exploration Mapping?

Shapefile and GeoJSON carry boundaries (claims, targets), KML comes from Google Earth and some government portals, and CSV carries point data like drill collars. Exploration Maps imports all four — when you get a choice, ask for GeoJSON.

Example mining map created in Exploration Maps
A finished map exported from Exploration Maps — the kind of output this guide walks you to.
Turn public claim data into a clean map. No GIS experience needed — import, style, and export in minutes.
Open Exploration Maps →

Quick reference

FormatExtensionsBest forWatch out for
Shapefile.shp + .dbf + .shx + .prjClaims/target boundaries from GIS and registriesIt's 4+ files — a missing .prj loses the projection
GeoJSON.geojson / .jsonEverything — the cleanest interchange formatLarge files can be slow; simplify heavy geometry
KML/KMZ.kml / .kmzGoogle Earth sketches, some registry exportsStyling is discarded on import; geometry survives
CSV.csvDrill collars, samples — any point listCoordinate column naming and UTM vs lat/long

Shapefile — the GIS incumbent

Decades old and still what most registries and consultants hand over. A 'shapefile' is really a bundle: .shp (geometry), .dbf (attributes), .shx (index), .prj (projection). Keep the set together — especially the .prj, without which no tool can know where your data belongs. Convert to GeoJSON at mapshaper.org (drag the whole set or a .zip in, export GeoJSON) for the smoothest import.

GeoJSON — ask for this one

One text file, human-readable, no companion files to lose, imports directly. When a consultant or data room asks what format you want, say GeoJSON in WGS84. Its only weakness is bulk — survey-grade boundaries carry more vertices than a presentation map needs, and mapshaper's Simplify fixes that in seconds.

KML — the Google Earth format

KML (and its zipped sibling KMZ) is how boundaries get sketched and shared by people who don't run GIS. Geometry imports fine; Google Earth's styling (icons, colours) doesn't — you'll restyle with layer roles anyway, which is faster than fixing inherited styles.

CSV — points with coordinates

A spreadsheet with latitude/longitude columns is the natural format for drill collars, soil samples, and showings. On import you map which columns are coordinates and identifiers — hole ID and coordinates are enough; extra columns (depth, azimuth, assay) survive for labels and callouts.

For the collar-specific workflow — column mapping, callouts, badge labels — see How to Import CSV Data into a Mining Map.

The universal fix

When in doubt: mapshaper.org
Free, browser-based, nothing uploads to a server. It opens Shapefile/GeoJSON/KML/CSV, reprojects (-proj wgs84), simplifies heavy geometry, and exports clean GeoJSON. It untangles 90% of exploration data problems.
Import your file and export an investor-ready map. Open the editor and have a shareable map in minutes.
Open Exploration Maps →

Frequently Asked Questions

Which file format should I request from a consultant or data room?
GeoJSON in WGS84 (EPSG:4326). It's one file, opens everywhere, and imports with zero configuration. Shapefile is an acceptable second — insist the .prj is included.
My Shapefile imports in the wrong location. What happened?
It's in a projected coordinate system (usually UTM) and either the .prj is missing or wasn't honoured. Load it into mapshaper with its .prj and export as WGS84 GeoJSON; if there's no .prj you'll need to know the UTM zone to reproject correctly.
Can I import a KMZ directly?
KMZ is a zipped KML. If a KMZ doesn't import, unzip it (rename to .zip) and import the .kml inside — the geometry is identical.
What columns does a CSV need for drill collars?
Minimum: a hole ID and a coordinate pair (latitude/longitude in decimal degrees, or easting/northing you convert first). Recommended: depth, azimuth, dip, and your headline intercept for labels.
Does converting between formats lose data?
Geometry and attributes survive Shapefile ↔ GeoJSON ↔ KML conversion. What you lose: Shapefile column-name length limits (10 chars) truncate long attribute names, and KML styling never transfers — plan to restyle after import regardless.