ToolJoltTools

GeoJSON Validator & Fixer

Validate GeoJSON against RFC 7946 — catches swapped lat/lng, unclosed rings, bad types — and auto-fixes what's safely fixable. In-browser.

Paste data or open a file

Everything runs in your browser — files are never uploaded to a server.

Field guide: GeoJSON Validator & Fixer

GeoJSON fails quietly: the map renders nothing, or your points appear in the Southern Ocean, and the JSON itself looks perfectly plausible. This validator checks structure against RFC 7946 — root type, Feature wrappers, geometry types, coordinate arrays, ring closure — and, critically, the mistakes the spec can't see but experience can: coordinates in [latitude, longitude] order (the #1 GeoJSON bug; the spec demands [lon, lat]), values out of range, missing properties members, and the legacy crs member that modern parsers ignore or reject.

Where a fix is mechanical and safe, it's applied automatically and offered as a download: swapped coordinate pairs are flipped (detected when |lat-position| > 90 — unambiguous), unclosed polygon rings get their first position appended, missing properties become null. Anything ambiguous stays a warning for you to judge. Errors are reported with JSON paths (features[3].geometry ring 0.1[7]) so you can find the offending vertex in a 10,000-line file. Validation is local — paste proprietary data freely.

Field tips

  • Points in the ocean off west Africa (0,0) or features mirrored into the wrong hemisphere = coordinate order. GeoJSON is [longitude, latitude] — x before y, like maths, unlike speech.
  • A 'valid with warnings' file usually renders fine — warnings flag spec deviations (open rings, crs member) that strict parsers like Mapbox GL or PostGIS may still reject.
  • Validate before you upload anywhere: GitHub's map preview, Mapbox and Leaflet all fail differently on the same broken file, which makes debugging by upload slow.
Sources & standards: RFC 7946 — The GeoJSON Format (IETF, 2016)

Conversions run locally in your browser and follow the cited specifications. Always verify critical output in the target application; for survey-grade or legal data, confirm coordinate systems and datums with your GIS team.

GeoJSON Validator & Fixer — Validate GeoJSON against RFC 7946 — catches swapped lat/lng, unclosed rings, bad types — and auto-fixes what's safely fixable. In-browser. Runs 100% in your browser: no upload, no sign-up, no size limits beyond your device.

About GeoJSON Validator & Fixer

GeoJSON fails quietly: the map renders nothing, or your points appear in the Southern Ocean, and the JSON itself looks perfectly plausible. This validator checks structure against RFC 7946 — root type, Feature wrappers, geometry types, coordinate arrays, ring closure — and, critically, the mistakes the spec can't see but experience can: coordinates in [latitude, longitude] order (the #1 GeoJSON bug; the spec demands [lon, lat]), values out of range, missing properties members, and the legacy crs member that modern parsers ignore or reject.

How to use GeoJSON Validator & Fixer

  1. 1Open your file (or paste the data) — parsing happens locally in your browser, nothing uploads.
  2. 2Click Process — formats are detected and validated, with clear errors if something is off.
  3. 3Review the stats, warnings and preview so you know exactly what the conversion did.
  4. 4Download the result file, ready for your GPS device, web map or GIS.

Why use GeoJSON Validator & Fixer?

  • 100% free, no sign-up, no file-size upsell games
  • Fully client-side: files and coordinates never upload to a server
  • Honest errors and warnings instead of silent bad output
  • Works offline once the page is loaded
  • Implements the documented standard: RFC 7946 — The GeoJSON Format

Frequently asked questions

Why does my GeoJSON render nothing on the map?+

The four usual suspects, in order: coordinates in [lat, lng] order (features end up in the wrong place or off-world), a root object that isn't a FeatureCollection/Feature/geometry, geometry type typos ("point" instead of "Point" — JSON is case-sensitive), or coordinates nested at the wrong depth (a Polygon needs three levels of arrays). This validator names each explicitly with its path.

What does the auto-fix change, exactly?+

Only mechanical, unambiguous repairs: swapping pairs where |latitude| > 90 proves the order is reversed; appending the first position to unclosed polygon rings (RFC 7946 §3.1.6 requires closure); adding "properties": null where the member is missing. It never invents data, reprojects, or rewinds ring winding — those need human judgment.

Is [longitude, latitude] really the standard order?+

Yes — RFC 7946 §3.1.1 is unambiguous: position = [longitude, latitude(, elevation)]. The confusion exists because humans say 'lat, long' and Google Maps URLs use that order. Every GeoJSON consumer (Leaflet's L.geoJSON, Mapbox, PostGIS ST_GeomFromGeoJSON, turf.js) expects lon-first; data that 'works' lat-first only works because both producer and consumer made the same mistake.

What's the warning about a crs member?+

Old GeoJSON (the 2008 spec) allowed declaring a coordinate system via crs. RFC 7946 removed it: GeoJSON is WGS84 longitude/latitude, full stop. Parsers ignore the member at best — meaning data in UTM or Web Mercator metres renders wrong regardless of what the crs claims. Reproject to WGS84 and delete the member.

Embed GeoJSON Validator & Fixer on your website

Want GeoJSON Validator & Fixeron your own site? Paste this snippet into any HTML page — it's free, with no API key or sign-up. The tool loads in an iframe and keeps working exactly as it does here.

Embed code
<iframe src="https://tooljolt.com/tools/geojson-validator" width="100%" height="640" style="border:1px solid #e5e7eb;border-radius:12px;max-width:680px" title="GeoJSON Validator & Fixer — ToolJolt" loading="lazy"></iframe>

Related tools

Related GIS tools

Sponsored