How to use GPXProfile
1 · Load a route
Click Open GPX/KML or drag a .gpx, .kml or .kmz
file onto the page. GPXProfile reads
<trkpt>, <rtept> and <wpt> latitude, longitude and
elevation. Files are parsed entirely in your browser — nothing is uploaded.
No file to hand? Click Sample route to load the bundled Rapid City to Omaha route straight away.
KML and KMZ files
Got a route from Google My Maps or Google Earth? Open the
.kml / .kmz file with Open GPX/KML (or just drop it on the page)
and it is converted to GPX on the spot.
Lines become the track, placemarks become waypoints — with the layer they came from kept as their
category — and the profile is drawn right away.
Save a KML as GPX
Click KML → GPX to convert a .kml / .kmz file and save the
.gpx straight to your device — pick the folder and file name yourself where your browser
supports it, otherwise it lands in your downloads. Nothing is uploaded and the route on screen is left
untouched. If no route is loaded yet, the one you just saved is drawn straight away.
2 · Read the profile
The chart plots elevation against distance, coloured by gradient. Hover anywhere for a tooltip with distance from start, elevation, grade and coordinates; the Route map highlights the matching spot. Summary stats (distance, ascent, descent, min/max) sit above the chart.
3 · Zoom and pan
Scroll to zoom, drag to pan, double-click to reset. Drag inside the strip below the chart to brush a section. Use the Range buttons (All, 50%, 25%, 10%, 5%) or type an exact percentage — a smaller range zooms around the middle of what you're already viewing, which is handy on very long routes. The elevation axis stays fixed to the whole route, so the profile never changes height as you zoom, pan or scroll.
The Route map zooms the same way — scroll or pinch to zoom, drag to pan, double-click to reset — and it snaps back to the fitted view whenever the profile changes. Every waypoint is pinned by default; the note under the map says how many are pinned and links to the map's ⚙ options, where you can switch symbols off to thin out a busy route.
4 · Climbs
Sustained climbs are detected automatically and listed with start, length, gain and average grade. Click any row to zoom the profile straight to that climb.
5 · Waypoints & POIs
Waypoints are pinned on the chart — a leader line from the exact point on the elevation curve to the name, set vertically above or below the curve wherever there is room, and tinted by category so a cluster of POIs stays readable — and listed underneath with category, distance from start, elevation, coordinates and notes. The Waypoints checkbox shows or hides them on the chart. Filter the list by name, category or notes, and click a row to jump to it. Waypoints further from the route than the limit in the Waypoints panel's ⚙ options (8 km / 5 mi by default) are left out. A POI-only GPX (waypoints, no track) can be dropped on top of a loaded route to overlay its points.
6 · Tune and export
Use the ⚙ button on the profile to switch Smoothing, grade colouring and waypoints, then the ⭳ button beside it to save the profile as a PNG. The export always covers the whole route, whatever zoom the chart is at: a wide strip six times the width of the chart on screen (same height), so every waypoint name has room. The ⚙ button in the top bar switches between light and dark themes — dark is the default — and between km / m and mi / ft, and remembers your choice.
Keyboard shortcuts
- ← → pan the view
- + − zoom in and out
- Esc reset the zoom (or close this panel)
Privacy & usage stats
Your files never leave your device — parsing, the chart and the map all run in your browser. The Route panel's map background loads tiles from OpenStreetMap, so that server sees the map area you are looking at (never your file); switch “Map background” off to stop those requests. To know which features are worth improving, this site counts anonymous events such as “a file was opened” or “PNG exported”, plus a random per-tab id and coarse buckets like point count and screen size. No file names, no coordinates, no waypoint names, no search text and no IP addresses are stored, and the counters stay on this site's own server.
Contact
Jeff Rowland
Builder and maintainer of GPXProfile
Questions, bug reports and ideas for what to build next are all welcome. A route that renders oddly is especially useful — tell me what you saw and what you expected.
Support the site
GPXProfile is free, carries no ads and never uploads your files. If it saved you an evening of route planning, a small donation keeps the lights on.
Opens PayPal's secure checkout in a new tab — no payment details ever touch this site.
Drop a .gpx, .kml or .kmz file here
or . Everything is parsed in your browser — no upload, no server.
KML and KMZ files are converted to GPX for you.
No file handy? — Rapid City to Omaha.
Track
Route
© OpenStreetMap contributors
Highlighted section matches the chart's visible range. Scroll or pinch to zoom the map, drag to pan, double-click to reset.
Climbs
Waypoints
Click a row to zoom the profile to that waypoint.