How to use this RPE calculator
- Enter the load and repetitions from a completed set.
- Enter your estimated set RPE, from 6 to 10.
- Choose target repetitions and target RPE, then select Calculate to compare the illustrative load and assumed reps in reserve.
The formula and method
This tool uses a resistance-training repetitions-in-reserve assumption: RIR = 10 − RPE. Under that convention, RPE 8 corresponds to an estimate of two repetitions remaining.
Effective repetitions = completed repetitions + RIR. The heuristic estimated 1RM uses the Epley factor 1 + effective repetitions ÷ 30, except an effective single repetition uses a factor of 1. Target load = heuristic estimated 1RM ÷ the corresponding target factor.
The form accepts RPE 6–10 and one to ten completed or target repetitions. Either combination must have effective repetitions of 12 or fewer. This extension of Epley is an explicitly chosen heuristic, not an official RTS percentage chart or a validated individual load prescription.
Worked example
If you complete 5 reps with 100 kg at RPE 8 (2 reps in reserve), your effective reps equal 5 + 2 = 7 reps. Estimated 1RM = 100 × (1 + 7/30) = 123.3 kg. To find your target load for 5 reps at RPE 9 (1 RIR, effective 6 reps): Target Weight = 123.3 / (1 + 6/30) = 102.8 kg.
Understanding the estimate
- RPE is subjective, and an inaccurate RIR estimate directly affects the result.
- The extension assumes additional repetitions follow the chosen Epley relationship; that is not guaranteed.
- The displayed load does not assess readiness, technique or a suitable next training attempt.
Frequently asked questions
Is this the Borg 6–20 scale?
No. This tool uses a resistance-training RIR-based convention, with inputs restricted to RPE 6–10.
Can I use half points?
Yes. The input supports half points. The arithmetic treats RPE 8.5 as an estimated 1.5 repetitions in reserve.
Why does the same target give the same load?
When completed and target repetitions and RPE match, the same factor appears in the numerator and denominator, returning the entered load.
