Compare two GeoJSON files — privately, in your browser

To compare two GeoJSON files, drop both into Diffesq: it matches features by identity, classifies each one as added, removed or modified, and draws both files as stacked 3D layers — the old map below, the new above — without uploading either file. Text-diffing GeoJSON barely works: coordinate arrays reflow, a moved boundary reads as hundreds of changed numbers, and a reordered feature list reads as a total rewrite. The question is spatial, so the answer is too.

There is no basemap, ever. A conventional map diff fetches tiles, and a tile request derived from a file's bounding box is a derivative of your data. The scene is drawn entirely from your own geometry, so a parcel boundary under NDA never becomes a map server's query log.

Compare two GeoJSON files

How it works

  1. Open the Diffesq workbench and drop a .geojson or .json FeatureCollection on each side.
  2. Diffesq matches features by identity, compares their geometry and properties on your device, and projects both files into one shared frame so the two layers line up.
  3. Orbit the scene, or ignore it entirely — the sidebar lists every change as text, and a keyboard-navigable table presents the same comparison without a mouse or a GPU.

What the comparison covers

  • Features matched by identity, then classified added / removed / modified / unchanged — not by position in the file, so a reordered FeatureCollection reports zero changes.
  • Plain-language notes per feature: parcel-108 · area +38.4% · zone R2 → C1. A geometry edit that leaves the area unchanged is reported as an unquantified edit rather than silently ignored.
  • Property diffs over the key union of both features, with a missing key, an explicit null and an empty string treated as equal.
  • Every change carries a source location back into the original file, so the 3D view is a presentation of a structural comparison rather than a picture of one.
  • A screen-reader and keyboard alternative that carries the same comparison as a table, and a Canvas 2D renderer for machines with no working WebGPU adapter.
  • Large files degrade visibly, never silently: outlines are simplified for drawing only — classification and area always run on the original ring — and every cap that engages says so in the interface.

Free vs Pro

The map itself is free: on the free tier every feature still draws and still extrudes, and the true total number of changes is always stated. What Pro unlocks is the explanation — beyond a preview of roughly a third of the changes, the per-feature notes, per-side areas and zones, changed-property lists and the before-geometry of a modified feature are withheld. Pro also unlocks clean, unwatermarked exports (HTML, Markdown, JSON, PDF).

See Pricing for plans — $2.97/month, $27.99/year, or $49 once.

Privacy

Every comparison runs locally in your browser. Your files are never uploaded — there is no server that receives them, and the page keeps working with Wi-Fi turned off. Details in the Privacy Policy.

Frequently asked questions

Which GeoJSON geometry types are supported?

Polygons and MultiPolygons drive the layer comparison, including interior rings (holes). Other geometry types are read and reported rather than dropped, so nothing in your file disappears without being accounted for.

Does it need a GPU?

No. WebGPU is used where it is available and genuinely works; otherwise the scene falls back to a Canvas 2D renderer. Either way the sidebar and the keyboard-navigable table carry the full comparison, so the result is never locked behind a graphics driver.

Does it download map tiles or send my coordinates anywhere?

No, and it cannot: there is no basemap in the product at all. A tile request derived from your file's bounding box would be a derivative of your data leaving the device, which the architecture rules out rather than merely avoids.

How large a file can it handle?

Around 10,000 comparable features per side before capping begins. Past that the comparison degrades in stages — simplifying outlines for display, then limiting features — and each stage is stated in the interface along with what was reduced.

Does it work offline?

Yes — once the page has loaded, parsing, comparing, and rendering all happen on your device. Turn off Wi-Fi and it still works.

Do I need an account?

No. Comparisons run without any signup. Pro features unlock with a license key — still no account or login.

Related