Tell Kiloton how hard
the set felt.
It tells you
what to lift next.

How hard it felt, out of 10 — that is RPE, and it is the only new thing you log.

Back squat Set 2 of 4
Weight
155.0 kg
Reps
5
Effort · RPE target 8
6 6.5 7 7.5 8 8.5 9 9.5 10
Estimated 1RM High
185.2 kg 155.0 ÷ 83.7% = 185.2
Next set 150.0 kg 5 reps at RPE 8
App Store Google Play
What it does with the number
01

It estimates your one-rep max.

Five reps at RPE 9 is 83.7% of max on an RPE-to-percentage chart — the same one lifters use on paper. So 155.0 kg makes your max 185.2 kg.

02

It gives you the next weight.

That set was meant to be an 8 and came in at a 9, so the next comes down. Five reps at RPE 8 is 81.1% on the same chart, and 81.1% of 185.2 is 150.2 kg — rounded to the 150.0 you can load. Tap Log set and it is filled in.

03

It rounds to your plates.

150.0 kg
25 25 15
per side · bar 20 kg

Tell it once what bar and plates your gym has. After that, every weight it gives you is one you can actually load.

04

It says when the number is soft.

Estimated 1RM · confidence

8 reps or fewer at RPE 8 or above

High

9 or 10 reps, or RPE 7 to 7.5

Medium

Over 10 reps, or under RPE 7

Low

A hard set of a few reps makes a good estimate. A long, easy set does not, and the app says so next to the number instead of quietly using it.

The chart is the RTS one, Mike Tuchscherer’s RPE-to-percentage table, and every estimate above comes out of it. The chart never changes. What moves is your estimate, and the trend it sits on.

Logging a set

Steppers, not a keyboard.

Weight and reps go up and down a step at a time, for chalky hands. Tap the number if you would rather type it. Everything starts at your last set, so repeating it is two taps.

Halves count.

Effort goes from 6 to 10 in halves, and the chart has a column for each one. An 8.5 is its own answer.

RPE or RIR.

If you count reps left in the tank instead, switch Effort language in Settings. Every screen follows: the same set reads RIR 1 instead of RPE 9.

Effort · RPE
6 6.5 7 7.5 8 8.5 9 9.5 10
Effort language
RPE RIR
Effort · RIR
4 3.5 3 2.5 2 1.5 1 0.5 0
Autoregulation

Your estimate runs the rest of the app.

Back squat · working estimate 184.0 kg
best set each day · today 185.2

It carries your strength between sessions.

Kiloton never suggests a weight off a single set. Each day it takes your best set — skipping the ones it marked low confidence — and your working estimate is the average of those days, weighted towards the recent ones. That is the number your first working set of the day comes from.

A day more than 25% off the line is set aside, and only counts once a second day agrees with it. The high dot here is a set that was rated wrong. The line goes straight past it, and two weeks later it has changed nothing.

01

Sessions written in RPE

Today · back squat 4 × 5 @ RPE 8 stop at 5% estimate drop

A session can say four sets of five at RPE 8 and stop there: no training max to keep current, and nothing to recalculate after a bad week. Percentages of a training max and plain fixed weights both still work, per lift.

02

The stop is a number

Caution 3.2%
0% stop 5% 7% 150.0 kg179.2 · top set 185.2

After the top set, every back-off is measured against it. When your estimate has fallen by the target — 5% unless you change it — the lift is done. You watch the meter fill while you work instead of getting a verdict at the end.

03

Four ways to back off

Back-off style Volume DEFAULT Intensity Repeats Rep drop

Volume takes the fatigue percent off the bar once and holds it there, which is the default and the usual RTS block. Intensity, repeats and rep drop are the other three.

Warm-up sets

Listed before your first working set. Tap one and it opens filled in.

Effective reps

Every rep counted by how much was left in the tank: a rep at the limit counts one, a rep with three in reserve counts about half. Per session and per week, as a bar chart.

In the app

No account.

Open the app and start lifting.

Works offline.

A basement gym with no signal is still a gym.

Export and import.

Your history goes out as JSON or CSV files. Import shows you what it is about to change before it changes anything.