Progression
What counts as progressive overload
Everyone can recite the definition. Add weight, add reps, add sets. Nobody tells you how to check whether last Tuesday actually counted.
That's the version of the question you can act on, and it's the one that gets skipped, because answering it means committing to numbers. So here are the numbers. You can run this on your own logbook without the app, and if you do use the app, this is the page to check its verdicts against.
The short version
- Every set is scored in effective reps: reps plus reps in reserve.
- Your first working set today is compared against your first working set in the last comparable session of that exercise, at the same weight.
- Higher is progress. Equal is flat. Lower is a regression.
- Adding weight gets no verdict at all by default, until two sessions exist at the new weight.
Reps on their own don't tell you enough
Eight reps with two left in the tank isn't the same session as eight reps to failure. If you count both as "eight", half of your training becomes invisible the moment you write it down.
So every set gets scored as reps plus RIR. A set of 8 at 2 RIR scores 10. A set of 10 at 0 RIR also scores 10. Those are the same number and WhyRep treats them as the same number.
If you don't track RIR, it's recorded as 0 and everything still works. You're then comparing raw reps, which is the honest reading of what you actually logged.
What gets compared to what
Set one of today, against set one of the previous comparable session of the same exercise, at the same weight. Higher effective reps is progress, equal is flat, lower is a regression.
Flat is a real verdict, not a polite way of saying nothing happened. One flat session means very little on its own. A run of them is the thing that eventually gets called a plateau, and that run is counted from exactly these verdicts.
Why only the first set
Later sets are polluted. Fatigue, rest length and pacing all move them around, so they tell you how the session went rather than whether you got stronger. If your warmup was adequate, later sets come out lower than the first one. That's normal and expected.
When a later set beats set one, something's wrong with the picture, and WhyRep flags it instead of quietly averaging it away. Either the warmup was too short, or set one was sandbagged. On that day the best set becomes the day's number, and it becomes your new baseline permanently. A weaker first set next week reads as a regression against it. Numbers are numbers, including the inconvenient ones.
How to progress when the weight can't go up
This is most weeks, for most people, on most lifts. The weight can't always go up and it doesn't have to.
Anything that raises effective reps at the same weight counts. One more rep at the same weight and the same RIR. Or the same reps at one lower RIR: last week 8 at 2 RIR, this week 8 at 1 RIR, that's 10 against 9, and that's progress.
Here's the trap, though, because the arithmetic runs both ways. Last week 8 reps at 2 RIR is 10 effective reps. This week 9 reps at 1 RIR is also 10. It feels like a better session, and it reads as flat. You added a rep and gave back the margin that paid for it.
That's the main thing this metric buys you. A tracker counting raw reps calls that week progress and lets you believe a lift is moving when it's standing still.
When you do add weight, nothing happens
Not progress. Not flat. By default there's simply no verdict on the session where the weight goes up.
There's nothing to compare it against. The old baseline was at a different weight and the new one doesn't exist yet, so the app waits until two sessions exist at the new weight and compares those to each other.
That's deliberate, and it's stricter than what most apps do. Adding weight is an input you chose. Whether you can hold it is the output, and the output hasn't arrived yet.
There's one exception, narrow enough to state precisely. If an exercise carries a programmed rep range, and you hit the top of that range at the old weight and then increased, the increase itself is progress and the first session at the new weight starts the new baseline. Effort doesn't matter for this. Hitting the top of the range is the whole test.
Worth knowing, because it changes what you should expect on screen: by default, exercises in WhyRep carry no rep-range target, so this exception usually doesn't apply. A target gets set in one situation, when the app proposes one as the first fix for a lift that has already plateaued and you accept it. Until then, every weight increase takes the no-verdict path.
Two related cases. If you dropped the weight and flagged it as a deload or a technique reset, that's no verdict and a fresh baseline. If the weight dropped and you didn't flag it, that's a regression.
What breaks the comparison
Some sessions produce no verdict because there's nothing honest to compare them with. The chain breaks and a fresh baseline starts. That happens when you change the variant, barbell to dumbbell, one machine to another, or even the same machine at a different gym, because different leverages give you different numbers. It happens when your programmed rep range changes, say 8 to 12 down to 4 to 6, since old baselines mean nothing in the new zone. And it happens the first time you do an exercise, which is a baseline and nothing else.
A break isn't a bad thing and it isn't a gap in your training. It's the app declining to compare two numbers produced under different conditions.
Time off doesn't count against you
If the muscle went untrained for 8 days or more, a worse session on the way back is still called a regression, but it's attributed to the layoff and never counts toward a plateau.
The boundary sits where it does on purpose. Exactly 7 days is a normal weekly cadence, so a once-a-week bench press is fully eligible for everything on this page. Eight days is where the clock trips. Illness, holidays and life get excluded from the diagnosis instead of being averaged into it.
Rest periods get watched, but they don't change the verdict
Between consecutive sets, WhyRep looks at how far effective reps fall. A drop of 1 is normal. A drop of exactly 2 flags a potential short rest. A drop of 3 or more flags a confirmed short rest.
None of that moves the verdict, because rest periods happen after set one, and set one is where the verdict comes from. It's there so you can see why the back half of a session fell apart.
Where this actually sits today
The detection described above is what runs in the app right now, per exercise. That part ships.
What this page doesn't tell you is what to do about a run of sessions that didn't progress. That's a separate problem with its own documented decision tree, and it depends on things this page never looks at: your weekly set volume, your sleep, whether you're in a caloric deficit, how hard your sets are genuinely being taken. That cause diagnosis is written up and signed, but it isn't fully in the app yet, because it needs a muscle contribution table that's still being authored.
This page also won't tell you which exercises to pick or how to eat. Neither has an approved methodology document yet, so WhyRep doesn't have an opinion worth publishing on either one, and saying nothing is the honest option.
Common questions
What is progressive overload?
Doing measurably more than you did last time on the same exercise. WhyRep measures it in effective reps, which is reps plus reps in reserve. If your first working set today beats your first working set in the last comparable session at the same weight, that's progress. Equal is flat. Lower is a regression.
How do I progressive overload without adding weight?
Add a rep at the same weight, or do the same reps with one less rep in reserve. Both raise effective reps, and effective reps are what the comparison uses. Watch the trap though: a set of 8 at 2 RIR and a set of 9 at 1 RIR are both 10 effective reps, so the second one is flat, not progress.
How often should you increase weight?
WhyRep doesn't prescribe a schedule. By default an exercise carries no overload target, so you increase the weight whenever you decide to. What the app does is refuse to call that increase progress until two sessions exist at the new weight to compare against each other.
Does the same weight for the same reps count as progressive overload?
No, that's a flat verdict. Flat isn't a failure and one flat session means nothing on its own, but it isn't progress and WhyRep won't report it as progress.
Why does WhyRep only look at the first working set?
Later sets are affected by fatigue, rest length and pacing, so they measure how the rest of the session went rather than whether you got stronger. If your warmup was right, later sets come out lower than the first. When a later set beats the first one, WhyRep flags it instead of ignoring it.
A note on sources
Every rule on this page comes from WhyRep's progression detection methodology document, which was signed off before any of it was implemented. Nothing here is a language model's summary of training advice found on the internet. Where the app doesn't yet do something, this page says so rather than describing it as though it ships.
Related reading
If you want to know what happens once the flat verdicts start stacking up, how many stalled sessions actually counts as a plateau picks up exactly where this page stops.
Back to the blog