How RIRLift picks your next weight

Most lifting programs decide your weights in advance: a percentage of a max you tested once, stepped up on a schedule until a planned deload week. RIRLift works the other way round. Every weight it suggests is worked out from the sets you actually logged: the load, the reps, and how many reps you had left (RIR). This page explains what the engine reads, what it does with it, and where you stay in control.

What it reads, and what it ignores

The engine reads your logged working sets for each exercise, your routine's rep range and RIR target, and the equipment you train with. For a lift you've never done, it also uses your training profile to make a first guess. There is no week number anywhere in the calculation. Programs in RIRLift still run as journeys, with a "week 3 of 8" and a projection of where each lift is heading, but the part that picks the weight is never told which week it is. Delete your logged sets and the lift goes back to a starting estimate, because there is no planned load table underneath to fall back on.

Your reference point for each lift is updated from each session you train it, taken from your best working set, unless you've set it yourself. It isn't a max you typed in once. Warm-up sets don't count toward it. Every weight shows where it came from:

Tap any suggested weight to open Why this weight, which says what the number is based on and, if something held it back, what that was.

The first time you do a lift

On a lift you have never logged, the engine has no measurement, and it says so. It gives you a deliberately light starting weight, labelled Estimate, based on your training profile, the movement and the equipment. The first set is then asked as max reps: as many as you can with good form. That one set turns the estimate into a measurement, and everything after it is prescribed from what you did.

Where no reasonable estimate exists, it doesn't invent one. It asks you to pick a weight you can lift about 10 times and works from there. If you swap mid-session to a lift you've never logged that trains the same movement, its first weight is worked out from your strength on the one you swapped out, adjusted for the equipment, instead of from a generic estimate.

Reps and RIR as one number

A set of 8 reps with 2 left in the tank tells the engine you could have done about 10. RIRLift adds reps and RIR into one number, the reps you could have done to failure, and uses that to compare what you did with what was asked. Moving a load from one of those numbers to another uses the Epley relationship, the same one most one-rep-max calculators use:

next load = load × (29 + reps to failure, logged) ÷ (29 + reps to failure, target)

Your estimated max appears on both sides of that ratio, so it cancels out. The engine never needs to know your one-rep max; it only needs the set you just did and the set you are aiming for.

RIR is your own call, and nobody's is perfect. What matters is that you are consistent, because the engine compares your logged RIR against a target you judge the same way. If you tend to call sets easier than they are, you do it on both sides, and the comparison still holds.

During a session

After every working set, the engine looks at what you logged and may adjust the next set straight away. The reps come first, then the RIR:

Here's how that plays out with a target of 8 reps at RIR 2 (10 reps to failure), an 8–12 rep range, and 80 kg on the bar:

You log Reps to failure Next set
8 reps, RIR 4 12 Up: 80 × 41 ÷ 39 ≈ 84 kg, rounded to a weight you can load
8 reps, RIR 2 10 Holds at 80 kg: exactly on plan
8 reps, RIR 1 9 Holds at 80 kg: you got the reps
7 reps, RIR 1 8 Down: 80 × 37 ÷ 39 ≈ 76 kg, rounded to a weight you can load

Every result is rounded to a weight you can actually load, from your plates for a barbell or from the jumps your dumbbells and machines really make. Changes are kept to small steps, and a weight never climbs far past the heaviest you've ever lifted on that exercise in one go. An adjusted set is marked as a correction, not dressed up as the original plan.

Between sessions

From one session to the next, RIRLift uses double progression, and it judges it on your weakest working set, not your best:

RIR decides how big the step is, not whether you get it. If your sets were clearly easier than your target, the jump can be two steps instead of one. It never blocks a raise you earned with reps.

On the Coach screen, What moved lists what changed after your last session; tap a row to see why. The workout recap and the home screen show your next session's weights.

When a lift stalls

If a lift goes a few sessions without a new rep (three on the default pace), the workout recap suggests a step back: about 10% lighter by default, rounded to your equipment. You choose Deload or Not yet; nothing changes unless you accept it. If you do, the rep target goes back to the bottom of the range and you build up again from the lighter weight.

This is a response to a measured stall. There is no deload scheduled for week 4 because it's week 4.

Missed sessions and time off

A skipped session changes nothing. Your next session picks up at the weight you'd earned, whenever it happens. Missing a day doesn't count as a stall.

After three weeks or more without training, RIRLift offers Ease back in: one easier week that opens about 10% lighter, then normal progression. You can choose Pick up where I left off instead. The only other time the calendar matters is when a lift hasn't been trained for several months, and then its reference point is treated as out of date and estimated again.

Your controls

You can override any weight on any set. The engine carries on from what you logged.

What it doesn't do

FAQ

Is the weight engine free?

Yes. Suggested weights, in-session corrections, progression, stall suggestions, Ease back in and the Pace setting are all free. Pro adds Fine-tune for the step sizes.

Do I need an Apple Watch?

No. The engine runs on iPhone and on Apple Watch. If you log on the Watch, it prescribes there too, and both stay in sync.

Do I need to test my one-rep max?

No. You never test or enter a one-rep max. On a new lift, one max-reps set at a light starting weight gives it the measurement it needs.

What if I'm bad at judging RIR?

Consistency matters more than accuracy, because your logged RIR is compared against targets you judge the same way. The reps also come first: going closer to failure than planned never cuts your weight, and falling below your rep range is what brings it down. For more on estimating it, see the guide to reps in reserve.