Extended data in GPX and KML files
Besides coordinates, elevation and time, Geo Tracker can write extra details about every track point to exported GPX, KML and KMZ files: speed, course, accuracy, time zone, location source and satellites. Geo Tracker reads these fields back when you import the file, and you can use them to analyze your tracks in other tools.
Extended data is written only if Export extended data is turned on in Settings → Data, under Export. Turn it off if you don’t need these details and want smaller files.
Track point fields
Section titled “Track point fields”A field is written only if the point has a value for it. Which values a point has depends on the device and the location source.
| GPX | KML | Meaning | Unit or values |
|---|---|---|---|
c | course | Direction of movement, clockwise from true north | Radians, 0 to 2π (≈ 6.28); multiply by 57.3 for degrees |
s | speed | Speed | Meters per second |
a | accuracy | Horizontal accuracy | Meters |
va | verticalAccuracy | Vertical accuracy | Meters |
sa | speedAccuracy | Speed accuracy | Meters per second |
ca | courseAccuracy | Course accuracy | Degrees |
tz | tzOffset | Time zone offset from UTC at the moment of recording | Seconds, e.g. 7200 for UTC+2 |
src | source | Location source | 1 device, 2 network, 3 Bluetooth receiver, 4 accessory |
su | satellitesUsed | Satellites used for the position | Count |
sv | satellitesVisible | Satellites visible | Count |
hdop | hdop | Horizontal dilution of precision | Number, lower is better |
fq | fixQuality | NMEA fix quality | 1 GPS, 2 DGPS, 4 RTK fixed, 5 RTK float, and so on |
mock | mock | Position from a mock location app | 1 yes, 0 no |
dev | sourceDevice | Name of the Bluetooth receiver | Text |
Where the values come from:
- Location source:
1is the device’s own location. On Android this is its built-in satellite receiver; on iPhone, iOS doesn’t say which source it used.4is an iPhone-certified (MFi) receiver that passes its position to iOS. See Record with a Bluetooth GNSS receiver. - Satellites (
su,sv) are written on Android and for Bluetooth receivers connected in Geo Tracker. iOS doesn’t share satellite details with apps. - HDOP and fix quality (
hdop,fq) come only from Bluetooth receivers connected in Geo Tracker. - Time zone (
tz) comes from the device’s time zone setting, so make sure it’s correct. - Mock is left out when the platform can’t tell whether a position is simulated.
In GPX files, the fields are attributes of a <geotracker:meta> element in the <extensions> of each <trkpt>. The geotracker prefix is declared on the root element as xmlns:geotracker="http://ilyabogdanovich.com/gpx/extensions/geotracker". The namespace URL leads to this page.
<trkpt lat="47.12345678" lon="8.54321000"> <ele>450.00</ele> <time>2026-09-05T14:23:00Z</time> <extensions> <geotracker:meta c="2.36" s="2.85" a="4.00" va="3.00" tz="7200" src="3" su="18" sv="27" hdop="0.80" fq="4" mock="0" dev="My GNSS receiver" /> </extensions></trkpt>Here the point was recorded with a Bluetooth receiver (src="3") with an RTK fixed solution (fq="4"), moving southeast (c="2.36", about 135°) at 2.85 m/s (about 10.3 km/h), in a time zone 2 hours ahead of UTC.
KML and KMZ
Section titled “KML and KMZ”A KMZ file is a zipped KML file, so both contain the same fields. In KML, they’re stored in the KML extended data format by Google:
- The document declares a
Schemawith the IDgeotrackerTrackSchema, with agx:SimpleArrayFieldfor each field and its description indisplayName. - Each
gx:Trackhas anExtendedDataelement with aSchemaDatathat refers to this schema. It holds onegx:SimpleArrayDataper field, with onegx:valueper track point in the order of thewhenandgx:coordelements. A point without a value has an emptygx:value.
<gx:Track> <when>2026-09-05T14:23:00Z</when> <when>2026-09-05T14:23:01Z</when> <gx:coord>8.54321000 47.12345678 450.00</gx:coord> <gx:coord>8.54325000 47.12342000 450.20</gx:coord> <ExtendedData> <SchemaData schemaUrl="#geotrackerTrackSchema"> <gx:SimpleArrayData name="speed"> <gx:value>2.85</gx:value> <gx:value>2.90</gx:value> </gx:SimpleArrayData> <gx:SimpleArrayData name="accuracy"> <gx:value>4.00</gx:value> <gx:value>3.50</gx:value> </gx:SimpleArrayData> </SchemaData> </ExtendedData></gx:Track>Trip, track and marker fields
Section titled “Trip, track and marker fields”Geo Tracker also saves a few details about the trip, its tracks and markers. These are written whether Export extended data is on or off.
| GPX | KML | Meaning |
|---|---|---|
geotracker:comment in <metadata> | Data named comment | Trip or track comment |
geotracker:length in <trk> | — | Track length, meters |
geotracker:duration in <trk> | TimeSpan of the track | Recording duration; in GPX, milliseconds |
geotracker:creationtime in <trk> | begin of the TimeSpan | Start of the recording |
geotracker:activity in <trk> | Data named activity | Activity: 0 not set, 1 skiing |
visited attribute of a waypoint | Data named visited | 1 if you have visited the marker |
emoji attribute of a waypoint | Data named emoji | The marker’s emoji |
generated attribute of a waypoint | Data named generated | 1 for markers Geo Tracker created automatically, such as stop markers |
<type> of a route point | Data named maneuver | Route guidance maneuver: L turn left, R turn right, U U-turn |
In GPX, the track fields are elements inside <extensions><geotracker:meta>, and the marker fields are attributes of <geotracker:meta>.