GeoJSON Simplify Tool
LocalSimplify GeoJSON online — Douglas-Peucker, topology-preserving or keep-percentage modes, with before/after vertex counts. Free, no upload, no sign-in.
What is it? GeoJSON Simplify reduces vertex counts with fast Douglas-Peucker (tolerance-driven), topology-preserving mode (shared edges stay aligned), a keep-percentage target mode (Visvalingam effective-area or perpendicular-distance decimation), or a combined topology × keep-percentage mode (shared arcs decimated once in a TopoJSON pipeline — seamless shared edges with an exact per-arc retention); the output area shows before/after vertex count and file size plus a map preview. Built for lightening layers before web-map publishing; powered by turf.js and an in-house decimation algorithm, it runs locally — nothing is uploaded, no sign-in.
TL;DR: Simplify GeoJSON vertices in your browser: fast Douglas-Peucker, topology-preserving, keep-percentage, or combined modes — then check the map preview and before/after vertex stats. Free, no sign-in, nothing uploaded.
How to use
- Paste your GeoJSON text into the input area, or click "or load a file" to pick/drop a .geojson/.json file.
- Pick a mode: set the tolerance for Fast / Topology-preserving, or set a keep percentage and algorithm (Visvalingam effective area / perpendicular distance) for the target and combined modes.
- Simplify, inspect the result on the map preview and the before/after stats line, then download.
FAQ
How do I choose a tolerance?
Tolerance is in degrees for WGS84 data; start small and increase.
How does the keep-percentage target work?
Vertices are removed rank by rank (smallest Visvalingam effective area, or smallest perpendicular distance to the surviving chord, first) until each line/ring keeps exactly the target share — Point/MultiPoint are left untouched. It trades minimal-error guarantees for not having to hand-tune a tolerance.
When do I need the combined mode?
When adjacent polygons must keep seamless shared edges and you still want a vertex budget: shared arcs are decimated once in a TopoJSON pipeline (no cracks between neighbors), retention is exact per arc (overall ≈ the keep percentage weighted by arc length), and shared node endpoints are never removed.
Is it local?
Yes.
Is it free? Do I need an account?
Yes — simplifying a GeoJSON file uses a free daily allowance and needs no sign-in. Batch runs and larger quotas are the paid Pro tier.
How is this different from mapshaper?
Mapshaper is the reference tool for topology-preserving simplification, and its Simplify command uses the same Douglas-Peucker / Visvalingam family. The differences: four modes here include a keep-percentage target (keep exactly N% of vertices per line/ring — set a vertex budget instead of hand-tuning a tolerance), everything runs in your browser with no install and nothing uploaded, and there is no large-file hard limit from a server pipeline. For heavy editing, reprojection and format conversion, mapshaper is still the fuller tool.
Is this the same as turf.js simplify?
Yes — Fast mode is turf.js simplify (Douglas-Peucker, MIT) running in your browser with the tolerance exposed as a control. The other three modes go beyond it: topology-preserving and combined modes run a TopoJSON arc pipeline so adjacent polygons keep seamless shared edges, and the keep-percentage modes hit an exact vertex budget per line/ring.
Will this make my GeoJSON file smaller?
Vertex counts always drop (the before/after counter shows by how much), and file size usually drops with them — but small files can come out larger, because topology modes re-derive quantized coordinates with decimal noise (the stats line shows both). If the goal is a smaller file for a web map, set a keep-percentage target and watch the size column, not just the vertex count.
Examples
- Paste or load GeoJSON → set a tolerance or a keep-percentage target → inspect the preview → simplify
- Lighten a large boundary layer for a web map: keep 20% of vertices with the combined topology × keep mode — shared edges stay seamless and the stats line shows the size drop.
Supported formats
Limitations
- Fast-mode tolerance is in coordinate units, not meters, for geographic data.
- Simplify is geometric only.
- Topology-preserving mode (shared edges stay aligned) is available alongside fast Douglas-Peucker.
- In topology-preserving mode the tolerance is in degrees and takes effect within TopoJSON's quantized space — bounded by the quantization step (≈1/100,000 of the layer extent).
- Target mode keeps exactly the requested share per line/ring (Point/MultiPoint untouched) but — unlike tolerance-driven Douglas-Peucker — does not guarantee a minimal-error subset.
- Combined topology × keep-percentage mode decimates shared arcs once (adjacent polygons keep seamless shared edges); retention is exact per arc (overall ≈ the keep percentage weighted by arc length, not per feature), shared node endpoints are never removed, and coordinates land on the quantization grid (step ≈1/100,000 of the layer extent).
- Vertex count usually drops, but small outputs can be larger than the input (topology mode re-derives quantized coordinates with decimal noise); the before/after vertex count and size are shown in the output area.
Privacy
Privacy first: this tool runs entirely in your browser — your input and files never leave your device, and everything is cleared when you close the page.