GPX Track
A GPX track with timestamped trackpoints and elevation — for testing route parsers and mapping tools.
<?xml version="1.0" encoding="UTF-8"?>
<gpx version="1.1" creator="Novus Examples" xmlns="http://www.topografix.com/GPX/1/1">
<trk>
<name>Sample Track</name>
<trkseg>
<trkpt lat="51.5074" lon="-0.1276"><ele>10</ele><time>2026-01-01T09:00:00Z</time></trkpt>
<trkpt lat="51.5080" lon="-0.1270"><ele>12</ele><time>2026-01-01T09:01:00Z</time></trkpt>
<trkpt lat="51.5086" lon="-0.1265"><ele>11</ele><time>2026-01-01T09:02:00Z</time></trkpt>
</trkseg>
</trk>
</gpx>
Specifications
- Format
- GPX 1.1
- Tracks
- 1
- Segments
- 1
- Trackpoints
- 3
- Has Elevation
- true
- Has Time
- true
- Encoding
- UTF-8
What is a .gpx file?
GPX (GPS Exchange Format) is an XML schema for GPS data, storing waypoints, routes, and tracks with coordinates, elevation, and timestamps. It is the standard interchange format for GPS devices and fitness and navigation apps. Track points capture recorded movement over time.
How to use this file
Use an example GPX file to test GPS track parsing, elevation and timestamp handling, and tools that import routes or visualize recorded activity.
How to use this file for testing
“GPX Track” is a deterministic Novus Examples fixture for Geospatial. GeoJSON, GPX, and KML files with points, lines, polygons, and tracks — for testing map tools, route parsers, and geo importers.
Documented properties for this file: UTF-8 · GPX 1.1. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.
Code examples
import gpxpy # pip install gpxpy
with open("track.gpx") as f:
gpx = gpxpy.parse(f)
print(sum(len(t.segments) for t in gpx.tracks), "segments")Related files
- geojsonGeoJSON SampleA GeoJSON FeatureCollection with a point, a line, and a polygon — for testing map tools and geo importers.

- kmlKML PlacesA KML document with named placemarks — for testing Google Earth / mapping importers.

- geojsonWorld Cities (40 points, GeoJSON)The same 40 world cities as a GeoJSON FeatureCollection of Points (longitude, latitude order per RFC 7946), each with name, country, and population properties. The mapping twin of the CSV, for testing GeoJSON parsers and map renderers.

- csvWorld Cities (40 rows, CSV)A curated world-cities dataset — 40 major cities with country, latitude, longitude, and population. A realistic geospatial fixture for testing map plots, geocoding, and CSV→GeoJSON conversion. GeoJSON twin included.

- csvReal-estate Listings (CSV, 30 rows)A property-listings dataset — 30 homes with address, type, price, beds/baths, size, year built, coordinates, and status. Synthetic data for testing listing importers, map plots, and price analytics.

- jsonReal-estate Listings (JSON, 30 records)The property listings as a JSON array — the format twin of the CSV, for import and mapping tests.

Generated by generation/data_formats.py. Free for any use, no attribution required — license.