Coaching Layer vs. Capture Layer: Why the Two Aren't in the Same App

Article ยท 5 min read

Your app can suggest, or it can remember. Doing both costs you.

Every recommendation engine assumes you don't know what to do next. That assumption is right at month two and wrong at year three, and the logging screen pays for it either way.

Third week of the anchor cycle, and the app says 300

Third week of an anchor cycle. 315 is loaded for a 5+ top set, you hit it clean three weeks ago, and the logging screen opens on a card recommending 300 because last session's completion rate dipped. You override it. Then it asks how the set felt on a five-point scale that isn't RPE and doesn't convert to one. Three taps later the set is saved, and the number you actually came for, what this lift did in this block against the same week last cycle, sits two screens back.

Every one of those frictions is a decision somebody made on purpose. The suggestion card is the most expensive object on that screen, and it earned its position by keeping a week-one user from quitting. Nothing about it is incompetent. It just wasn't built for the person holding the phone between sets of 315.

The suggestion tax

Every app with a recommendation engine rests on one assumption: you don't know what to do next. At month two that's correct, and a suggested weight is genuinely the highest-value pixel on the screen. At year three you have a program, a coach, or twenty months of your own response data, and the same pixel is a toll.

Call it the suggestion tax. Every element that exists to tell you what to lift is an element not spent showing you what you lifted, and a logging screen is a rectangle with a fixed budget. Suggested load pushes last session's number down into a subtitle. An effort slider takes the space where an RPE field would sit. A program wizard decides your exercise names before you get to. The tax is small per decision and compounds across the whole surface.

The suggestion is priced in pixels, and the pixels come out of your history.

Personalization is not the top of the ladder

The industry story about tracking runs one direction: you log so the software can learn you, and the payoff is a better prescription next week. Logging becomes data collection in service of the recommendation. Under that story a plain logger is a primitive version of a real app, something you graduate out of.

Watch what experienced lifters actually do and the ladder inverts. They graduate into plain loggers. Across r/naturalbodybuilding and Starting Strength threads, the tool that keeps getting recommended to somebody with three years under the bar is a bare-bones logger like FitNotes, or a notebook that lives in the gym bag. The two layers aren't competing priorities. They're competing claims on the same rectangle, and a lifter who already has a plan will pick whatever gets out of the way of recording it.

Contreras is half right

Bret Contreras has argued that for bodybuilders, keeping a log is not so important The line appears in Bret Contreras's blog post 'ABC - Are Training Logs Necessary?' published Feb 28, 2011, not a podcast. ([source](https://bretcontreras.com/abc-are-training-logs-necessary/)). Read as an argument against the coaching layer, that holds up, and the reason is structural. Hypertrophy work autoregulates by feel inside the session. Reps in reserve, the pump, whether the last set moved. If all your log does is hand back a prescription, a lifter who reads effort accurately already has the information, and the log is ceremony.

Where the argument breaks is the assumption that the alternative to a prescribing log is no log. Three years of training response is a dataset about one subject, run under conditions nobody else can replicate. Which movements added size when weekly volume went up. What your bench does in week four of every block. Whether the shoulder complaint tracks incline volume or overhead frequency. None of that is available to feel, because none of it happens inside a single session.

The same screen, two answers

Take one decision and follow it. A lifter is on a squat top set, week four, RPE 8 target.

The coaching-layer answer: the card shows a suggested load, a percentage of training max, a completion prompt, and afterward a simplified difficulty picker. It's fast, it's confident, and it produces a tidy record of adherence.

The capture-layer answer: the card shows what you squatted last time and the time before, the RPE you tagged each with, and an empty field. It says nothing. You enter 315 at RPE 8.5 and rack the bar.

Six months on, those two logs answer different questions. One can tell you how often you completed what it asked. The other can tell you that your top-set RPE at 315 drifted from 7.5 to 8.5 across eleven weeks while the load never moved, which is a stall visible about three weeks before the bar refuses.

Screen decisionWhat it buys the coaching layerWhat it costs the capture layer
Suggested load on the set cardA newer lifter never stalls out staring at a blank fieldLast session's number gets demoted to a subtitle or an extra tap
Streak and completion promptsRetention through the first eight weeksAdherence noise reads as training signal, and a planned deload scores as failure
Onboarding wizard that builds the programTime-to-first-logged-workout drops sharplyYour log inherits the app's exercise taxonomy instead of your own naming
Simplified effort picker instead of RPEOne universal input, nothing to teachIntent stops travelling with the load, so old sets become unreadable
Analysis views gated behind the upgradeA clean, well-timed upgrade momentThe one screen a year-three lifter opened the app for
Five decisions every training app makes once. Each row is a real design fork where the prescribing layer and the recording layer want opposite answers.

A difficulty picker is not RPE

Easy / Medium / Hard is not a half-point scale and never converts to one. RPE only earns its keep when it is stored in the same row as the load and carried into every later view. A five-point mood picker collapses 315 at RPE 7 and 315 at RPE 9.5 into the same record, and no amount of analysis downstream can pull them back apart.

What honest capture actually requires

Set, rep and weight is the floor, and on its own it isn't enough. A log worth keeping for a decade needs three things past that.

RPE stored with the load, in the same row, so the intent behind a set survives the year. Trend visibility across blocks rather than inside one, because the unit of progress for an advanced lifter is the cycle, not the session. And an export you can actually read, in a shape a spreadsheet opens, because ten years of training history trapped in somebody else's schema isn't yours in any way that counts.

Clear those three and the coaching layer becomes optional, which is the correct status for it. Your coach, your program, or your own read on the day fills that slot. The app stops auditioning for the job.

Where Platepusher sits in the split

Platepusher is built on the assumption that you already know what you're doing today. The lift opens on your last session, numbers first, and the field waits. RPE goes in the same row as the load and travels with it into every chart afterward. Plateau detection is arithmetic run over your top sets, so it flags the week a movement stopped moving instead of the week you missed a session.

The import path exists for the same reason. Two years in another logger is the experiment you already ran on yourself, and it should land as native data with the dates, the sets and the RPE intact, not as a summary card. Export runs the same direction at every tier, free included. An instrument you can walk away from is the only kind worth handing a decade of training to.

What we're watching

The open question is whether the split stays this clean once the analysis is good. Every lifter who traded a coaching-layer app for a notebook gave up trend visibility to get speed and honesty back, and that trade shouldn't be the price of admission. Analysis that lives one screen away from capture, and never on top of it, is the shape we think holds. We'll know it doesn't if the people running their own blocks keep drifting back to paper anyway.

Bring the log you already have. Import your history, keep logging in the same shape you already use, and read your own blocks back whenever you want.

Platepusher was designed around the year-three lifter, not the week-one one. The logging screen opens on your last session for that lift instead of a recommendation, RPE is a first-class field that stays attached to the load, and plateau detection is deterministic arithmetic on your top sets rather than a suggestion engine. CSV import brings a prior tracker's history in as native data, dates, sets and RPE intact, and CSV export is free at every tier including the free one.