Starting weights
Cody’s guide is the empty bar, or the last weight from a linear progression you were already running. The 85% figure applies only when you restart after a stall.
// FREE PROGRAM //
GZCLP is Cody Lefever’s linear progression for newer lifters: a heavy lift, a lighter lift and an accessory each session, rotating through four workouts, with a plan for every stall. Enter your numbers to get it as a file you can import into IronLedger.
Imports into IronLedger as “GZCLP”: 8 weeks, 24 sessions, 72 exercises, with nothing to fix.
Checked with the app’s own import rules. Keep the file name: the app names the program after it, and importing a file with the same name later offers to update the program in place.
// WEEK 1 //
| Day | Exercise | Sets × reps | Load (kg) |
|---|---|---|---|
| Day 1 | Squat | 5 sets | 100 |
| Day 1 | Bench Press | 3 × 10 | 50 |
| Day 1 | Lat Pulldown | 3 sets | 40 |
| Day 2 | Overhead Press | 5 sets | 45 |
| Day 2 | Deadlift | 3 × 10 | 85 |
| Day 2 | Dumbbell Row | 3 sets | 20 |
| Day 3 | Bench Press | 5 sets | 70 |
| Day 3 | Squat | 3 × 10 | 70 |
| Day 3 | Lat Pulldown | 3 sets | 40 |
Week,Day,Exercise,Sets,Reps,Load,Notes 1,Day 1,Squat,5,"3, 3, 3, 3, 3+",100,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 1,Day 1,Bench Press,3,10,50,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 1,Day 1,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 1,Day 2,Overhead Press,5,"3, 3, 3, 3, 3+",45,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 1,Day 2,Deadlift,3,10,85,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 1,Day 2,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 1,Day 3,Bench Press,5,"3, 3, 3, 3, 3+",70,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 1,Day 3,Squat,3,10,70,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 1,Day 3,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 2,Day 1,Deadlift,5,"3, 3, 3, 3, 3+",120,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 2,Day 1,Overhead Press,3,10,30,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 2,Day 1,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 2,Day 2,Squat,5,"3, 3, 3, 3, 3+",105,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 2,Day 2,Bench Press,3,10,52.5,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 2,Day 2,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 2,Day 3,Overhead Press,5,"3, 3, 3, 3, 3+",47.5,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 2,Day 3,Deadlift,3,10,90,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 2,Day 3,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 3,Day 1,Bench Press,5,"3, 3, 3, 3, 3+",72.5,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 3,Day 1,Squat,3,10,75,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 3,Day 1,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 3,Day 2,Deadlift,5,"3, 3, 3, 3, 3+",125,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 3,Day 2,Overhead Press,3,10,32.5,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 3,Day 2,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 3,Day 3,Squat,5,"3, 3, 3, 3, 3+",110,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 3,Day 3,Bench Press,3,10,55,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 3,Day 3,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 4,Day 1,Overhead Press,5,"3, 3, 3, 3, 3+",50,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 4,Day 1,Deadlift,3,10,95,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 4,Day 1,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 4,Day 2,Bench Press,5,"3, 3, 3, 3, 3+",75,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 4,Day 2,Squat,3,10,80,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 4,Day 2,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 4,Day 3,Deadlift,5,"3, 3, 3, 3, 3+",130,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 4,Day 3,Overhead Press,3,10,35,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 4,Day 3,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 5,Day 1,Squat,5,"3, 3, 3, 3, 3+",115,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 5,Day 1,Bench Press,3,10,57.5,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 5,Day 1,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 5,Day 2,Overhead Press,5,"3, 3, 3, 3, 3+",52.5,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 5,Day 2,Deadlift,3,10,100,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 5,Day 2,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 5,Day 3,Bench Press,5,"3, 3, 3, 3, 3+",77.5,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 5,Day 3,Squat,3,10,85,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 5,Day 3,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 6,Day 1,Deadlift,5,"3, 3, 3, 3, 3+",135,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 6,Day 1,Overhead Press,3,10,37.5,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 6,Day 1,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 6,Day 2,Squat,5,"3, 3, 3, 3, 3+",120,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 6,Day 2,Bench Press,3,10,60,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 6,Day 2,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 6,Day 3,Overhead Press,5,"3, 3, 3, 3, 3+",55,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 6,Day 3,Deadlift,3,10,105,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 6,Day 3,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 7,Day 1,Bench Press,5,"3, 3, 3, 3, 3+",80,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 7,Day 1,Squat,3,10,90,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 7,Day 1,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 7,Day 2,Deadlift,5,"3, 3, 3, 3, 3+",140,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 7,Day 2,Overhead Press,3,10,40,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 7,Day 2,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 7,Day 3,Squat,5,"3, 3, 3, 3, 3+",125,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 7,Day 3,Bench Press,3,10,62.5,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 7,Day 3,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 8,Day 1,Overhead Press,5,"3, 3, 3, 3, 3+",57.5,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 8,Day 1,Deadlift,3,10,110,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 8,Day 1,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps 8,Day 2,Bench Press,5,"3, 3, 3, 3, 3+",82.5,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 8,Day 2,Squat,3,10,95,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 8,Day 2,Lat Pulldown,3,"15, 15, 15+",40,T3. Add weight when the last set reaches 25 reps 8,Day 3,Deadlift,5,"3, 3, 3, 3, 3+",145,"T1. Last set as many as you can, up to 10. Miss the 15 base reps: 6x2+ at this weight, then 10x1+, then test a 5RM and restart 5x3+ at 85% of it" 8,Day 3,Overhead Press,3,10,42.5,"T2. Miss: 3x8 at this weight, then 3x6, then restart 3x10 a little heavier" 8,Day 3,Dumbbell Row,3,"15, 15, 15+",20,T3. Add weight when the last set reaches 25 reps
// THE TIERS //
Cody writes reps before sets, so his “3 x 5+” is five sets of three. This page writes sets first.
| Tier | What it is | Sets × reps |
|---|---|---|
| T1 | The main lift, heaviest | 5 sets of 3, the last as many as you can (up to 10) |
| T2 | A second main lift, lighter | 3 sets of 10 |
| T3 | An accessory | 3 sets of 15, the last as many as you can |
| Workout | T1 | T2 | T3 |
|---|---|---|---|
| A1 | Squat | Bench press | Lat pulldown |
| B1 | Overhead press | Deadlift | Dumbbell row |
| A2 | Bench press | Squat | Lat pulldown |
| B2 | Deadlift | Overhead press | Dumbbell row |
// WHEN A LIFT STALLS //
| Tier | Stages, in order | After the last stage |
|---|---|---|
| T1 | 5 × 3+ → 6 × 2+ → 10 × 1+, each at the same weight | Rest 2 to 3 days, test a 5-rep max, restart 5 × 3+ at 85% of it |
| T2 | 3 × 10 → 3 × 8 → 3 × 6 | Restart 3 × 10 a little heavier than last time, by no more than 20 lb (9 kg) |
| T3 | Add weight when the last set reaches 25 reps | Not applicable |
Cody’s guide is the empty bar, or the last weight from a linear progression you were already running. The 85% figure applies only when you restart after a stall.
The file adds weight every time a lift comes round, so it is right until the first miss. The stall stages are in each row’s notes for you to apply; a file can’t know when you missed.
The file is checked with the app’s own import rules before you download it. Paste it into the program file checker to see every row.
// WITH YOUR AI //
Here is my GZCLP program as an IronLedger import file. Keep the same columns and the Week and Day numbering. [Say what to change, such as different T3 accessories, or moving a lift to its next stage after a stall.] Check the result with the check_program_file tool on the IronLedger MCP server and fix anything it reports, then give me the whole file to save as “GZCLP.csv”. [Paste the file here]
Connect your assistant to IronLedger first so it can check its work: setup steps for each AI app. IronLedger isn’t affiliated with Cody Lefever or GZCL.
// DIRECT ANSWERS //
A linear progression for newer lifters by Cody Lefever (GZCL). Each session pairs a heavy main lift (T1), a lighter main lift (T2) and an accessory (T3), rotating through four workouts. Weight goes up every session until a lift stalls, and then a set sequence of rep schemes keeps it moving.
Five sets of three reps, with the last set taken for as many reps as you can. Note that Cody writes reps before sets, so in his notation it appears as “3 x 5+”. He caps the last set at 10 reps.
For T1, Cody counts it as a miss when you judge you could not get the 15 base reps with one or two reps left in reserve, not only when you actually fail a rep.
Cody’s own example runs three sessions a week, carrying on through the four workouts (A1, B1, A2 in week 1; B2, A1, B1 in week 2). Running all four in a week appears in community summaries rather than in his post; the generator offers both, with three as the default.
Cody suggests no more than 5 to 10 lb (2.5 to 4.5 kg) a session. The generator defaults to 5 lb (2.5 kg) on bench and press and 10 lb (5 kg) on squat and deadlift; 5 kg is slightly over his kilogram figure because it is the nearest common plate jump.
No. An imported program keeps what the file says; live load recommendations run only on the app’s five built-in load-and-go programs. The stall rule is in each row’s notes. When a lift stalls, change that row, or change your numbers here and import the file again with the same name to update the program in place.
Download the file, then in IronLedger tap Import (on the Routine tab with no program loaded, or Library, +, then Import instead) and choose it. Log every set with RPE or RIR, and write the reps you got on the last set. Free, with no subscription. iPhone now; Android is in closed testing.
Get IronLedger free on iOSPaste the file into Claude, ChatGPT or Gemini with the prompt on this page. Connected to the IronLedger MCP server, your assistant can check its changes with the program file checker before it gives the file back.
Set up your AI