GPX Calorie Estimator
Estimates hiking energy expenditure from a GPX, KML, or KMZ track using the Looney et al. (2020) model, per the gpxz.io writeup. Everything runs in your browser — the file is never uploaded anywhere.
—
estimated calories burned
| Distance | |
|---|---|
| Elevation gain | |
| Elevation loss | |
| Duration | |
| Average speed | |
| Track points used | |
| Mass modeled (body + pack) |
How this is calculated
Each pair of consecutive track points becomes a segment. Horizontal distance comes from the haversine formula, grade from the elevation change over that distance, and speed from the timestamps. Energy expenditure for the segment (joules per kg per second) is
EE = 1.44 + 1.94·s^0.43 + 0.24·s⁴ + 0.35·s·g·(1 − 1.05^(1 − 1.1^(g+32)))
where s is speed in m/s and g is grade as a decimal. Segment energy is
EE × mass × seconds; the total is divided by 4184 to get food calories.
- Grade is clamped to ±100% and speed to 10 m/s to keep GPS noise from blowing up the s⁴ term.
- Segments with zero or negative elapsed time are skipped.
- The model is fitted to walking and hiking. Running, cycling, and skiing are outside its range.
- The
1.44term is resting metabolism, so the default output is gross calories. - Age and sex don't appear in the model — energy is predicted per kilogram, so body mass is the only personal input that changes the answer, and it scales the result linearly.
- File type is decided by the XML root element (
gpxvskml), with the extension as a tiebreaker and GPX as the default, so a mislabeled file still works. KMZ is unzipped in the browser. - KML with a
gx:Trackhas timestamps and is as accurate as GPX. A plain<LineString>has geometry only, so the pace has to be assumed constant from the elapsed time you enter — a rougher estimate.