Metric | Value | Copy |
---|---|---|
Scale | {{ scaleLabel }} | |
RPE | {{ displayRPE }} | |
Normalized intensity (%) | {{ intensity_pct.toFixed(2) }} | |
Equivalent CR10 | {{ cr10_equiv.toFixed(2) }} | |
Equivalent Borg | {{ borg_equiv.toFixed(2) }} | |
Estimated RIR | {{ rir }} | |
Est. % of 1RM | {{ est_1rm_pct.toFixed(2) }} | |
Estimated HR (bpm) | {{ est_hr ? Math.round(est_hr) : '—' }} | |
sRPE (CR10 × min) | {{ sRPE.toFixed(0) }} | |
Load band | {{ load_band }} |
Rate of perceived exertion is a simple way to describe how hard exercise feels on a gradual scale. A practical rate of perceived exertion calculator turns that feeling into comparable numbers so sessions line up across days. The result makes it easier to plan, track, and adjust effort.
You choose a scale, set a value, and optionally add age, resting heart rate, and minutes. The calculation converts effort to normalized intensity and estimates heart rate, reps in reserve, percent of one rep max, and session load. A compact label summarizes the current load band so planning feels clearer.
For example, a steady selection for a forty five minute session can land in the moderate band and support an easy aerobic day. A near maximal choice pushes estimated heart rate higher and reduces reps in reserve, so you can back off or commit with intent based on the plan.
Perception shifts with sleep, heat, and mood, so treat any single reading as a guide. Consistent timing, similar conditions, and repeating familiar sessions improve signal quality and help you see trends rather than noise.
Choose perceived effort when devices are not handy or when you want a body based anchor for pacing. Use external metrics when you need exact pace or power for strict intervals.
The calculator centers on Rate of Perceived Exertion scales that map a subjective effort to a normalized effort fraction over a session. Three families are supported: the Borg 6–20 scale, the CR10 category‑ratio scale, and a strength‑training 1–10 scale interpreted through reps in reserve. From the normalized effort, the engine derives intensity as a percentage, an equivalent CR10 value, estimated heart rate, session load, and a coarse estimate of percent of one repetition maximum.
Normalized effort starts with the selected scale and value, then an optional mapping adjusts curvature to reflect “easier early” or “steeper late” perceptions. Results include a banded session load to clarify whether the workload is light, moderate, hard, or very hard. Heart rate estimates use either a direct percentage of maximal heart rate or a heart rate reserve approach when a resting value is present.
Interpretation focuses on the relationships: higher perceived effort raises normalized intensity, increases estimated heart rate, lowers reps in reserve, and elevates session load. Near band edges, small changes can tip a label, so read adjacencies with context and consider repeating the same session to confirm.
Symbol | Meaning | Unit/Datatype | Source |
---|---|---|---|
x | Input value on chosen scale | number | Input |
f | Normalized effort fraction | 0–1 | Derived |
I | Normalized intensity | % | Derived |
CR10 | Equivalent CR10 value | 0–10 | Derived |
RIR | Reps in reserve estimate | integer | Derived |
%1RM | Percent of one repetition maximum | % | Derived |
HRmax | Estimated maximal heart rate | bpm | Derived |
HRrest | Resting heart rate | bpm | Input |
HR | Estimated heart rate at effort | bpm | Derived |
minutes | Session length | min | Input |
Load | Session RPE training load | CR10×min | Derived |
A mid‑range perception yields mid‑range intensity, moderate session load, a manageable heart rate, and roughly five reps left.
Threshold Band | Lower Bound | Upper Bound | Interpretation | Action Cue |
---|---|---|---|---|
Light | 0 | 149 | Recovery or easy day | Keep conversational pace |
Moderate | 150 | 299 | Purposeful but steady | Hold steady, finish fresh |
Hard | 300 | 449 | Challenging workload | Plan extra recovery |
Very Hard | 450 | ∞ | Near‑max cumulative stress | Use sparingly, monitor |
Field | Type | Min | Max | Step/Pattern |
---|---|---|---|---|
Scale | enum | — | — | Borg 6–20 · CR10 0–10 · Strength 1–10 |
RPE (Borg) | number | 6 | 20 | step 1 |
RPE (CR10) | number | 0 | 10 | step 0.1 |
RPE (Strength) | number | 1 | 10 | step 0.1 |
Age | integer | 0 | — | step 1 |
Resting heart rate | integer | 0 | — | step 1 |
Session minutes | integer | 0 | — | step 1 |
HRmax formula | enum | — | — | Tanaka · Fox · Gulati |
Mapping | enum | — | — | Linear · Mild bias · Hard bias |
Input | Accepted Families | Output | Encoding/Precision | Rounding |
---|---|---|---|---|
Numbers | Integer and decimal | Metrics table | Two decimals where shown | Conventional rounding |
— | — | CSV | UTF‑8 text | As displayed |
— | — | JSON | Indented with keys | Exact numeric values |
Scales and formulas referenced in the interface include the Borg 6–20 scale, the CR10 scale, and maximal heart rate estimates labeled Tanaka, Fox, and Gulati. Names are shown for user familiarity and reflect well‑known conventions in exercise testing.
No data is transmitted or stored server‑side. Estimates are educational and not medical prescriptions.
Perceived exertion to training intensity and load.
Example: CR10 of 5 for 40 minutes produces a load of 200 and usually reads as moderate.
Use the load band to balance hard and easy days.
No. Calculations run locally and exports are created on your device only.
Nothing is sent to a server.It is an estimate based on maximal heart rate formulas and, when provided, heart rate reserve. Treat results as guides rather than targets.
Population formulas vary by person.Heart rate is in bpm, session length in minutes, intensity in percent, and session load is CR10 multiplied by minutes.
Decimal separator is a dot.Yes. Intensity and load still compute. Heart rate estimates require age and improve further with resting heart rate.
Set age to enable heart rate.The strength scale maps to a proxy from 1 to 10, then RIR is rounded from the difference to 10 and %1RM subtracts 5% per rep with a 50% floor.
This is a coarse heuristic.Values near a threshold can flip labels with small changes. Use context and compare against similar sessions rather than chasing single numbers.
Repeat on another day to confirm.