Free online tool · nothing stored

Add elevation to GPX

Missing or noisy altitude? Get clean values from a terrain model.

🔒 What happens to your file: Your file is sent to the Reisezoom server for processing, handled there and deleted immediately — nothing is stored. This also contacts an outside service: OpenTopoData (coordinates of sample points along your track — roughly one every 90 m, not every point, at most 600). In detail: what goes where.

Want to turn this into a video?

The free desktop app animates your track as a map fly-through video, makes elevation animations, tour images and photo geotagging — all in one, for YouTube & Reels.

Get the desktop app →

Step by step

  1. Load your track

    Drop the file above — any of GPX, FIT, TCX, KML/KMZ, GeoJSON, NMEA.

  2. Pick the terrain model

    Europe (25 m) is noticeably finer — use it whenever your tour is in Europe. Worldwide (90 m) covers the rest of the planet.

  3. Choose the approach

    Only fill gaps when your track has partial elevation, replace all when the profile is noisy and the climbing numbers look inflated.

  4. Apply and compare

    The result shows ascent before → after. Download as GPX (or five other formats) and check the elevation profile.

  5. Privacy note

    Coordinates (one per ~90 m) go to opentopodata.org for the lookup — that is the whole reason this tool can work without huge downloads. If that is not okay for a track, don't run this tool on it.

Many phones record tracks without any elevation, and GPS altitude is notoriously noisy — a flat ride suddenly claims 800 m of climbing. This tool looks the altitude up in a terrain model instead: Europe at 25 m resolution, worldwide at 90 m. It can fill only the gaps or replace everything to de-noise the profile. One heads-up: this is the only tool here that queries an outside service (opentopodata.org) — about one sample every 90 metres is sent, never your whole track.

FAQ

What happens to my file?

Your file is sent to the Reisezoom server for processing, handled there and deleted immediately — nothing is stored. So that the web tool and the desktop app arrive at the same number, both use the same component — and that one runs on the server.

Where does the elevation come from?

From open terrain models: EU-DEM (Europe, 25 m grid) or SRTM (worldwide, 90 m grid) via opentopodata.org. The tool samples anchor points every ~90 m along your track and interpolates between them.

Fill gaps or replace everything?

“Only fill gaps” keeps your barometer readings and completes the rest. “Replace all” swaps every value for terrain data — the right choice when your ascent numbers are obviously inflated.

Why does the ascent drop after replacing?

Because GPS noise is gone. A drop from, say, 277 m to 232 m on the same tour means the difference was measurement jitter, not real climbing.

What about bridges and tunnels?

A terrain model only knows the ground. On a bridge you get the valley floor, in a tunnel the mountain above you. For those passages, recorded barometer data is better — use “only fill gaps”.

All free GPS tools

View and analyse

Cut and arrange

Repair

Photos and blog

Convert format

All conversions
Full tool

Feedback

Something off, an idea or a wish? Tell us — thanks!