SM Datum

GeoJSON to KML Converter

Convert a GeoJSON file to KML or KMZ for Google Earth and Google My Maps. Every geometry type is supported, properties become the placemark name, a balloon table and data fields, and polygon holes are kept. The file is read in your browser and never uploaded.

Drop a GeoJSON file here, or click to browse
Nothing is uploaded: the file is read in your browser.

No file handy? Download a sample GeoJSON with a point, a line and polygons (one with a hole).

    How to convert GeoJSON to KML

    1. Load the file. Drop a .geojson or .json file onto the box above, or click it to browse. It can be a FeatureCollection, a single Feature or a bare geometry.
    2. Check the preview. The page counts the points, lines and polygons it found and shows the first rows of the properties table.
    3. Choose the options. Pick the property to use as each placemark's name, keep or drop the properties, and set the colours, line width and polygon fill.
    4. Download. Click Download KML for a plain file, or Download KMZ for a compressed one. Open it in Google Earth or import it into Google My Maps.

    How GeoJSON becomes KML

    In GeoJSONIn the KML
    Point, LineString, PolygonPoint, LineString, Polygon (holes become inner boundaries).
    MultiPoint, MultiLineString, MultiPolygon, GeometryCollectionOne placemark containing a MultiGeometry with each part.
    A properties value you chooseThe placemark name.
    All other propertiesA table in the placemark's balloon and data fields (ExtendedData) that GIS software can read back. Nested objects and arrays are written as JSON text.
    A third coordinate (elevation)Altitude, only if you tick the box. Off by default so shapes stay on the ground.
    Coordinates in [longitude, latitude] orderLongitude, latitude, in the same order KML uses. No reordering is needed.

    Styling

    You can set one style for the whole file: point colour, line or outline colour, line width, polygon fill colour and opacity, or no fill. Styling per feature or per category is not applied. For that, load the KML into KML Studio.

    Common problems and how to fix them

    The page says the coordinates are not longitude/latitude

    GeoJSON is defined in WGS 84 longitude and latitude (longitude from -180 to 180, latitude from -90 to 90). If your file contains large numbers, such as UTM metres or Web Mercator values, it was exported in a projection. Reproject it to WGS 84 first, for example with the CRS Converter or in QGIS.

    Everything is in the wrong hemisphere or in the ocean

    Longitude and latitude may be swapped. GeoJSON puts longitude first. A file with latitude first will place features at the wrong location, and anything with a latitude beyond 90 is rejected. Fix the order in the source file.

    It says no features were found

    The file needs a FeatureCollection, a Feature or a geometry object at the top. Newline-delimited GeoJSON (one feature per line) is not a single JSON document and is not read.

    Some features are missing

    Features with no geometry (null) and features with coordinates outside the valid range are left out. The page lists how many.

    What this converter does and does not do

    • WGS 84 only. The numbers are used as they are. An old-style crs member that names another system produces a warning, but no reprojection is done. For projected files use the CRS Converter first.
    • Not exported: per-feature styling, time stamps, camera views and images.
    • Runs in your browser. Nothing is uploaded and there is no signup, so the practical size limit is your computer's memory.
    • One file at a time. A FeatureCollection becomes one KML document with one placemark per feature.

    GeoJSON or KML: what is the difference?

    GeoJSON is a lightweight JSON format used by web maps and APIs. It stores geometry and properties but no styling. KML is an XML format that Google Earth and Google My Maps open directly, with styling and a balloon for each place. Convert to KML to look at or share GeoJSON data in Google Earth. For the shapefile route use Shapefile to KML.

    Frequently asked questions

    How do I convert GeoJSON to KML?

    Drop the .geojson or .json file onto the converter, check the preview, then click Download KML or Download KMZ. Each feature becomes one placemark.

    Is it free, and do I need an account?

    It is free and needs no account or signup. The file is read in your browser and never uploaded.

    Which GeoJSON files does it accept?

    A FeatureCollection, a single Feature, or a bare geometry (Point, LineString, Polygon, the Multi types and GeometryCollection). Files with the extension .geojson or .json both work.

    Are the properties kept?

    Yes. The property you choose becomes the placemark name. All properties are written as a balloon table and as ExtendedData data fields. You can switch them off to get a smaller file. Nested objects and arrays are written as JSON text.

    Why does it say the coordinates are not longitude/latitude?

    GeoJSON uses WGS 84 longitude and latitude. Values outside -180 to 180 for longitude or -90 to 90 for latitude mean the file is in a projection such as UTM or Web Mercator. Reproject it to WGS 84 first.

    Does it reproject my data?

    No. It uses the numbers as they are, because both GeoJSON and KML are defined in WGS 84. For a projected file, use the CRS Converter first, or convert a shapefile with Shapefile to KML, which reads the .prj file.

    Does it keep holes in polygons?

    Yes. Holes become inner boundaries in the KML. Ring direction is corrected so outer boundaries run counter-clockwise and holes clockwise.

    What happens to MultiPolygon and GeometryCollection?

    Each becomes one placemark that holds a MultiGeometry with all the parts.

    Can I choose the colours?

    Yes: point colour, line or outline colour, line width, polygon fill colour and opacity, or no fill. The same style is used for the whole file.

    Can it write KMZ as well as KML?

    Yes. KMZ is a zipped KML. The page compresses it with the browser's built-in compression and falls back to an uncompressed but valid KMZ if the browser cannot compress.

    What about elevation values?

    If your coordinates have a third value, a tick box lets you write it as the altitude. It is off by default so shapes sit on the ground in Google Earth.

    Why are some features missing?

    Features with a null geometry, and features whose coordinates are out of range, are left out. The page tells you how many.

    Is there a file size limit?

    There is no fixed limit, but the work happens in your browser's memory. Very large files can be slow, especially on a phone.

    How do I convert KML back to GeoJSON?

    Use KML to GeoJSON, which reads KML or KMZ and writes GeoJSON with the names, descriptions and custom data as properties. This page only converts to KML and KMZ.

    Related tools and guides

    Need survey data cleaned, projected or mapped at scale? Sagarmekhla GIS Consultancy offers GIS and remote sensing services.

    Request a consultation

    Last updated 2026-10-15. Published by Sagarmekhla GIS Consultancy.