TopoJSON to GeoJSON Converter

Decode TopoJSON back to GeoJSON for tools that don't support TopoJSON

Ad placeholder (leaderboard)

TopoJSON to GeoJSON Converter reverses TopoJSON encoding so you can use the data in the many tools that only read plain GeoJSON. It rebuilds each geometry by stitching together the topology’s shared arcs, undoing the delta encoding, and applying the transform to restore real-world coordinates — entirely in your browser with nothing uploaded.

How it works

A TopoJSON topology stores all line segments once in a global arcs array and references them by index from each geometry. Decoding reverses three encoding steps:

  1. Un-delta. Each arc lists its first point absolutely and every subsequent point as an offset from the previous one. The decoder accumulates these offsets to recover absolute integer coordinates.
  2. Transform. If the topology has a transform, each integer point p becomes point = p * scale + translate, converting the quantized grid back to longitude and latitude.
  3. Arc stitching. A geometry’s arcs are arrays of arc indices. A positive index i uses arc i forwards; a negative index uses arc ~i (which is -i - 1) reversed. The decoder concatenates the arcs, dropping the duplicated shared vertex where one arc ends and the next begins.

Tips and notes

Polygons in TopoJSON are arrays of rings, and MultiPolygons are arrays of those — the decoder rebuilds the full nesting so the output matches the GeoJSON spec. Properties attached to each topology geometry are copied onto the resulting GeoJSON feature. Use the companion GeoJSON to TopoJSON tool to compress data, and this one to decode it back whenever a downstream tool needs GeoJSON.

Ad placeholder (rectangle)