# \[Web\]\[Beta\] Premium threshold heart rate suggestions for cycling and running

**URL:** <https://tempo.discourse.group/t/web-beta-premium-threshold-heart-rate-suggestions-for-cycling-and-running/35>\
**Category:** What's New\
**Created:** [May 21, 2026, 2:05am UTC](https://tempo.discourse.group/t/web-beta-premium-threshold-heart-rate-suggestions-for-cycling-and-running/35 "2026-05-21T02:05:56Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Marc](https://sea1.discourse-cdn.com/flex039/user_avatar/tempo.discourse.group/marc/32/56_2.png) [@Marc](https://tempo.discourse.group/u/Marc)\
**Post date:** [May 21, 2026, 2:05am UTC](https://tempo.discourse.group/t/web-beta-premium-threshold-heart-rate-suggestions-for-cycling-and-running/35/1 "2026-05-21T02:05:56Z")

</div>

**What’s new**

Premium riders on the Web can get a **Threshold Heart Rate** suggestion in the same spirit as estimated FTP. Tempo scans your last **42 days** of qualifying **rides and runs** , finds your strongest sustained heart-rate effort in each sport, and proposes an updated lactate threshold heart rate (LTHR) using the usual **0.95 × max 20-minute average HR** correction (Coggan/Friel).

**What counts as qualifying:** at least **20 minutes** of active time with heart rate present. **Cycling** workouts also need **intensity factor ≥ 0.93** (true threshold band and above—sweet-spot rides are excluded). **Runs** need average HR at least **85% of max HR** , or at least your current LTHR when max HR is not set.

**Why it helps**

Threshold HR drives zones, time-in-zone, and HR-based coaching context across Tempo. Instead of guessing from a one-off test or leaving LTHR stale, you get a data-backed proposal from real sustained efforts—useful when fitness is moving up or down and you want a single place to accept or defer without spreadsheet math.

**How to try it**

On **Profile → Cardiovascular** you’ll see **Cycling Threshold HR** and **Running Threshold HR** , each with its own **Re-estimate** button so you can update one sport at a time. Tempo still keeps **one pending suggestion** on your account—a new estimate for either sport replaces any other pending suggestion until you accept or dismiss it.

When a suggestion is ready, the **Threshold Heart Rate** modal opens with **Cycling** or **Running** in the headline. It shows current vs suggested BPM, a change badge, and how many efforts were analyzed in the window. **Accept** saves the value for that sport. **Not now** clears the suggestion so it won’t keep popping up on every visit. Changes under about **2%** are treated as no meaningful change—the modal explains that and closes without an **Accept** step. Large **downward** moves ( **about 10% or more** ) include a short sanity-check reminder before you lower threshold HR.

**Accept** always updates the sport you’re confirming. If **General Threshold HR** is still **Not set** , accepting also fills that field and refreshes the heart rate zones on the card. If General Threshold HR is already set—typed in or from an earlier accept—accepting the **other** sport only updates that sport’s value; General Threshold HR and the zones tied to it stay as they are unless you edit them yourself. When both sport-specific values are set, Tempo can show **separate** cycling and running zone tables on the card.

A **weekly** background check can propose updates automatically for eligible Premium beta riders. On that path, if **both** sports have enough data, Tempo surfaces **one** suggestion at a time: it favors the sport with more **usable** threshold efforts (not just any ride in the window), then the larger change vs your current value for that sport, with a short footer noting the other sport’s candidate. You can also run **Re-estimate** yourself anytime from Cardiovascular— **cycling and running independently**.

**Note:** Threshold HR detection requires a **Premium** subscription and is available to **beta** testers on web while we roll it out.

**Example**

 ![Screenshot 2026-05-18 at 10.09.16 AM](https://us1.discourse-cdn.com/flex039/uploads/tempo/original/1X/b42721de317af6d8552b65a7e1eacdaa82a21a35.png)
