GeoJSON Inspector & Validator (RFC 7946)
Parses any GeoJSON document — FeatureCollection, single Feature, GeometryCollection, or bare Geometry — and walks every Point / MultiPoint / LineString / MultiLineString / Polygon / MultiPolygon coordinate. Validates that coordinates are [lon, lat] pairs (with optional elevation), that longitude is in [−180, 180] and latitude in [−90, 90], and that Polygon rings close (first ≡ last). Lengths are computed with the haversine formula on a 6371 km spherical Earth, polygon areas with the standard spherical-excess formula (Σ(λ₂−λ₁)·(2+sin φ₁+sin φ₂) · R²/2). Inner rings are subtracted from outer rings to give the net area. A simple equirectangular map renders all geometries to scale — points as red dots, lines as blue strokes, polygons as semi-transparent green fills. Everything runs locally; your GeoJSON never leaves the browser.
How to use
- Paste GeoJSON into the textarea, drop in the Sample button's data, or load a .json / .geojson file.
- Read the summary — top-level type, feature count, total points / length / area, geometry-type breakdown, and bounding box.
- Check the errors and warnings panels — out-of-range longitudes, unclosed polygon rings, missing geometries are all flagged.
- Scroll to the SVG map preview for a quick visual sanity check, or the per-feature table for property keys.
Frequently asked questions
- Is the area computation accurate?
- Spherical-excess on a 6371 km sphere is good to roughly 0.5% globally; the actual Earth is an oblate ellipsoid (WGS-84) and using its flattening would give ~0.1% — for that you need a proper ellipsoidal area library (Karney's GeographicLib). For visualising sub-country-scale polygons the spherical version shown is more than enough.
- Does GeoJSON enforce right-hand rule for polygons?
- RFC 7946 says exterior rings should be counter-clockwise and interior (hole) rings clockwise. Older GeoJSON (the original 2008 spec) didn't require this — many tools still emit either orientation. This validator computes signed area to tell which way each ring is wound but doesn't reject either convention; if you're publishing GeoJSON for the web, run it through a winding-order fixer before shipping.
- Why does my polygon area look wrong by a factor of cos(latitude)?
- If you used a planar shoelace formula on raw lon/lat degrees you'd get exactly that error — degrees of longitude shrink as you head poleward. This tool uses the proper spherical formula, so the area is in true square metres regardless of where on Earth the polygon is.
- What about TopoJSON / KML / Shapefile?
- Not supported here — this tool is GeoJSON-only. TopoJSON is a topology-preserving compression of GeoJSON (use the topojson CLI to convert), KML is XML-based (use ogr2ogr from GDAL), and Shapefiles are a binary multi-file format that you'd convert via QGIS or ogr2ogr.
Related tools
STL 3D Model Inspector (Volume, Bed Fit)
Drop a .stl file (binary or ASCII) and instantly see triangle count, bounding box, X×Y×Z size, volume, surface area, watertight check, three orthographic preview projections, and whether it fits common 3D-printer beds (Bambu, Prusa, Voron, Ender).
ZIP Inspector
Drop a ZIP and see every file inside — sizes, contents, and per-file download — without unpacking it locally.
Bulk File Renamer Preview
Drop files and preview a batch rename — pattern with {n}, {name}, {ext}, {date}, plus find/replace, case modes, and collision detection.
vCard (.vcf) File Parser & Inspector
Drop or paste any vCard 2.1, 3.0, or 4.0 .vcf export and read all the contacts as cards — names, phone numbers, emails, addresses, organizations, URLs, birthdays, notes, embedded photos, and any custom X- fields, all parsed locally in your browser.
ICS (iCalendar) Event Builder
Generate a downloadable .ics calendar event with title, start/end, location, attendees, recurrence (daily/weekly/monthly/yearly) and a reminder — fully RFC 5545 compliant, generated in your browser.
CSV Inspector
Drop a CSV, see row / column counts, per-column type inference, null counts, unique counts, and full-row duplicate detection — all locally.