Note: This page describes an obsolete version of GPSBabel that may substantially differ from the current or development version.

GPX XML (gpx)

This format can...

  • read and write waypoints

  • read and write tracks

  • read and write routes

This format has the following options: snlen, suppresswhite, logpoint, urlbase, gpxver, humminbirdextensions, garminextensions, elevprec .

This is one of the most capable and expressive formats of all the file formats supported by GPSBabel. It is described at and is supported by EasyGPS, ExpertGPS, and many other programs described at

GPSBabel's reader of this module attempts to preserve tags it doesn't really understand. It also tries to glean interesting data from:

snlen option

Length of generated shortnames.

When used with the -s to control shortnames, the snlen suboption to GPX controls how long the generated smartname will be. This can be useful for cases like writing GPX files to a GPS that has a fixed waypoint name length.

suppresswhite option

No whitespace in generated shortnames.

When used with the -s to generate smart shortnames, this suboption controls whether whitespace is allowed in the generated shortnames.

logpoint option

Create waypoints from geocache log entries.

When reading Groundspeak Pocket Queries , the logpoint option creates additional waypoints from the log entries.

A typical use for this is to get coordinates read from "corrected coordinates" logs.

urlbase option

Base URL for link tag in output.

This is a fairly esoteric option. If the GPX file you are reading has only base pathnames (e.g "foo.html") the value you specify to this argument will be prepended to that. For example, "-o gpx,urlbase=c:\My Documents\Whatever" would result in the link to that waypoint being written to refer to c:\My Document\WHatever\foo.html

gpxver option

Target GPX version for output.

This option specifies the version of the GPX specification to use for output. The default version is 1.0 unless one or more of the input files is GPX 1.1, then it's 1.1. The only other valid value for this option is 1.1.

Notice that this is not a full scale XML schema conversion. In particular, if you have a GPX 1.0 file that has extended namespaces in it (such as a pocket query from just writing it with this option will result in a horribly mangled GPX file as we can't convert the schema data.

humminbirdextensions option

Add info (depth) as Humminbird extension.

Implies gpxver=1.1

garminextensions option

Add info (depth) as Garmin extension.

Write Garmin-specific extensions, when such data is available, to the GPX. Notably, depth, temperature, proximity, display color, ambient temperature, heart rate, and cadence are read when they are available in the source data. This data can, of course, only be read by GPX readers that know about the Garmin gpxtpx and gpxx extended namespaces.

Implies gpxver=1.1

elevprec option

Precision of elevations, number of decimals.

This option specifies the number of digits to be used when writing elevation values. Precision is the number of digits after the decimal point. The default precision is 3. We limit the number of places we write to improve the fidelity when round-tripping elevation, reduce file size, and reduce silliness in files caused by repeating decimals in insignificant digits.

As a guideline, three decimal places is 1 millimeter. To achieve precision approaching this limit leveling techniques are required. Precisions beyond this are not currently obtainable.

This value is ignored on read and has no impact on the internal representation of data.