The ledger
1.0 years on record
2,773 km
across 261 runs and 221 hours, since September 2025.
That is 6.9% of the way round the equator.
Next milestone
5,000 km
2,227 km to go.
Habit
Streaks are counted in weeks, not days, and that is a deliberate choice. A daily streak rewards running on the days you should not, which is how people get hurt. A week with a run in it is a habit; a run every single day is a compulsion with a badge attached.
2026 so far
against the same point last year
Last year's record does not go back far enough to compare against -- this is effectively your first full year.
Compared like for like: only the part of last year that had happened by this date counts, because eleven months against twelve is not a decline.
Year by year
2 years
| Year | Distance | Runs | Hours | Longest | Ascent | |
|---|---|---|---|---|---|---|
| 2026 so far | 1997 km | 178 | 158 | 25.5 km | 17953 m | |
| 2025 | 776 km | 83 | 62 | 19.9 km | 8079 m |
Everything you have climbed
2.9 Everests
Everest is 8849 m, in the Himalaya. How you climb →
, so the check has to wait for the parsed document. addEventListener('DOMContentLoaded', function () { try { var dm = ['standalone', 'minimal-ui', 'fullscreen', 'window-controls-overlay']; if (!document.getElementById('frozen-note') && (navigator.standalone || dm.some(function (m) { return matchMedia('(display-mode: ' + m + ')').matches; }))) { var pk = 'portal-installed', reg = JSON.parse(localStorage.getItem(pk) || '{}'); reg.Run315 = Date.now(); localStorage.setItem(pk, JSON.stringify(reg)); } } catch (e) { /* private mode - ignore */ } }); // Installable, and readable on the train. See templates/sw.js. if ('serviceWorker' in navigator) { addEventListener('load', function () { navigator.serviceWorker.register('/Run315/sw.js'); }); }