Browse docs
Reference

Scheme syntax

The helper bar turns typed shorthand into volume rows. This page is the lookup table for what it reads. For how the bar fits into writing a program, see Writing schemes.

How to read this

In the builder, select an exercise row. Type a scheme in the helper bar. Before you press Enter, the ↵ Create row shows what the line will become. This preview is the "reads as" echo. The echo is the authority. If it doesn't say what you meant, rewrite the line.

The helper bar on a Back Squat row with 3x5 @ 75%, 2x3 @ 85% typed and a Create row reading 3 × 5 @ 75% · 2 × 3 @ 85%
A typed scheme and its echo.

Four rules hold across every table below:

  • The aimed row decides the grammar. The bar reads a line against the exercise's Type: Weightlifting, Sprint Training, Distance, Jump Training, or Throwing. The same text can land differently on a lift than on a sprint. Each table names the types it covers.
  • Order is free and @ is optional. 3x5 @ 80%, at 80% 3x5, and 80% 3x5 all land the same.
  • A fill patches. It doesn't replace. Anything the line leaves out stays as it was. Typing 5x3 over a row already set to 80% keeps the 80%.
  • The field mirrors the aimed row. Selecting a row loads its current prescription back into the bar, in the same language you'd type. This happens whenever the prescription can be written as one line. × reads as x, and reads as -, so what the builder writes back always re-reads.

Sets and reps — Weightlifting rows

SyntaxReads as
3x53 sets of 5. Spaces are optional: 3 x 5.
2-4x62 to 4 sets of 6
4x8-104 sets of 8 to 10
2-4x6-82 to 4 sets of 6 to 8
2/3/4x8a week-to-week progression, stored as 2 to 4 sets of 8
2x6/62 sets of 6 per side
60%x3x63 sets of 6 at 60%. A leading percentage applies to the sets and reps after it.

Intensity — Weightlifting rows

One intensity per clause: a percent, RPE, RIR, an effort word, or a back-off. The first form the bar recognizes wins.

SyntaxReads as
@ 75%75%. at 75% and a bare 75% read the same.
@ 60-65%a percent range
50/55/60/65/70%a ramp, stored as 50 to 70%
@ rpe 8RPE 8. 8.5RPE and rpe 9-10 also read.
@ 2-3 RIR2 to 3 reps in reserve. RIR 2-3 reads the same.
heavyan effort word — light, moderate, or heavy
drop 10%a back-off 10% below the segment above. -10% reads the same.

Several segments on one line

A comma or the word then starts a new segment. With the exercise's top row aimed, the line is the whole prescription. The first clause fills the first segment, the second clause fills the second segment, and so on.

  • 3x5 @ 75%, 2x3 @ 85% — two segments.
  • 4x5 @ rpe 8, then drop 15% — a working block and a back-off. A clause with no sets and reps of its own copies the segment above it and changes only what it names.

If the line has more clauses than the exercise has segments, the bar adds rows. If it has fewer, the bar removes the extras. The bar asks Remove segments? before it removes a segment that still carries data. Aiming one segment row instead of the exercise row patches only that row. The bar ignores extra clauses.

Runs — Sprint Training and Distance rows

A run is sets × measure. The measure is a distance or a time. It takes the place of reps. Leave a space between the multiplier and the measure. 4 x 30m reads as four 30-meter runs. 4x30m reads as four sets and no distance at all.

SyntaxReads as
4 x 30m4 runs of 30 m
3 x 20s3 runs of 20 seconds
5 x 400m5 runs of 400 m. A number carrying m or km is always a distance, never reps.
1-2 x 2 x 20m1 to 2 sets of 2 runs at 20 m
4 x 50m tempotrailing words name the segment ("Tempo")
4 x 50m @ 70%effort as a percent of top speed (Sprint Training)
6 km at 4:30 pacepace per kilometer. 4:30/km and 4:30-4:45 pace also read. (Distance)
4 x 20m build + 10m flyone continuous run in two phases. The second phase inherits the 4 x.
100m, 200m, 400malso one continuous run. A term with no multiplier of its own continues the term before it.
4 x 20m, 4 x 30mtwo separate blocks, because each carries its own multiplier
2 x (20m, 30m, 40m) accela ladder run twice — one segment per distance, all named "Accel"

Jumps and throws — Jump Training and Throwing rows

SyntaxReads as
3x53 sets of 5
3x5 box jumpstrailing words name the segment ("Box Jumps")
@ 24"a height target in inches. @ 30 cm for centimeters. (Jump Training)
@ 6kgthe implement or added load. 10% bw and bands also read.
rest 90srest between sets. rest 2:00 and rest 2 min also read.
heavyan effort word — light, moderate, or heavy

Per-segment lists in a cell

The grid takes lists as well as the helper bar. A comma-separated cell value gives each segment its own number. 8, 10, 12 in Reps on a one-segment exercise makes three segments. On Sprint Training and Distance rows, + splits Dist and Duration the same way (20m+15m+30m). A - is always a range, never a separator.

Only some columns can change the number of segments:

  • Sets, Reps, and Intensity on lifts, jumps, and throws.
  • Dist, Duration, and Sets on runs, plus Intensity on Sprint Training.

Every other column takes either one value for all segments or exactly one per segment.

What the helper bar doesn't read

Set these in the grid instead

  • Tempo — the bar doesn't read tempo notation anywhere in the line. Put tempo in the row's Notes.
  • Rest on Weightlifting and run rows — the Rest column takes 90, 2min, 1:30, or 30-60s.
  • A weight on a Weightlifting row3x5 @ 40kg fills the sets and reps and drops the weight. You prescribe lifts as intensity, and the percentage resolves against the athlete's max.
  • Bar speed — the bar doesn't read 1.2 m/s from the line. The Intensity cell takes it.
  • AMRAP — the Reps cell takes AMRAP.
  • Added resistance on a run — in the line, sled and bands only name the segment. The Load column takes 10kg, 10% bw, and bands.

Forms that read as something else

  • 1rm at 10RPE — the bar doesn't read a rep-max anchor. It refuses the whole line with "Couldn't read that scheme".
  • 70x5, 75x4 — a weight-per-set ramp reads the number before each x as sets: 70 sets of 5, then 75 sets of 4.
  • 3x2+2+1 on a Weightlifting row — reads as 3 × 2. The bar drops the rest of the cluster pattern.