Ido — training plan, September–December 2026
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
|
GYM B |
SWIM A |
off / easy |
SWIM B |
GYM A |
SWIM C |
off |
Swim plan
What CSS is (Critical Swim Speed)
CSS is the fastest pace you can hold for a long time without fatigue building up faster than the body clears it — in practice about your best steady pace for 1,500–2,000 m (30 minutes), the swimming version of “threshold pace”. You measure it with two all-out swims in one session:
CSS (seconds per 100 m) = (time for 400 m − time for 200 m) ÷ 2.
Example: 400 m in 6:16 (376 s) and 200 m in 2:59 (179 s) → (376 − 179) ÷ 2 = 98.5 s → CSS ≈ 1:38 per 100 m.
Why subtracting works. Every all-out swim is a fixed reserve (the energy you can burn only once — the fast start) plus steady work at the pace you can sustain. The 200 and the 400 use the same reserve, so 400 minus 200 cancels it, and what is left is the extra 200 m swum at the sustainable pace only. That is why a faster 200 with the same 400 gives a slower CSS: the first half was faster, so the second half was slower — more sprint, same engine.
| 400 m | 200 m | The extra 200 m took | CSS | |
|---|---|---|---|---|
| Same pace over both | 6:00 | 3:00 | 3:00 | 1:30 |
| Faster 200, same 400 | 6:00 | 2:50 | 3:10 | 1:35 |
Rules of the test: both swims all-out (a relaxed 200 flatters the CSS); CSS is always 3–6 s per 100 m slower than the 400 pace; to raise the CSS the 400 must improve by more than the 200. Every pace in this plan is set from it (Z1 = CSS + 12–18 s, race pace = CSS + 6–10 s, Z3 = CSS, Z4 = CSS − 5–8 s), the race pace for 4.5 km is CSS + 6–10 s, and the re-test on 12.10 is the plan’s measure of progress: when CSS drops 2 s, every pace moves 2 s.
Paces and zones
| Zone | Pace per 100 m | Heart rate | Used in |
|---|---|---|---|
| Z1 easy | CSS + 12–18 s (1:46–1:52) | < 135 | warm-ups, cool-downs, the easy metres in session B |
| Z2 moderate / race pace | CSS + 6–10 s (1:40–1:44 pool; open water hold the effort, ≈ 1:48–1:55) | 140–152 | long swims (session C) |
| Z3 CSS (threshold) | CSS ± 1 s (1:33–1:35) | 150–160 | session A repeats |
| Z4 VO2 | CSS − 5–8 s (1:26–1:29) on 50–100 m | 160+ | short blocks in session A, even weeks |
Heart rate in water is about 10 beats lower than on land for the same effort; the numbers above are swim numbers from the 2026-09-17 session (max seen 167).
Race target: finish ≈ 1 h 20 – 1 h 27 min, HR 145–152, negative split.
The weekly structure
Ido’s week: swim Mon / Wed / Fri, gym Sun / Thu (Gym plan). The Israeli week starts on Sunday, so the table runs Sun → Sat.
| Day | Session | Zone | Time |
|---|---|---|---|
| Sun | Gym B — deadlift day (Gym plan) | — | 60 min |
| Mon | A — threshold (odd weeks) / threshold + VO2 (even weeks) | Z3 (+Z4) | 50–60 min |
| Tue | off, or easy ride / walk | — | — |
| Wed | B — aerobic steady swim 2,500–3,000 m (5 × 400 or 3 × 800), breathe both sides, sight | Z1–Z2 | 50–60 min |
| Thu | Gym A — leg press, bench, pull-ups | — | 60 min |
| Fri | C — long swim, negative split, race pace; open water from week 3 | Z2 | 40–95 min |
| Sat | off | — | — |
Rules (Ido, 2026-09-21): every swim is at least 2,500 m and there are no technique or drill sets — the easy day is an aerobic steady swim. A and C are the only hard swims, 4 days apart (Mon → Fri) and 3 days back (Fri → Mon). Each gym day sits the day before a swim, so: gym in the morning, swim the next day, and every gym set stops with 2 reps in reserve — the swim is the priority. If life removes a session, drop B or a gym day, never C. Sleep 7–9 h; protein about 1.6 g per kg per day (≈ 0.4 g/kg per meal); a hard day is followed by an easy day, always.
Week by week (Mon 21.09 → race Fri 30.10)
| Week | Dates | A (Mon) | B (Wed) | C (Fri) | Volume |
|---|---|---|---|---|---|
| 1 | 21–26.09 (Mon 21.09 Yom Kippur — pools closed) | CSS test moved to Wed 23.09: WU 600 → 400 m all-out, 10 min easy, 200 m all-out → 4 × 100 race-pace feel → CD 400 (2,500 m). Set the zones. | — (the test takes its slot) | Fri 25.09: 2 × 1,250, second faster (2,900 m) | ≈ 5.4 km |
| 2 | 27.09–03.10 (Sukkot; Simchat Torah Sat 03.10) | Mon 28.09: 12 × 100 @CSS, 20 s + VO2 6 × 50 (2,500 m) | Wed 30.09: aerobic 5 × 400 (2,600 m) | Fri 02.10: 3,000 m continuous, last 1,000 faster (3,400 m) | ≈ 8.5 km |
| 3 | 04–10.10 | Mon 05.10: 6 × 300 @CSS, 30 s (2,600 m) | Wed 07.10: aerobic 5 × 400 + 4 × 100 race starts (3,000 m) | Fri 09.10: 3,500 m open water, group, drafting on feet (3,900 m) | ≈ 9.5 km |
| 4 — peak | 11–17.10 | Mon 12.10: CSS re-test + 6 × 100 @new CSS (2,600 m) | Wed 14.10: aerobic 3 × 800 (3,000 m) | Fri 16.10: 4,500 m race rehearsal (14 days out, same weekday as the race): open water, race kit, no wetsuit, negative split, gel at 45 min (4,900 m) | ≈ 10.5 km |
| 5 — taper | 18–24.10 | Mon 19.10: 6 × 100 @CSS + 4 × 50 fast + 900 easy (2,500 m) | Wed 21.10: aerobic 4 × 400 + 4 × 50 fast (2,500 m) | Fri 23.10: 2,000 easy + 500 at race pace (2,900 m) | ≈ 7.9 km (−25 %) |
| 6 — race week | 25–31.10 | Mon 26.10: 4 × 100 @CSS + 4 × 25 fast + 1,200 easy (2,500 m) | Wed 28.10: aerobic 4 × 400 + 4 × 50 fast (2,500 m) | Fri 30.10: RACE | ≈ 5 km + race (−52 %) |
Gym on Sun + Thu every week (week 1: Thu 24.09 only; Sun 25.10 light; nothing on Thu 29.10) — see the race-week rules on Gym plan. The taper is 14 days from the rehearsal on 16.10 to the race — at the top of the 8–14-day window from the meta-analysis, so week 5 keeps the fast pieces. Note on the 2,500 m floor in the taper: the meta-analysis asks for −41–60 % volume; with every session at 2,500 m, week 5 is only −25 % (week 6 is −52 %). The extra metres in weeks 5–6 are easy Z1 swimming, and the hard work is cut as the research asks, so the cost is small — but a shorter week 5 (sessions of 1,600–2,000 m) would be the textbook taper. Ido’s call. The VO2 block appears once (week 2) because the block is short; week 4’s hard day is the re-test.
Expected result on 30.10 with this block: 1:39–1:43 /100 m pool-equivalent, i.e. ≈ 1 h 22 – 1 h 28 in open water without a wetsuit (drafting well saves a few minutes). The 1:30 target stays a 6–9-month project (see below); the week-4 re-test shows where it stands.
Nutrition at 76 kg
- Protein ≈ 120 g a day (1.6 g/kg), about 30 g per meal, one serving within an hour after the hard sessions.
- Carbohydrate on hard days 5–6 g/kg (380–450 g); easy days 3–4 g/kg.
- Race: breakfast 3 h before with ≈ 150 g carbohydrate; in the water one gel or 200 ml drink at 45 min (≈ 25–30 g); drink 500 ml with electrolytes in the two hours before the start (sea swims dehydrate).
- Taper: same protein, slightly less carbohydrate (volume is down), no diet — the goal is a full glycogen store on 30.10.
Race day
- Start below race effort for the first 400–500 m; let the fast starters go.
- Find feet of a swimmer of your speed within the first kilometre and sit 0.5 m behind them (11 % less oxygen cost); leave them only if they slow you down.
- Sight every 6–8 strokes with the eyes only; breathe to both sides so waves and sun do not dictate the side.
- Middle at Z2 effort, HR 145–152.
- Gel or 200 ml drink at 45 minutes if the course has a feed point or a personal boat.
- Last 1,000 m: raise the stroke rate (this is what the 5 km study’s open-water swimmers did), last 300 m all-out.
Swim workouts
How to read a table: interval = swim; warmup / cooldown = easy swim; rest = stand at the wall for that time; a bold n × line repeats the indented steps below it. Pool 25 m. Every session is at least 2,500 m; there are no drill sets. Zones from the CSS test: Z1 = CSS+12–18 s /100 m, Z2 race pace = CSS+6–10 s, Z3 = CSS, Z4 = CSS−5–8 s (with CSS ≈ 1:34: Z1 1:46–1:52, Z2 1:40–1:44, Z3 1:33–1:35, Z4 1:26–1:29).
Which session on which day
Gym sessions are on Gym plan (Sun = deadlift day B, Thu = leg press / bench / pull-ups day A). The dryland workout at the end of this page is the no-gym fallback only.
| Week | Sun | Mon | Wed | Thu | Fri |
|---|---|---|---|---|---|
| 1 (21–26.09) | — | Yom Kippur | W1 A — CSS test + 4 × 100 | gym | W1 C — 2 × 1,250 |
| 2 (27.09–03.10) | gym | W2 A — 12 × 100 + VO2 | W2 B — aerobic 5 × 400 | gym | W2 C — 3,000 |
| 3 (04–10.10) | gym | W3 A — 6 × 300 | W3 B — aerobic 5 × 400 + race starts | gym | W3 C — 3,500 open water |
| 4 (11–17.10) | gym | W4 A — CSS re-test + 6 × 100 | W4 B — aerobic 3 × 800 | gym (light) | W4 C — 4,500 rehearsal |
| 5 (18–24.10) | gym (2 sets) | W5 A — 6 × 100 + 4 × 50 fast + easy | W5 B — aerobic 4 × 400 + 4 × 50 fast | gym (2 sets) | W5 C — 2,000 + 500 |
| 6 (25–31.10) | gym (light) | W6 A — 4 × 100 + 4 × 25 fast + easy | W6 B — aerobic 4 × 400 + 4 × 50 fast | nothing | RACE Fri 30.10 |
The workouts
4.5k W1 A · CSS test 400 + 200 + 4×100
2500 m · about 55 min. Week 1: critical swim speed test. Swim 400 m and 200 m at full effort with 10 min easy between. CSS per 100 m = 100 × (T400 − T200) / 200. Set zones from it: Z1 = CSS+12–18 s, Z2 race pace = CSS+6–10 s, Z3 = CSS, Z4 = CSS−5–8 s.
| step | what | note |
|---|---|---|
| warmup | 600 m free | easy, then 4 × 25 build |
| 4 × | ||
| interval | 25 m free | build to fast |
| rest | rest 20 s | |
| rest | rest 60 s | |
| interval | 400 m free | 400 m ALL OUT — note the time |
| interval | 400 m free | 10 min very easy (any stroke) |
| interval | 200 m free | 200 m ALL OUT — note the time |
| rest | rest 120 s | |
| 4 × | ||
| interval | 100 m free | Z2: race-pace feel, about CSS + 8 s |
| rest | rest 20 s | |
| cooldown | 400 m any stroke | easy. CSS pace = 200 / (T400 − T200) seconds per metre |
4.5k W1 C · long 1250 + 1250
2900 m · about 55 min. Hard day 2, week 1: long swim 1250 + 1250 m, NEGATIVE SPLIT — first quarter below race pace, last 1,000 m with a higher stroke rate. Pool pace 1:40–1:44 /100 m; in open water hold the effort (HR 145–152), not the pace. Second half faster than the first.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| interval | 1250 m free | first part: below race pace |
| interval | 1250 m free | Z2 race pace 1:40–1:44 /100 m, HR 145–152 |
| cooldown | 100 m any stroke | easy |
4.5k W2 A · 12×100 @1:34 + 6×50 VO2
2500 m · about 58 min. Hard day 1, week 2: 12 × 100 m at CSS (1:34 /100 m), 20 s rest, then 6 × 50 fast (VO2max block). HR 150–160 on the repeats. Easy day tomorrow.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| 4 × | ||
| interval | 50 m free | build: each 50 a little faster |
| rest | rest 15 s | |
| 4 × | ||
| interval | 25 m free | fast |
| rest | rest 20 s | |
| 12 × | ||
| interval | 100 m free | Z3: hold 1:34 /100 m (CSS) |
| rest | rest 20 s | |
| rest | rest 90 s | |
| 6 × | ||
| interval | 50 m free | Z4 VO2: fast, CSS −5–8 s per 100 |
| rest | rest 30 s | |
| cooldown | 400 m any stroke | easy |
4.5k W2 B · aerobic 5×400
2600 m · about 52 min. Easy day (zone 1–2), week 2: aerobic steady swim 5 × 400 m with 20 s rest, HR under 145, breathing to both sides, sighting with the eyes only every 6–8 strokes. This session is never hard.
| step | what | note |
|---|---|---|
| warmup | 400 m free | easy, breathe both sides |
| 5 × | ||
| interval | 400 m free | Z1–Z2 steady, HR < 145; sight every 6–8 strokes in the last 100 of each piece |
| rest | rest 20 s | |
| cooldown | 200 m any stroke | easy |
4.5k W2 C · long 3000
3400 m · about 64 min. Hard day 2, week 2: long swim 3000 m, NEGATIVE SPLIT — first quarter below race pace, last 1,000 m with a higher stroke rate. Pool pace 1:40–1:44 /100 m; in open water hold the effort (HR 145–152), not the pace. Last 1,000 faster.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| interval | 3000 m free | Z2 race pace 1:40–1:44 /100 m, HR 145–152 |
| cooldown | 100 m any stroke | easy |
4.5k W3 A · 6×300 @1:35
2600 m · about 50 min. Hard day 1, week 3: 6 × 300 m at CSS (1:35 /100 m), 30 s rest. HR 150–160 on the repeats. Easy day tomorrow.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| 4 × | ||
| interval | 50 m free | build: each 50 a little faster |
| rest | rest 15 s | |
| 4 × | ||
| interval | 25 m free | fast |
| rest | rest 20 s | |
| 6 × | ||
| interval | 300 m free | Z3: hold 1:35 /100 m (CSS) |
| rest | rest 30 s | |
| cooldown | 200 m any stroke | easy |
4.5k W3 B · aerobic 5×400 + race starts
3000 m · about 59 min. Easy day (zone 1–2), week 3: aerobic steady swim 5 × 400 m with 20 s rest, HR under 145, breathing to both sides, sighting with the eyes only every 6–8 strokes. This session is never hard.
| step | what | note |
|---|---|---|
| warmup | 400 m free | easy, breathe both sides |
| 5 × | ||
| interval | 400 m free | Z1–Z2 steady, HR < 145; sight every 6–8 strokes in the last 100 of each piece |
| rest | rest 20 s | |
| rest | rest 60 s | |
| 4 × | ||
| interval | 100 m free | first 25 fast (race start), then settle to Z2 |
| rest | rest 30 s | |
| cooldown | 200 m any stroke | easy |
4.5k W3 C · long 3500 OW
3900 m · about 73 min. Hard day 2, week 3: long swim 3500 m, NEGATIVE SPLIT — first quarter below race pace, last 1,000 m with a higher stroke rate. Pool pace 1:40–1:44 /100 m; in open water hold the effort (HR 145–152), not the pace. NO WETSUIT (race rule): expect about 5 s /100 m slower than the pool; sight every 6–8 strokes; draft 0.5 m behind feet. Open water, in a group, no wetsuit: swim on feet 0.5 m back (drafting).
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| interval | 3500 m free | Z2 race pace 1:40–1:44 /100 m, HR 145–152 |
| cooldown | 100 m any stroke | easy |
4.5k W4 A · CSS test 400 + 200 + 6×100
2600 m · about 55 min. Week 4: critical swim speed test. Swim 400 m and 200 m at full effort with 10 min easy between. CSS per 100 m = 100 × (T400 − T200) / 200. Set zones from it: Z1 = CSS+12–18 s, Z2 race pace = CSS+6–10 s, Z3 = CSS, Z4 = CSS−5–8 s.
| step | what | note |
|---|---|---|
| warmup | 600 m free | easy, then 4 × 25 build |
| 4 × | ||
| interval | 25 m free | build to fast |
| rest | rest 20 s | |
| rest | rest 60 s | |
| interval | 400 m free | 400 m ALL OUT — note the time |
| interval | 400 m free | 10 min very easy (any stroke) |
| interval | 200 m free | 200 m ALL OUT — note the time |
| rest | rest 120 s | |
| 6 × | ||
| interval | 100 m free | Z3 at the NEW CSS |
| rest | rest 20 s | |
| cooldown | 300 m any stroke | easy. CSS pace = 200 / (T400 − T200) seconds per metre |
4.5k W4 B · aerobic 3×800
3000 m · about 59 min. Easy day (zone 1–2), week 4: aerobic steady swim 3 × 800 m with 30 s rest, HR under 145, breathing to both sides, sighting with the eyes only every 6–8 strokes. This session is never hard.
| step | what | note |
|---|---|---|
| warmup | 400 m free | easy, breathe both sides |
| 3 × | ||
| interval | 800 m free | Z1–Z2 steady, HR < 145; sight every 6–8 strokes in the last 100 of each piece |
| rest | rest 30 s | |
| cooldown | 200 m any stroke | easy |
4.5k W4 C · long 4500 OW
4900 m · about 91 min. Hard day 2, week 4: long swim 4500 m, NEGATIVE SPLIT — first quarter below race pace, last 1,000 m with a higher stroke rate. Pool pace 1:40–1:44 /100 m; in open water hold the effort (HR 145–152), not the pace. NO WETSUIT (race rule): expect about 5 s /100 m slower than the pool; sight every 6–8 strokes; draft 0.5 m behind feet. RACE REHEARSAL 14 days out, same weekday as the race: open water, race kit, NO wetsuit, negative split, gel at 45 min. Note the time.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| interval | 4500 m free | Z2 race pace 1:40–1:44 /100 m, HR 145–152 |
| cooldown | 100 m any stroke | easy |
4.5k W5 A · 6×100 @1:34 + 4×50 fast
2500 m · about 58 min. Hard day 1, week 5: 6 × 100 m at CSS (1:34 /100 m), 20 s rest, then 4 × 50 fast (taper: less volume, same speed). HR 150–160 on the repeats. Easy day tomorrow.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| 4 × | ||
| interval | 50 m free | build: each 50 a little faster |
| rest | rest 15 s | |
| 4 × | ||
| interval | 25 m free | fast |
| rest | rest 20 s | |
| 6 × | ||
| interval | 100 m free | Z3: hold 1:34 /100 m (CSS) |
| rest | rest 20 s | |
| rest | rest 60 s | |
| 4 × | ||
| interval | 50 m free | fast — keep the speed during the taper |
| rest | rest 30 s | |
| interval | 900 m free | Z1 steady, breathe both sides |
| cooldown | 200 m any stroke | easy |
4.5k W5 B · aerobic 4×400 + 4×50 fast (taper)
2500 m · about 50 min. Easy day (zone 1–2), week 5: aerobic steady swim 4 × 400 m with 20 s rest, HR under 145, breathing to both sides, sighting with the eyes only every 6–8 strokes. This session is never hard. Taper: the fast 50s keep the speed.
| step | what | note |
|---|---|---|
| warmup | 400 m free | easy, breathe both sides |
| 4 × | ||
| interval | 400 m free | Z1–Z2 steady, HR < 145; sight every 6–8 strokes in the last 100 of each piece |
| rest | rest 20 s | |
| rest | rest 60 s | |
| 4 × | ||
| interval | 50 m free | fast — keep the speed during the taper |
| rest | rest 30 s | |
| cooldown | 300 m any stroke | easy |
4.5k W5 C · long 2000 + 500
2900 m · about 55 min. Hard day 2, week 5: long swim 2000 + 500 m, NEGATIVE SPLIT — first quarter below race pace, last 1,000 m with a higher stroke rate. Pool pace 1:40–1:44 /100 m; in open water hold the effort (HR 145–152), not the pace. Taper: 2,000 easy then 500 at race pace.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| interval | 2000 m free | first part: below race pace |
| rest | rest 60 s | |
| interval | 500 m free | Z2 race pace 1:40–1:44 /100 m, HR 145–152 |
| cooldown | 100 m any stroke | easy |
4.5k W6 A · 4×100 @1:34 + 4×25 fast
2500 m · about 58 min. Hard day 1, week 6: 4 × 100 m at CSS (1:34 /100 m), 30 s rest, then 4 × 25 fast (taper: less volume, same speed). HR 150–160 on the repeats. Easy day tomorrow.
| step | what | note |
|---|---|---|
| warmup | 300 m free | easy |
| 4 × | ||
| interval | 50 m free | build: each 50 a little faster |
| rest | rest 15 s | |
| 4 × | ||
| interval | 25 m free | fast |
| rest | rest 20 s | |
| 4 × | ||
| interval | 100 m free | Z3: hold 1:34 /100 m (CSS) |
| rest | rest 30 s | |
| rest | rest 60 s | |
| 4 × | ||
| interval | 25 m free | fast — keep the speed during the taper |
| rest | rest 30 s | |
| interval | 1200 m free | Z1 steady, breathe both sides |
| cooldown | 200 m any stroke | easy |
4.5k W6 B · aerobic 4×400 + 4×50 fast (taper)
2500 m · about 50 min. Easy day (zone 1–2), week 6: aerobic steady swim 4 × 400 m with 20 s rest, HR under 145, breathing to both sides, sighting with the eyes only every 6–8 strokes. This session is never hard. Taper: the fast 50s keep the speed.
| step | what | note |
|---|---|---|
| warmup | 400 m free | easy, breathe both sides |
| 4 × | ||
| interval | 400 m free | Z1–Z2 steady, HR < 145; sight every 6–8 strokes in the last 100 of each piece |
| rest | rest 20 s | |
| rest | rest 60 s | |
| 4 × | ||
| interval | 50 m free | fast — keep the speed during the taper |
| rest | rest 30 s | |
| cooldown | 300 m any stroke | easy |
4.5k D · dryland shoulders + core
about 20 min. Masters swimmers: shoulder is the most common injury; a corrective programme cut upper-limb injuries by 44 %. Light band, slow tempo, Mon + Thu. Stop anything that hurts the front of the shoulder.
| step | what | note |
|---|---|---|
| interval | 15 reps Banded external rotation | |
| rest | rest 20 s | |
| interval | 15 reps Banded Face Pulls | |
| rest | rest 20 s | |
| interval | 12 reps Floor Y raise | |
| rest | rest 20 s | |
| interval | 15 reps Row | |
| rest | rest 20 s | |
| interval | 10 reps Dead Bug | |
| rest | rest 20 s | |
| interval | 1 reps Plank | |
| rest | rest 20 s | |
| interval | 12 reps Superman from floor | |
| rest | rest 20 s | |
| interval | 15 reps Glute Bridge | |
| rest | rest 20 s | |
| interval | 15 reps Banded external rotation | |
| rest | rest 20 s | |
| interval | 15 reps Banded Face Pulls | |
| rest | rest 20 s | |
| interval | 12 reps Floor Y raise | |
| rest | rest 20 s | |
| interval | 15 reps Row | |
| rest | rest 20 s | |
| interval | 10 reps Dead Bug | |
| rest | rest 20 s | |
| interval | 1 reps Plank | |
| rest | rest 20 s | |
| interval | 12 reps Superman from floor | |
| rest | rest 20 s | |
| interval | 15 reps Glute Bridge | |
| rest | rest 20 s |
Gym plan
Week-1 loads (Ido’s numbers)
| Lift | Ido’s reference | Week 1 = the same | Estimated 1RM (Epley) | Working sets sit at |
|---|---|---|---|---|
| Deadlift | 70 kg × 12 × 3 | 3 × 12 @ 70 kg | ≈ 98 kg | 71 % |
| Bench press | 60 kg × 8 × 3 | 3 × 8 @ 60 kg | ≈ 76 kg | 79 % |
| Leg press | 100 kg × 12 × 3 | 3 × 12 @ 100 kg | ≈ 140 kg | 71 % |
| Pull-ups | 8 × 3 (body weight 76 kg) | 3 × 8 | — | — |
| Incline dumbbell curl | 10 kg × 8 × 3 | 3 × 8 @ 10 kg per hand | ≈ 13 kg | 79 % |
The week
| Day | What | Notes |
|---|---|---|
| Sun | Gym B — deadlift, incline press, rows | Morning. Next day is the threshold swim: short intervals with rest, the swim that tolerates a hinge the day before best |
| Mon | Swim A — hard (threshold / CSS) | |
| Tue | off, or 30–40 min easy ride / walk | |
| Wed | Swim B — easy aerobic swim | |
| Thu | Gym A — leg press, bench, pull-ups | Morning. No deadlift here: the long swim is tomorrow |
| Fri | Swim C — long, race pace (open water from week 3) | |
| Sat | off |
Both gym days sit the day before a swim, so two rules carry the week: (1) gym in the morning, swim the next day — about 24 h, never less than 6 h; (2) every gym set stops with 2 reps in reserve in the race block. If a gym session must move, the free days are Tuesday and Saturday — never onto a swim day, and never two gym days in a row (Saturday + Sunday is not allowed; if Thursday’s session goes to Saturday, Sunday’s goes to Tuesday).
Week 1 is short: Sun 20.09 has passed and Mon 21.09 is Yom Kippur, so week 1 is Gym A on Thu 24.09 only (the swims: CSS test Wed 23.09, long swim Fri 25.09). From Sun 27.09 the full rhythm: Gym B Sunday, Gym A Thursday.
Warm-up — both sessions, 8 minutes
- 4 min easy on bike or rower.
- Band external rotation 2 × 15 per side · band face pulls 2 × 15 · floor Y raise 1 × 12.
- Two ramp sets on the first lift of the day (empty bar/half load × 8, then 75 % × 4).
Session A — Thursday (about 60 min)
| # | Exercise | Sets × reps (range) | Week-1 load | Rest | Why / note |
|---|---|---|---|---|---|
| 1 | Leg press | 3 × 12 (10–15) | 100 kg | 2–3 min | Knee-dominant legs without loading the spine the day before the long swim |
| 2 | Barbell bench press | 3 × 8 (6–10) | 60 kg | 2–3 min | Grip just wider than shoulders, elbows ~45°, shoulder blades pulled back — the shoulder-safe bench |
| 3 | Pull-ups | 3 × 8 (6–10) | body weight | 2–3 min | The swim pull. Full hang at the bottom, chest to the bar. When 3 × 10 is easy: add 2.5–5 kg on a belt or between the feet |
| 4 | Bulgarian split squat (rear foot on a bench) | 3 × 10 per leg (8–12) | 2 × 10 kg dumbbells (starting guess — adjust in session 1) | 90 s | One leg at a time: hip stability for the kick, balances the leg press |
| 5 | One-arm dumbbell row | 3 × 10 per arm (8–12) | 22 kg (starting guess) | 90 s | Horizontal pull; the second pull of the day, so pulls outnumber pushes. Day before the long swim: stop at 2 RIR |
| 6 | Incline dumbbell curl | 3 × 8 (8–12) | 10 kg per hand | 60 s | Ido’s reference exercise; slow lowering (3 s) |
| 7 | Core: dead bug 3 × 10 per side + side plank 2 × 30 s per side | 30 s | Trunk stiffness for the streamline; from Dryland D |
Session B — Sunday (about 60 min)
| # | Exercise | Sets × reps (range) | Week-1 load | Rest | Why / note |
|---|---|---|---|---|---|
| 1 | Deadlift | 3 × 12 (8–12) | 70 kg | 3 min | The hinge: glutes, hamstrings, whole back. Neutral spine, bar against the shins, push the floor away. Ramp: 20 × 10, 40 × 6, 60 × 3 before the work sets |
| 2 | Incline dumbbell press (30°) | 3 × 10 (8–12) | 2 × 20 kg (starting guess) | 2 min | Second push of the week; dumbbells let the shoulders find their own path |
| 3 | Lat pulldown, shoulder-width underhand grip — or chin-ups if there is no cable stack | 3 × 10 (8–12) | 55 kg on the stack (starting guess) | 2 min | Vertical pull #2; a different grip from Thursday’s pull-ups |
| 4 | Goblet squat (dumbbell or kettlebell held at the chest) | 3 × 12 (10–15) | 20 kg (starting guess) | 90 s | Knee-dominant legs, light on the back after the deadlift |
| 5 | Seated cable row — or chest-supported dumbbell row | 3 × 12 (10–15) | 50 kg (starting guess) | 90 s | Horizontal pull #2: mid-back and rear shoulder, the anti-“swimmer’s posture” muscles |
| 6 | Straight-arm pulldown — or dumbbell pullover on a bench | 3 × 12 (10–15) | 25 kg (starting guess) | 60 s | The freestyle pull pattern with a straight arm: lats without the biceps |
| 7 | Core + glutes: Pallof press 3 × 10 per side (or plank 3 × 45 s) + banded glute bridge 2 × 15 | 30 s | From Dryland D |
“Starting guess” loads: in the first session, find the weight that leaves 2 reps in reserve at the top rep and write it down — that is the week-1 load from then on.
The progression rule (double progression)
- Every set stops at 1–2 reps in reserve. Reps are counted; the number is written down.
- Stay at a load until all three sets reach the top of the range with 1–2 RIR.
- Then add: barbell upper body +2.5 kg, deadlift +5 kg, leg press +10 kg, dumbbells +2 kg per hand, pull-ups +2.5 kg (or +1 rep per set until 10, then load), cable stack one plate. Reps drop back to the bottom of the range and climb again.
- If a lift stalls for three sessions in a row: keep the load, add one set for two weeks, or drop 10 % and climb back. Never add load and reps in the same week.
- Deload every 6th week: 2 sets per exercise, −20 % load, same exercises. The race taper below is the first deload; the next one is the week of Sun 13.12.
- Over the months the barbell lifts move to heavier, shorter sets — the swim-transfer finding: e.g. deadlift 3 × 8 at 90 kg rather than 3 × 15 at 70.
The race weeks (until Fri 30.10.2026)
| Week | Dates | Gym |
|---|---|---|
| 1 | 21 – 26.09 | Thu 24.09: Session A (the only gym day this week) |
| 2–3 (build) | 27.09 – 10.10 | The plan as written: Sun B, Thu A. Progress by the rule, but 2 RIR, not 1 — the swim is the priority |
| 4 (peak) | 11 – 17.10 | Sun 11.10: B as written. Thu 15.10: A with 2 sets, no leg press — the 4,500 m rehearsal is on Fri 16.10 |
| 5 (taper, swim −45 %) | 18 – 24.10 | Sun B + Thu A, 2 sets each, same loads, 3 RIR |
| 6 (race week) | 25 – 31.10 | Sun 25.10 only: Session B without the deadlift (goblet squat instead), 2 sets, −20 %. Nothing on Thu 29.10. Race Fri |
| after the race | from Sun 01.11 | Week of 01.11 = 2 sets (recovery), then full progression |
Eating and sleeping around it
Protein 1.6–2.0 g per kg = 120–150 g a day, 25–40 g within two hours after the gym (a shake, or 200 g cottage cheese / 150 g chicken). On gym days that follow a swim, eat a carbohydrate meal between the two. Sleep 7–9 h; a poor night → keep the session, drop a set from each exercise.
Home version
Equipment (Ido, 2026-09-21): two dumbbells of 10 kg, a barbell, a pull-up bar, and the band from the shoulder routine. (Assumed: the barbell has no or few plates — if it can be loaded to 40 kg or more, use the barbell options marked ⊕.) Also useful: a sturdy chair or step, a backpack, and two chairs to lay the barbell across for inverted rows.
The backpack rule (how 10 kg dumbbells keep progressing)
Bodyweight moves get harder in a fixed order, one step at a time, when 3 sets reach the top of the range with 1 RIR:
- Push-ups: floor → hands on the dumbbells (deeper) → feet on a chair → band around the back → backpack with one 10 kg dumbbell inside → backpack + feet up.
- Pull-ups / chin-ups: more reps → 3-second lowering → backpack with a 10 kg dumbbell → two dumbbells.
- Split squats / step-ups: two dumbbells in the hands → 3-second lowering → front foot on a step (deeper) → backpack with a 10 kg dumbbell as well.
- Hinge: single-leg RDL with two dumbbells → 3-second lowering → one dumbbell in the backpack → ⊕ barbell RDL when the bar can carry 40 kg or more.
Warm-up — the same 8 minutes as at the gym
4 min easy (stairs, skipping, jumping jacks) · band external rotation 2 × 15 per side · band face pulls 2 × 15 · floor Y raise 1 × 12 · one easy set of the first exercise.
Home A — replaces Gym A (Thursday): legs, push, pull-ups (about 50 min)
| # | Gym exercise | Home version | Sets × reps (range) | Load / step | Rest |
|---|---|---|---|---|---|
| 1 | Leg press | Bulgarian split squat (rear foot on a chair) | 3 × 12 per leg (10–15) | 2 × 10 kg, 3 s down | 90 s |
| 2 | Bench press | Push-ups, current ladder step | 3 × 12 (10–20) | start: hands on the dumbbells, feet on the floor | 2 min |
| 3 | Pull-ups | Pull-ups (the same) | 3 × 8 (6–10) | body weight; ladder when 3 × 10 | 2–3 min |
| 4 | Split squat | Single-leg Romanian deadlift | 3 × 10 per leg (8–12) | 2 × 10 kg, 3 s down, 2 RIR | 90 s |
| 5 | One-arm row | Inverted row under the barbell on two chairs — or one-arm row 10 kg with a 2-s squeeze at the top | 3 × 12 (10–15) / 3 × 15–20 | body weight; feet on a chair = harder | 90 s |
| 6 | Incline curl | Curl seated on a chair, leaning back | 3 × 8 (8–12) | 2 × 10 kg, 3 s down | 60 s |
| 7 | Core | Dead bug 3 × 10 per side + side plank 2 × 30 s per side | 30 s |
Home B — replaces Gym B (Sunday): hinge, incline push, rows (about 50 min)
| # | Gym exercise | Home version | Sets × reps (range) | Load / step | Rest |
|---|---|---|---|---|---|
| 1 | Deadlift | Single-leg RDL 3 × 12 per leg + hip thrust (shoulders on the couch, a dumbbell on the hips) 3 × 15 — or ⊕ barbell RDL 3 × 12–15 if the bar can carry 40 kg+ | as listed | 2 × 10 kg, 3 s down, 2 RIR | 2 min |
| 2 | Incline dumbbell press | Pike push-ups (hips high, head towards the floor; feet on a chair = harder) — or feet-elevated push-ups | 3 × 10 (8–12) / 3 × 15 (12–20) | body weight | 2 min |
| 3 | Lat pulldown / chin-ups | Chin-ups (underhand) | 3 × 8 (6–10) | body weight; ladder when 3 × 10 | 2–3 min |
| 4 | Goblet squat | Dumbbell squat, dumbbells at the shoulders, 3 s down + step-ups on a chair 2 × 12 per leg | 3 × 15 (12–20) + 2 × 12 | 2 × 10 kg | 90 s |
| 5 | Seated cable row | Inverted row (feet up) — or band row with the band around a pole | 3 × 12 (10–15) | body weight | 90 s |
| 6 | Straight-arm pulldown | Floor pullover with one dumbbell, arms nearly straight — or band straight-arm pulldown from a door anchor | 3 × 12 (12–15) | 10 kg, 3 s back | 60 s |
| 7 | Core + glutes | Pallof press with the band 3 × 10 per side (or plank 3 × 45 s) + banded glute bridge 2 × 15 | 30 s |
Rules that stay the same as at the gym
- Write the reps down. Progress = more reps to the top of the range, then the next ladder step; the double-progression rule of the gym plan, with ladder steps instead of plates.
- Race weeks (Gym plan): Thu 15.10 light (2 sets, no split squats), taper week 2 sets, Sun 25.10 light without the hinge, nothing Thu 29.10.
- Gym in the morning / home in the morning — the swim is the next day either way.
- Stop anything that hurts the front of the shoulder; the shoulder band work stays in every warm-up.