The full version of what the home page states in one line each. Nothing here needs an e-mail address or an install.
| Session | Other cues per 30 min (excl. splits, hills, pauses) |
|---|---|
| Easy · long · run-walk | up to 8 |
| Tempo · race · free run | up to 6 |
| Intervals | no cap — what you leave switched on decides how often it speaks. In exchange, intervals carry only the step, heart-rate zone, pace and auto-pause cues: splits, hills, form and encouragement stay quiet |
Training load, recovery time, an estimated lactate threshold, a race pace plan — the numbers people are told they need a running watch like a Garmin Forerunner or a Coros to see. Companies already do this inside their own hardware; what nobody was doing was doing it on an Apple Watch. Runvis computes the same numbers from the heart rate, GPS and barometric altitude your Apple Watch already recorded. A dedicated watch does not publish its formulas, so we will not claim they are the same ones. What we will do is name ours: every formula below is a published, named one. Inside the app each metric opens onto what it means, how it was computed and your own usual range.
| Metric | What Runvis computes it with, and what that formula is called |
|---|---|
| What you have to buy | A Garmin Forerunner or a Coros is a watch you buy. Runvis runs on the Apple Watch already on your wrist; the only purchase is the coach subscription. |
| Training load and form (TSB) | Banister TRIMP fed into Coggan’s 42-day and 7-day exponential moving averages (CTL and ATL); the difference between them is TSB. |
| Recovery time | Estimated from three things: the last run’s TRIMP, your current TSB and your HRV status. The screen says “estimated” too. |
| Lactate Threshold (est.) | The pace and heart rate of your best 30-minute (or 20-minute) stretch held above 85% of maximum heart rate in the last 90 days. An estimate read off your runs, not a lab blood draw. |
| Race prediction and segment pace plan | Riegel extrapolation plus Runvis VDOT. Give it a course GPX and it splits the pace segment by segment along that course’s elevation. |
| Grade-adjusted pace (GAP) | Minetti’s (2002) running energy-cost curve, with the cost of climbing and descending worked out separately. |
| The five heart-rate zones | Karvonen, over heart-rate reserve; with no known maximum it falls back to 208 − 0.7 × age. The calculator below is the same arithmetic. |
| Intensity mix | When a run has a heart-rate series and your maximum heart rate was actually observed, its minutes are split into easy, moderate and hard at 78% and 88% of maximum. Without the series — or with only the age-formula maximum — the run’s single average heart rate picks the band, and an interval session can then land in the grey middle; the screen says which of the two it used. |
| Hill exposure | Total ascent divided by total distance over the last 28 days, counting only runs that climbed (at least two of them): metres per kilometre. 15 and above is rolling, 40 and above is hilly. It describes the ground you ran, not you. |
| Heat exposure index | How much outdoor running you have stacked up above 22°C (or the same temperature in Fahrenheit, if that is your unit setting) over four weeks, on a 0–100 scale. It appears after three hot-weather runs and falls again after three days off. It is exposure, not a measurement of physiological adaptation. |
| Coach's Brake | A budget, not a score. The last four completed weeks of distance set what this week can absorb, and the pain reports you leave after runs cut into it. The kilometres left and the kilometres the pain reports removed are shown separately, so the cut is explainable. |
| Coach's Record Radar | Runs with a GPS route are scanned inside the run for the fastest stretch at each distance; runs without a route are projected from the finishing average pace. Each record says which of the two it is. The window is the last 90 days. |


Captured with the app running in this language.
Garmin, Forerunner and Coros are trademarks of their respective owners. Runvis is not affiliated with either company. Only published facts are stated here — neither company publishes its formulas, so no accuracy comparison is made.
What a dedicated watch does and Runvis does not, written down too: there is no watch-face complication, no iPhone home-screen widget and no Live Activity in this version. And every number above is reference information, not medical advice.
The same Karvonen arithmetic Runvis speaks from. In the app the inputs keep refreshing — a seven-day resting heart rate from Apple Health, and the highest heart rate your watch has actually recorded — but the calculation is the one below.

Zone floor = (max HR − resting HR) × 50/60/70/80/90% + resting HR. With the maximum left empty it is estimated as 208 − 0.7 × age. Reference arithmetic, not medical advice.
The GPX files for the 13 Seoul courses the app uses. No signup, no install — download them now and load them into another watch or map app. Distances are written in km in all six languages: a GPX file carries no unit of its own, and the device you load it into does the converting.
Namsan North Loop 6.7km · Namsan Summit Climb 4.0km · Bugak Skyway 5.2km · Ansan Jarak Trail 6.1km · Inwangsan Jarak Trail 2.9km · Naksan Park City Wall 2.1km · Eungbongsan Stairs 1.6km · Dorimcheon Stream 14.5km · Banpo Han River Park 5.0km · Tancheon Stream 7.1km · Yangjaecheon Stream 3.9km · Cheonggyecheon Stream 5.5km · Seoul Forest Loop 2.0km
Routes from OpenStreetMap road and path data; elevation from Copernicus DEM / NASA SRTMGL1 (public domain). © OpenStreetMap contributors · ODbL 1.0.