Skip to content
geodata.plus
Documentation

Convert KML to GPX Online — Free GIS Converter

Convert KML routes, tracks, and waypoints to GPX for Garmin devices, Strava, AllTrails, and GPS navigation apps.

Updated May 2026

Convert KML files containing routes, tracks, and waypoints into GPX format — the universal exchange format for Garmin GPS devices, Strava, AllTrails, Komoot, and every major outdoor navigation app.

Why convert KML to GPX?

Google Earth and Google Maps export routes and place markers as KML, but GPS devices and activity-tracking apps speak GPX. If you've planned a hiking route or marked waypoints in Google Earth and want to load them onto a Garmin, export them to Strava, or share them on AllTrails, you need GPX. The conversion is straightforward because both formats are XML-based and both use WGS 84 coordinates — the main work is mapping KML geometry types to their GPX equivalents (placemarks become waypoints, paths become tracks or routes).

This conversion is especially common among hikers, cyclists, trail runners, and outdoor educators who plan routes in Google Earth's 3D environment and then push them to GPS hardware.

Why use geodata.plus

  • Free tier: convert up to 3 files per month at no cost
  • Automatic geometry mapping: KML points → GPX waypoints, KML paths → GPX tracks
  • WGS 84 to WGS 84 — no reprojection needed, coordinates transfer exactly
  • Browser-based — no Garmin BaseCamp or GPSBabel install required
  • Encrypted upload (TLS); files stored in Cloudflare R2, automatically deleted after 2 days (free) or 7 days (Pro)
  • Output is a single clean .gpx file

How it works

  1. Upload your KML file to geodata.plus
  2. geodata.plus identifies KML geometry types (placemarks, paths, polygons)
  3. Select GPX as the output format
  4. Download your .gpx file — ready to load into Garmin, Strava, or any navigation app

KML format

KML is an XML-based vector format developed for Google Earth that supports rich geometry and styling. Points are stored as placemarks, linestrings as paths, and polygons as area boundaries. All coordinates are in WGS 84. KML also stores elevation data in the <altitudeMode> tag when present.

| Property | Value | |---|---| | Extension | .kml | | Type | Vector, single-file XML | | Coordinate system | WGS 84 (EPSG:4326) only | | Geometry types | Point, LineString, Polygon, MultiGeometry | | Common software | Google Earth, Google Maps, ArcGIS, QGIS |

GPX format

GPX (GPS Exchange Format) is an XML schema designed specifically for GPS data interchange. It defines three data types: waypoints (single named points), routes (ordered list of waypoints defining a planned path), and tracks (recorded sequences of timestamped trackpoints). GPX does not support polygon geometry — area boundaries must be represented as closed tracks or routes. All coordinates are in WGS 84.

| Property | Value | |---|---| | Extension | .gpx | | Type | Vector, single-file XML | | Coordinate system | WGS 84 (EPSG:4326) only | | Geometry types | Waypoint, Route, Track (no polygons) | | Common software | Garmin devices, Strava, AllTrails, Komoot, OsmAnd |

Frequently asked questions

What happens to KML polygons during conversion to GPX? GPX does not support polygon geometry. KML polygon boundaries are converted to closed tracks (a sequence of trackpoints where the last point matches the first), which preserves the shape for navigation purposes. However, polygon fill and area semantics are lost. If accurate area representation is important, consider converting to GeoJSON or GeoPackage instead.

Will elevation data from Google Earth carry over into the GPX file? If your KML includes altitude values in the coordinates (three-component lon,lat,alt tuples with an absolute altitude mode), those elevation values are written to the GPX <ele> tag on each waypoint or trackpoint. KML features using clampToGround altitude mode do not carry real elevation data, so the resulting GPX will have no elevation values for those features.

My KML has dozens of named placemarks — will the names appear in my GPS device? Yes. KML <name> elements on placemarks are mapped to the GPX <name> tag on waypoints. Most Garmin devices, Strava, and AllTrails display these names when you load the file. Descriptions from KML <description> tags are also carried into the GPX <desc> field for devices and apps that display it.

kmlgpxconvertgis