RPE Summary
{{ intensity_pct.toFixed(0) }}%
Normalized intensity · Estimated HR {{ est_hr ? Math.round(est_hr) : '—' }} bpm
{{ scaleLabel }} RPE {{ displayRPE }} CR10 {{ cr10_equiv.toFixed(1) }} Borg {{ borg_equiv.toFixed(1) }} sRPE {{ sRPE.toFixed(0) }} {{ rir }} RIR {{ est_1rm_pct.toFixed(0) }}% 1RM
{{ load_band }}
years
bpm
min
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 }}

                
Estimates shown here are educational and approximate, not medical or training prescriptions.

Introduction:

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.

This tool provides informational estimates and does not substitute professional advice.

Technical Details:

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.

f=(x6)/14 for Borg 6–20 f=x/10 for CR10 (0–10) f=(x1)/9 for Strength 1–10 f=f0.85 “Mild bias” mapping f=f1.2 “Hard bias” mapping I=clamp(0,100,f×100) Intensity percentage HR=HRrest+f×(HRmaxHRrest) Heart rate reserve when resting HR is set HR=f×HRmax Otherwise, percentage of maximal heart rate HRmax=2080.7×Age Tanaka HRmax=220Age Fox HRmax=2060.88×Age Gulati Equivalent CR10=f×10 Session load=CR10×minutes Strength proxy=1+9×f RIR=max(0,round(10Strength proxy)) %1RM=clamp(50,100,1005×RIR) Lower bound at 50%
Symbols and units used by the calculator
Symbol Meaning Unit/Datatype Source
xInput value on chosen scalenumberInput
fNormalized effort fraction0–1Derived
INormalized intensity%Derived
CR10Equivalent CR10 value0–10Derived
RIRReps in reserve estimateintegerDerived
%1RMPercent of one repetition maximum%Derived
HRmaxEstimated maximal heart ratebpmDerived
HRrestResting heart ratebpmInput
HREstimated heart rate at effortbpmDerived
minutesSession lengthminInput
LoadSession RPE training loadCR10×minDerived
Worked Example
Scale=Borg, RPE=13 f=(136)/14=0.5 I=0.5×100=50% Equivalent CR10=0.5×10=5.0 Age=30, HRrest=60 HRmax=2080.7×30=187 HR=60+0.5×(18760)=123.5124 bpm Session minutes=45, Load=5.0×45=225 (Moderate) Strength proxy=1+9×0.5=5.5RIR=round(105.5)=5%1RM=75%

A mid‑range perception yields mid‑range intensity, moderate session load, a manageable heart rate, and roughly five reps left.

Session load bands and implications
Threshold Band Lower Bound Upper Bound Interpretation Action Cue
Light0149Recovery or easy dayKeep conversational pace
Moderate150299Purposeful but steadyHold steady, finish fresh
Hard300449Challenging workloadPlan extra recovery
Very Hard450Near‑max cumulative stressUse sparingly, monitor

Units, Precision & Rounding

  • Percentages and CR10 are shown with two decimals in tables; summary tiles round to whole numbers.
  • Heart rate displays as whole bpm using conventional rounding.
  • Decimal separator is a dot for numeric inputs and outputs.

Validation & Bounds

Input validation rules
Field Type Min Max Step/Pattern
ScaleenumBorg 6–20 · CR10 0–10 · Strength 1–10
RPE (Borg)number620step 1
RPE (CR10)number010step 0.1
RPE (Strength)number110step 0.1
Ageinteger0step 1
Resting heart rateinteger0step 1
Session minutesinteger0step 1
HRmax formulaenumTanaka · Fox · Gulati
MappingenumLinear · Mild bias · Hard bias

I/O Formats

Input and output formats
Input Accepted Families Output Encoding/Precision Rounding
NumbersInteger and decimalMetrics tableTwo decimals where shownConventional rounding
CSVUTF‑8 textAs displayed
JSONIndented with keysExact numeric values

Networking & Storage

  • All computations run locally; no data is transmitted to a server.
  • Copy and download actions operate on the device through standard clipboard and file APIs.

Diagnostics & Determinism

  • Identical inputs produce identical outputs across tabs and exports.
  • Charts render the same values shown in the metrics table.

Assumptions & Limitations

  • Perceived effort is subjective and varies by context.
  • Mapping choices change curvature without changing endpoints.
  • Maximal heart rate formulas are population estimates, not direct tests.
  • Heart rate reserve logic applies only when resting heart rate is below estimated maximal heart rate.
  • Session load is a simple product of CR10 and minutes; modality differences are not modeled.
  • Reps in reserve is coarse and integer‑rounded.
  • %1RM uses a fixed 5% per rep rule with a 50% floor.
  • Heads‑up Band thresholds are fixed and may not match individualized periodization.

Edge Cases & Error Sources

  • Non‑numeric input yields empty or zeroed estimates.
  • Age set to zero disables heart rate estimates.
  • Resting heart rate equal to or above maximal heart rate falls back to percentage of maximal heart rate.
  • Out‑of‑range RPE inputs are clamped to each scale’s limits.
  • Slider step differences across scales can mask tiny changes.
  • Rounding can tip values at band edges.
  • Very short sessions produce near‑zero loads even at high effort.
  • Extremely long sessions can push load into “Very Hard” despite moderate effort.
  • Locale settings that expect commas as decimals are not supported.
  • Charts require the page’s charting layer; if blocked, use the metrics table.

Scientific & Standards Backing

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.

Privacy & Compliance

No data is transmitted or stored server‑side. Estimates are educational and not medical prescriptions.

Step‑by‑Step Guide:

Perceived exertion to training intensity and load.

  1. Select a scale that matches your context.
  2. Set the effort value on that scale.
  3. Enter age to enable heart rate estimates.
  4. Add resting heart rate to use heart rate reserve.
  5. Enter session minutes to compute session load and band.
  6. Open the curve tab to see how mapping changes intensity.
  7. Copy or download metrics for logging.

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.

FAQ:

Is my data stored?

No. Calculations run locally and exports are created on your device only.

Nothing is sent to a server.
How accurate is the heart rate?

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.
Which units are used?

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.
Can I use it without age?

Yes. Intensity and load still compute. Heart rate estimates require age and improve further with resting heart rate.

Set age to enable heart rate.
How are reps in reserve and %1RM derived?

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.
What does a borderline band mean?

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.

Troubleshooting:

  • No heart rate shown: enter age to enable maximal heart rate.
  • Heart rate seems low: add resting heart rate for heart rate reserve.
  • Load band missing: enter minutes to compute session load.
  • Charts not visible: allow the page’s charting layer or use the metrics table.
  • Copy does nothing: check clipboard permissions.
  • CSV looks odd in a spreadsheet: set the delimiter to comma and encoding to UTF‑8.

Advanced Tips:

  • Tip Log at the same point in each session to improve comparability.
  • Tip Use the curve view to decide whether linear or biased mapping feels truer to your sport.
  • Tip For intervals, record the peak perceived effort of the set, not the warm‑up.
  • Tip Pair minutes with a brief note on terrain, heat, or sleep for context.
  • Tip When strength training, compare RIR and %1RM to prior weeks to gauge progress.
  • Tip Keep presets for common days, then fine‑tune the value based on feel.

Glossary:

Rate of Perceived Exertion
Subjective rating of exercise difficulty.
Borg 6–20
Legacy scale from 6 to 20 mapping to rising strain.
CR10
Category‑ratio scale from 0 to 10.
Reps in Reserve (RIR)
Estimated repetitions remaining at the set’s end.
%1RM
Percent of one repetition maximum for a lift.
Heart Rate Reserve
Difference between maximal and resting heart rate.