Route Elevation Profile Calculator
Turn a list of coordinates with elevations into the distance, the climbing and the shape of the route.
Points are read in order: each line is a latitude, a longitude and an elevation in metres, in decimal degrees. Consecutive points are joined with the haversine great-circle distance on a sphere of radius 6,371 km, so the total distance is the sum of the legs and the profile is drawn against that running distance. Ascent and descent are accumulated with a hysteresis filter: an elevation change is only counted once it reaches the ignore threshold, and the reference elevation then moves to that point, so jitter smaller than the threshold never accumulates. A threshold of 0 counts every metre, which is why the same noisy track reports more climbing at 0 than at 3. Steepest grades are taken over individual legs that are at least 20 m long, because a few metres between two dense samples turns tiny elevation noise into enormous percentages; a route whose legs are all shorter than that reports no grade. Net change is the last elevation minus the first, the elevation range is the highest point minus the lowest, and ascent per kilometre divides the total climb by the route length. Everything runs locally in your browser: no uploads, no storage, no network access, and the coordinate list never leaves the page.