Where you are vs. where this goes. 10 km at 5:30/km today is about a 55-minute 10K effort. The 2:55 goal needs roughly a 36:45 10K and sub-3 needs about 37:30. That is a big jump in one year, so the plan has time trials built in as checkpoints. If you miss a checkpoint by more than 2 minutes, slow every pace below by about 5–10 s/km and keep the structure. Your shins decide the pace of progress, not the calendar.
Race: KLSCM 2027, a hilly course. Hill work builds from week 9: rolling runs, hill reps, sustained climbs and hilly long runs, with downhill practice before the taper. On race day, run the climbs by effort and let the pace drop, then win it back on the downhills. See Hills for KLSCM in the Training tab.
Two goals, one plan. Weeks 1–31 are the same for both. From week 32 the paces are set for 2:55 (marathon pace 4:09). Decide at two points: if your week 31 half is 1:23 or faster, keep the 2:55 paces. If it is 1:23–1:25, use sub-3 paces instead: add 5–6 s/km to every marathon-block workout. Check again at the week 45 half.
Day by day
Phases
EasyWorkoutLong runRace / time trialBrisk walkRest
Pace zones by phase (min/km)
Zone
Wk 1–8
9–18
19–31
32–52
Easy / recovery
6:00–6:40
5:30–6:00
5:15–5:45
5:00–5:40
Long run
6:10–6:40
5:40–6:10
5:20–5:50
5:10–5:40
Marathon (MP)
—
4:55 steady
4:20–4:30
4:08–4:10
Half (HMP)
—
—
4:00–4:05
3:55–3:58
Threshold
—
4:45→4:20
4:15→3:58
3:50–3:55
VO2 / 1 km reps
—
4:25→4:05
3:55→3:42
3:35–3:40
Malaysian heat and humidity: add 5–15 s/km on hot days and run quality sessions before 7am. Effort beats the watch.
Checkpoints
Week
Test
Target
8
5 km time trial
< 22:30
12
10 km time trial
< 44:00
18
10 km time trial
< 41:30
24
10 km race · goal
< 40:00
28
5 km race · goal
< 19:00
31
Half marathon A-race
< 1:25:00 (≤ 1:23 = 2:55 track)
40
10 km race / TT
< 36:45
45
Half marathon tune-up
1:21–1:23
Shin rules (non-negotiable)
Pain scale: 0–3/10 that fades during the run and is gone next morning is OK. Above 3, or worse the next day: stop, take 2 days off, cross-train, restart one week back.
See a doctor for pinpoint pain on the bone, pain while walking, or pain at night. Those are signs of a stress fracture, not shin splints.
Never raise weekly km more than ~10%. Every 4th week is a down week. Keep it.
Cadence 170–180 spm, short quiet steps, land under the hips. Easy runs on grass, track or trail when you can.
Rotate 2 pairs of shoes. Replace at 600–800 km.
Sleep 7.5–9 h. Enough calories, calcium and vitamin D. Under-fuelling is a classic shin and bone stress cause.
Every day in the list below shows its session. Strength comes after running, never before a workout or long run. No strength on race days.
Hills for KLSCM 2027
The KL course climbs flyovers and highway ramps, and the climbs that hurt most come late, when your legs are already tired. The plan builds hill strength in four steps. Hill days are marked · hilly or named hill / climbs in the day list, and they count about 15% more calories per km.
Weeks
Hill work
Effort
1–8
Flat runs + short 10 s hill sprints only. Shins first
Max power, full rest
9–18
First rolling easy run (wk 9) · 45 s hill reps intro (wk 16) · rolling long run (wk 17)
Easy / 10K effort
19–31
60 s hill reps (wk 20) · 90 s long hill reps (wk 25) · rolling long run (wk 22) · hilly easy Saturdays
Hard, about threshold
32–49
90 s reps (wk 34) · 4′ sustained climbs (wk 37, 41) · hilly long runs (wk 35, 38, 42) · 35 km with climbs (wk 43) · downhill strides (wk 47)
Marathon effort on climbs
50–52
Flat. Keep the legs fresh
—
Where in KL
Bukit Kiara: real hills for reps and climbs.
Flyovers and car park ramps: short and steep, closest to the race.
Treadmill 4–8% incline: rainy days. Downhill can't be practised here.
How to run them
Up: effort, not pace. Short quick steps, tall, arms drive.
Down: quick light steps under you, lean slightly forward, do not brake. Downhills are what wreck quads late in the race.
Thursday hill sessions come the day after Strength B. In those weeks do B with 2 sets so your legs are fresh. One hard hill session a week, max.
Shins: uphill is gentle on them, downhill is not. If shins flare, do hill reps on a treadmill and walk down.
Race day: let the pace drop on climbs and get it back on the downhills. Check the official KLSCM elevation map when it is out.
Recovery between reps and sets
Session
Recovery
How
Strides (20 s)
60–90 s
Walk or very slow jog back to the start
Hill sprints (10 s)
1′30–2′
Walk down slowly. Fully recovered before the next
Hill reps (45–60 s)
~2′
Jog down slowly
Long hill reps (90 s)
~2′30
Jog down slowly
Sustained climbs (4′)
jog down
Easy jog back to the bottom, then go
Downhill strides (20 s)
walk up
Walk back up the slope
Fartlek
1′
Easy jog, keep moving
200 m reps
200 m (~1′30)
Walk or jog
400 m reps
90 s
Easy jog
800 m and 1 km reps
90 s–2′
Easy jog, as written in the session
1.2 km reps
2′30
Easy jog
Threshold 2–4 km reps
90 s–2′
Easy jog
HMP 3–5 km reps
2–3′
Easy jog
Between two blocks (e.g. 1 km reps then 200s)
3′
Easy jog
Marathon intervals
1 km float
Keep running 20–25 s/km slower. No stopping
Tempo, steady, MP, HMP blocks
none
Continuous. Drink on the move
Strength A · shin & calf
30–45 s
Between sets. 1′ between exercises
Strength B · running legs
60–90 s
Between sets. 2′ between exercises
Core C1 / C2
20–30 s
Between moves. 1′ (C1) or 1–2′ (C2) between rounds
Jog recovery is very slow, about 6:30–7:30/km. Walking is fine in heat. Start the next rep when your breathing has settled. If you cannot hit the rep pace after the full recovery, stop the session there.
Strength & core
Equipment: bodyweight and 1–2 dumbbells only. A chair, sofa, stairs and a tile floor with socks stand in for gym kit. Tap any exercise ▶ to open YouTube demo videos in a new tab. The grey line under each one is the key form cue.
Six-pack = low body fat + strong core. Abs show at about 10–12% body fat for men (about 18–20% for women). The 55 kg weight path does most of that work. Core runs 6 days a week in two types. C1 · Running core (Tue, Thu, Sat) trains stability: holding your pelvis and trunk steady so less energy leaks late in the marathon. C2 · Six-pack (Mon, Wed, Fri) builds the ab muscle with loaded, slow reps so it shows once the fat is gone. Hard ab days are 48 h apart so the muscle can grow. Strong hips, calves and core also make you faster late in the marathon and protect your shins.
A · Shin, calf & feet
Mondays · 30′ · rest 30–45 s between sets · 1′ between exercises
Slow step-down ▶ · 3×8 eachStand on a step, lower the other heel to the floor in 3 s, knee over toes. Builds the quads for KLSCM downhills.
C1 · Running core
Tue · Thu · Sat · 10–12′ · bodyweight + 1 dumbbell · 3 sets of each (2 sets in weeks 1–8) · 20–30 s between moves · 1′ between rounds
1
Dead bug ▶ · 3×10 each sideLow back pressed down. Opposite arm and leg reach out slowly. From week 9 hold a dumbbell in both hands above your chest.
2
Dumbbell plank pull-through ▶ · 3×8 each sideHigh plank, dumbbell beside you. Drag it under your body to the other side without hips twisting. Anti-rotation for arm swing.
3
Side plank ▶ · 3×30–45 s eachElbow under shoulder, body straight. Add a top-leg lift from week 9. Stops hip drop on landing.
4
Bird dog ▶ · 3×10 each sideHips level, reach long, pause 2 s.
5
Marching glute bridge ▶ · 3×20 alternatingHips high and level while you lift one foot at a time.
6
Suitcase carry (1 dumbbell) ▶ · 3×2×30 m each sideDumbbell in one hand. Walk tall without leaning. Corridor or around the house.
Do it as a circuit: one set of every move, rest, then repeat for the next round. Or do all sets of one move before the next. Both work.
C2 · Six-pack
Mon · Wed · Fri · 15–20′ · bodyweight + 1 dumbbell · 3 sets of each (2 sets in weeks 1–8, 4 sets from week 19) · 20–30 s between moves · 1–2′ between rounds
1
Reverse crunch ▶ · 3×12–15Curl hips off the floor toward your chest. Slow down, no swinging.
2
Lying leg raise ▶ · 3×10–12 (later: V-ups ▶)Hands under hips. Lower slowly, stop before your back arches.
3
Body saw / long plank ▶ · 3×30–40 sForearm plank with socks on a tile floor. Slide your body forward and back a few cm. Ribs down. Or hold a plank with elbows further forward.
Pogo hops ▶Stiff ankles, quick small bounces. Only when shins are pain-free.
8
Step jumps ▶Jump onto a stair or low step. Land soft on the whole foot. Step down, never jump down.
9
Bounding ▶Exaggerated long strides, land under the body.
10
Foam roll calves ▶Slow rolls on calves. Never roll directly on the shin bone.
Progression
Weeks
A · Shin & calf
B · Running legs
C · Core
1–8
Bodyweight. Learn the moves
Bodyweight, 2–3 sets of 10–12
2 sets, short holds (20 s)
9–18
Dumbbell in one hand on calf raises
Dumbbells, 3×8–10
3 sets, holds to 30 s, add 2 reps every 2 weeks
19–31
Add pogo hops 3×20 if shins are pain-free
Heavier, 3×6–8 + jumps onto a stair or low step 3×5
V-ups, heavier dumbbell crunch, holds to 40 s
32–49
Keep weights, 2–3 sets
Heavy 3×5–6 + bounding 3×20 m. Hold strength, do not chase new maxes
Keep 3 sets, dumbbell dead bug
50–52
2 light sets
2 light sets in week 50, none in weeks 51–52
2 light sets, none race week
Down weeks (4, 8, 12 …): drop to 2 sets. Muscle soreness that changes your running stride means too much. Cut a set next time.
Weight & makan
Your numbers
Each day in the plan shows Burn (calories you use), Eat (your target), the deficit, and your projected weight. A green tag marks the day you should drop under the next whole kg. Change these to match you, and every day updates.
How it is worked out: resting burn (Mifflin-St Jeor) × day job, plus running ≈ 1 kcal per kg per km (hill days ≈ 1.15), brisk walk, and strength sessions. Deficit: 300–500 kcal on rest, easy and workout days until week 39, smaller in weeks 40–48, none on long-run days, race weeks and the last 4 weeks. Carb-load days are a small surplus. 7,700 kcal ≈ 1 kg. These are estimates: trust your weekly weigh-in. The meal plans below are templates: add or remove rice to hit the day's Eat number (½ cup nasi ≈ 100 kcal).
Goal: 69 kg → 55 kg (−14 kg) by week 48, about 0.3 kg a week. That pace is safe for running. 55 kg is a healthy weight only if you are about 172 cm or shorter (BMI 18.5 or above). If you are taller, stop at the weight where your BMI reaches about 19. Under-fuelling while running 80–90 km a week is a common cause of shin splints and stress fractures, so the big cuts happen before the marathon block. From week 40 you only trim snacks on rest days, and you race at a stable weight.
Weight checkpoints
Week
Target
Note
1
69 kg
Weigh weekly: same day, morning, after toilet. Use the weekly average
8
~66.5 kg
~0.3 kg/week
16
~64 kg
24
~61.5 kg
Check shins, sleep and race times before going lower
31
~59.5 kg
Half marathon. Eat normally race week
39
~57 kg
End of the main deficit
48
55 kg
Last 2 kg slowly: trim snacks on rest days only, never on long-run days
49–52
hold 55
Eat at maintenance. Carb-load adds 1–2 kg of water. That is normal
Daily rules
Protein at every meal, about 1.8 g per kg (~125 g a day): telur, ayam, ikan, tauhu, tempe, susu.
Swap teh tarik → teh O kurang manis (saves ~150 kcal a cup). Roti canai → tosai or chapati. Air sirap → air kosong.
Limit gorengan, kuih goreng, ayam goreng and late-night mamak to once a week.
Water 2.5–3.5 L a day, more on hot days. Pale yellow urine is the target.
Never cut food on long-run days or the day after a hard session.
Eat more if: pace drops for 2+ weeks, shins ache, you sleep badly, get sick often, feel cold or flat all the time, or (for women) periods become irregular or stop.
Calcium · Magnesium · D3
Blackmores Calcium Magnesium + D3. 1 tablet, 3 times a day, each with a meal. This supports your bones and shins while you lose weight and run high mileage.
When
How
1 · Pagi
With breakfast, or with the meal after your morning run. Keep kopi / teh 1 h apart
2 · Tengah hari
With lunch
3 · Malam
With dinner. Magnesium in the evening can help sleep
Why split
The body absorbs about 500 mg of calcium at a time, and it absorbs best with food
Not with
Iron tablets or a big iron meal (wait 2 h), kopi or teh at the same time, or right before a run
Calcium target: about 1,000–1,300 mg a day from food plus the 3 tablets. Check the label for the calcium per tablet ×3. Milk, yogurt, tauhu, ikan bilis and sardin with bones count. Stay under 2,500 mg in total.
Vitamin D: many Malaysians are low even with sun. Ask for a vitamin D blood test (25-OH vitamin D) at your next check-up, ideally with the physio or doctor visit for your shins.
On any other medicine (thyroid, antibiotics, blood pressure)? Ask a pharmacist about timing.
Whey protein
1 scoop ≈ 25 g protein, ~120 kcal. It fills the gap to ~125 g/day. It does not replace meals. Max 1–2 scoops a day.
Day
When
How
Workout / long run
Within 30–60′ after
1 scoop + 300 ml susu rendah lemak + 1 pisang. Replaces the susu coklat
Easy run
After the run, with breakfast
1 scoop in water or susu, with oat or roti
Rest / walk
Petang snack, only if protein is short
1 scoop in water. Replaces the susu soya
Any day
Before bed, if dinner was light on protein
1 scoop in susu (slower digestion)
Not before runs and not on race morning. It sits heavy in the stomach.
Count it in your calories. 2 scoops a day add ~240 kcal.
Pick a brand tested by Informed Sport or NSF. Some supplements are contaminated.
Bloating or stomach upset: switch to whey isolate (less lactose).
Rest / walk day
~1,800 kcal (wk 40+: ~2,100) · carbs ~3 g/kg · protein ~125 g
Pagi
2 telur rebus + 2 keping roti gandum + kopi O kosong or teh O kurang manis ~330 kcal
Snek
1 buah: jambu batu, betik or epal + 1 genggam kacang tanah (unsalted) ~230 kcal
Tengah hari
Nasi campur: ½ cup nasi, 2 sayur, ikan bakar or ayam masak kicap (no skin), ulam + sambal sikit ~550 kcal
Petang
Susu soya tanpa gula or 1 tub yogurt plain ~100 kcal
Malam
Sup ayam / sup ikan + tauhu or tempe + sayur goreng sikit minyak. Nasi optional, max ½ cup ~550 kcal
Total
≈ 1,760 kcal
Easy run day
~2,200 kcal (wk 40+: ~2,500) · carbs ~4–5 g/kg · protein ~125 g
Sebelum lari
1 pisang + air (enough for runs under 60′) ~100 kcal
Lepas lari
Oat 50 g dengan susu rendah lemak + 1 pisang, or 2 roti gandum + 2 telur ~450 kcal
Tengah hari
Nasi campur: 1 cup nasi, 2 sayur, 1 protein (ikan / ayam / daging tanpa lemak) ~700 kcal
Petang
Buah + susu soya tanpa gula ~250 kcal
Malam
Ikan bakar / ayam panggang + sayur + ½ cup nasi or 1 chapati ~600 kcal
Total
≈ 2,100 kcal (+ whey ~120)
Workout / time-trial day
~2,500 kcal (wk 40+: ~2,800) · carbs ~5–6 g/kg · protein ~130 g
Sebelum lari
2 roti putih + madu or kaya nipis, or 2–3 kurma, 45–60′ before ~250 kcal
Lepas lari
Within 30′: susu coklat 300–400 ml, or Milo kurang manis + 2 telur ~250 kcal
Sarapan 2
Nasi lemak biasa (telur rebus, ikan bilis, timun, sambal sikit, no ayam goreng), or mee sup + extra ayam ~500 kcal
Tengah hari
Nasi campur: 1 cup nasi, 2 sayur, 1 protein ~700 kcal
Malam
Nasi ayam (ayam panggang, no skin) or ikan + sayur + 1 cup nasi ~700 kcal
3 days before the marathon (Thu–Sat of week 52) and 1 day before the half (Sat of week 31)
Pagi
Roti putih + kaya / jem + pisang + jus oren ~550 kcal
Tengah hari
Nasi putih 2 cup + ayam / ikan + sayur sikit, or mee hoon sup / kuey teow sup ~850 kcal
Snek
Putu mayam, apam, kuih lapis, roti bun kosong, pisang, kurma, isotonic drink ~900 kcal
Malam
Nasi 1½–2 cup or spaghetti + protein. No santan, no gorengan, no ulam / high-fibre food ~850 kcal
Total
≈ 3,150 kcal
Race day
Breakfast 3 h before · then race fuel
3 h before
3 roti putih + madu + 1 pisang + 500 ml air. Only food you have tested in long runs ~450 kcal
30′ before
1 gel or 2 kurma + a few sips of water ~100 kcal
Marathon
Gel every 25–30′ from 30′ (6–7 total). Water or isotonic at every station ~650 kcal
Half
1 gel at ~40′. Water every station ~100 kcal
Lepas
Susu coklat + nasi. Celebrate. The deficit does not restart until 1 week after ~900 kcal
Stock checklist
Tick what you have at home. Anything unticked goes on the shopping list below. Amounts are for one person for one week, unless marked monthly. Ticks are saved in this browser only.