Flatten Multi-Geometry — GeoJSON, Shapefile, KML and more

Split multi-geometry features into individual single-geometry features. Use these free browser-based tools to flatten MultiPolygon, MultiLineString, and MultiPoint datasets — useful for per-feature analysis, attribute editing, and format interoperability.

What is geometry flattening?

Geometry flattening splits features with multi-part geometry (MultiPolygon, MultiLineString, MultiPoint, or GeometryCollection) into individual single-geometry features. A MultiPolygon with three constituent polygons becomes three separate Polygon features, each retaining the original feature's attributes.

Single-geometry features (Polygon, LineString, Point) pass through unchanged, so it is safe to run the flattening operation on mixed datasets without worrying about accidentally modifying simple features.

Flattening is commonly needed because many analysis tools and database systems handle single-geometry features more predictably than multi-part geometries. It also makes attribute editing easier — you can modify properties per polygon part rather than per multi-part feature.

The operation runs entirely in your browser using Turf.js. No data is ever sent to a server.

Common use cases

Per-part attribute editing

Split a MultiPolygon country boundary into individual island and mainland polygons so that each part can have its own attribute values.

Analysis tool compatibility

Many spatial analysis tools expect single-geometry input. Flatten multi-part features before running dissolve, centroid, or spatial join operations.

Feature count normalisation

When counting features for reporting, flatten first to ensure each physical geometry part is counted individually rather than as a single multi-part feature.

Database import preparation

Some databases and file formats handle single-geometry features more efficiently. Flatten before import to avoid multi-geometry handling complexity.

How to use

  1. 1

    Upload your vector file (GeoJSON, Shapefile ZIP, KML, GeoPackage, or GML).

  2. 2

    The file is parsed in your browser using GDAL WebAssembly and converted to GeoJSON.

  3. 3

    Turf.js splits each multi-geometry feature into individual single-geometry features.

  4. 4

    The result is converted back to your chosen format and downloaded.

Frequently asked questions

What happens to single-geometry features?

They pass through unchanged. Only Multi* and GeometryCollection features are split.

Do the output features retain their original attributes?

Yes. Each individual feature produced from a multi-part split retains all the attribute properties of the original feature.

Will the output have more features than the input?

Yes — if the input contains multi-part features. A file with 10 MultiPolygons each containing 3 parts will produce 30 Polygon features.

Does this work on GeometryCollection features?

Yes. Each geometry within a GeometryCollection is extracted as an individual feature.

Visualization Tools

Grid Tools

Bounding Box Tools

Measurement Tools

Buffer Tools

Dissolve Tools

Centroid Tools

Simplification Tools

Data Inspection

Feature Selection Tools

Filter by Attribute Tools

Convex Hull Tools

Polygon to Line Tools

Line to Polygon Tools

Explode to Points Tools

More Flatten Tools

Combine Features Tools

Spatial Operations

Raster Operations

Rasterization Tools

Reprojection Tools

Coordinate Conversion Tools