Skip to main content

Warm-up, Cooldown & Progression Protocols

Detailed protocols for session preparation, recovery, and week-by-week progression. Status: Research Complete


Part 1: Warm-up Protocols

Research Summary

Key Finding: High-load, low-volume warm-ups (80% 1RM for 5 reps) produce better performance than traditional low-load warm-ups (40-60% 1RM for 10-15 reps).

Source: ScienceDirect 2024

Warm-up Structure

PHASE 1: General Warm-up (2-3 min)
|- Light cardio: Jumping jacks, high knees, or 2-3 min on bike/treadmill
|- Purpose: Raise core temperature, increase blood flow

PHASE 2: Dynamic Stretching (2-3 min)
|- Arm circles (forward/backward): 10 each direction
|- Leg swings (front/back, side to side): 10 each leg
|- Hip circles: 10 each direction
|- Torso twists: 10 each side
|- Walking lunges with twist: 5 each leg
|- Purpose: Increase ROM, activate muscles

PHASE 3: Movement-Specific Warm-up (3-5 min)
|- Warm-up sets of first exercise
|- Set 1: 50% working weight × 8-10 reps
|- Set 2: 70% working weight × 5 reps
|- Set 3: 85% working weight × 2-3 reps
|- Purpose: Neuromuscular activation, movement pattern prep

Warm-up by Session Type

Session TypeFocus AreasSpecific Warm-up
Upper PushShoulders, chest, tricepsBand pull-aparts, arm circles, push-up progression
Upper PullBack, biceps, rear deltsBand rows, scap retractions, dead hangs
Lower QuadQuads, glutes, coreGoblet squats, leg swings, glute bridges
Lower HipHamstrings, glutes, hipsRDL with light weight, hip circles, fire hydrants
Full BodyAll major muscle groupsCombination of above, 5-7 min total

Research-Backed Warm-up Recommendations

GuidelineResearch FindingSource
Specificity mattersWarm-up should mimic main exercisesIntechOpen
High-load > low-load80% 1RM warm-up improved total volumeScienceDirect 2024
Re-warm between exercisesEspecially when muscle groups differMDPI Sports 2025
Duration: 5-10 minNSCA recommendationPMC
IndividualizationAdvanced lifters may need customized approachPMC 2024

Sample Pre-Workout Warm-up (Upper Day)

0:00-1:00  Light rowing or arm ergometer
1:00-1:30 Arm circles (10 each direction)
1:30-2:00 Band pull-aparts (15 reps)
2:00-2:30 Band dislocates (10 reps)
2:30-3:00 Push-ups (10 reps, controlled)
3:00-3:30 Scapular push-ups (10 reps)
3:30-5:00 Warm-up sets of first exercise:
- 50% × 8 reps
- 70% × 5 reps
- 85% × 3 reps

Total: 5 minutes

Part 2: Cooldown Protocols

Research Summary

Key Finding: Post-exercise stretching does NOT significantly improve recovery, reduce DOMS, or enhance strength recovery compared to passive rest.

Source: Frontiers in Physiology 2021 Meta-Analysis

What the Research Shows

ClaimEvidenceSource
Reduces muscle sorenessNo effect vs passive recoveryPubMed Meta-Analysis
Improves strength recoveryNo effect (ES = -0.08)Frontiers 2021
Increases ROMYes, acutelyScienceDirect 2025
Reduces injury riskInsufficient evidencePMC 2018

Practical Recommendation

Despite limited evidence for recovery benefits, cooldowns are still recommended by major organizations (ACSM, AHA) for:

  • Gradual heart rate reduction
  • Psychological transition from workout
  • ROM maintenance (if flexibility is a goal)
PHASE 1: Active Recovery (2-3 min)
|- Light walking or cycling
|- Purpose: Gradually lower heart rate

PHASE 2: Static Stretching (3-5 min) - OPTIONAL
|- Hold each stretch 20-30 seconds
|- Focus on muscles trained that session
|- Do NOT stretch to pain

Upper Body Stretches:
|- Doorway chest stretch
|- Cross-body shoulder stretch
|- Tricep overhead stretch
|- Lat stretch (hang from bar or doorway)

Lower Body Stretches:
|- Standing quad stretch
|- Seated hamstring stretch
|- Hip flexor lunge stretch
|- Pigeon pose (glutes)
|- Calf stretch against wall

When Cooldown Stretching IS Beneficial

SituationRecommendation
Flexibility is a specific goalInclude stretching
Feeling extremely tightMay help subjectively
Psychological benefitIf it helps you unwind
Time-constrainedSkip it - rest is equally effective

Part 3: Week-by-Week Progression

The 10% Rule

Never increase load, volume, or intensity by more than 10% per week.

Source: Cleveland Clinic, NASM

Progression by Experience Level

LevelWeight Increase FrequencyAmountMethod
BeginnerEvery 1-2 weeks5-10 lbs (upper), 10-20 lbs (lower)Linear
IntermediateEvery 2-4 weeks2.5-5 lbsDouble progression
AdvancedEvery 4-8 weeks2.5-5 lbsPeriodized
Target Rep Range: 8-12 reps

WEEK 1: 100 lbs × 8, 8, 8 (bottom of range)
WEEK 2: 100 lbs × 9, 9, 8 (progressing reps)
WEEK 3: 100 lbs × 10, 10, 9 (progressing reps)
WEEK 4: 100 lbs × 11, 11, 10 (progressing reps)
WEEK 5: 100 lbs × 12, 12, 11 (top of range)
WEEK 6: 105 lbs × 8, 8, 8 (increase weight, reset reps)

Repeat cycle...

When to Increase Weight (Decision Rules)

RuleCriteriaAction
2-for-2 RuleHit top of rep range for 2+ reps on last set, for 2 consecutive weeksIncrease weight 2.5-5%
All Sets at TopAll sets reach top of rep rangeIncrease weight next session
RPE-BasedLast set feels RPE 6-7 (should be 7-8)Increase weight

12-Week Body Recomp Progression Example

PHASE 1: Foundation (Weeks 1-4)
├── Week 1: Establish baseline weights (RPE 6-7)
├── Week 2: Same weights, focus on form
├── Week 3: Add 1-2 reps per set OR 2.5-5 lbs
├── Week 4: DELOAD - reduce volume 50%, same weights

PHASE 2: Accumulation (Weeks 5-8)
├── Week 5: Return to Week 3 weights + 5 lbs
├── Week 6: Progress reps within range
├── Week 7: Progress reps OR add weight
├── Week 8: DELOAD - reduce volume 50%

PHASE 3: Intensification (Weeks 9-12)
├── Week 9: Return to Week 7 weights + 5 lbs
├── Week 10: Increase intensity (RPE 8-9)
├── Week 11: Peak weights for the cycle
├── Week 12: DELOAD - reduce volume 50%, assess progress

Part 4: Plateau Detection & Solutions

Signs of a Plateau

Physical Signs:

  • No strength increase for 2-3 weeks despite effort
  • Weights that felt "light" now feel heavy
  • Recovery taking longer than 48-72 hours
  • Persistent joint aches or stiffness

Performance Signs:

  • Unable to add reps within target range
  • Unable to add weight when hitting rep targets
  • Movement quality declining
  • Bar speed decreasing

Mental Signs:

  • Dreading workouts consistently
  • Loss of motivation for 2+ sessions
  • Feeling "flat" or unmotivated
  • Unusual irritability

Source: ProsourceFit, BarBend

Plateau vs. Need for Deload

SymptomLikely PlateauLikely Need Deload
2-3 weeks no progress
Fatigue accumulation
Sleep quality declining
Elevated resting HR
Soreness >48 hours
Single lift stalled
ALL lifts stalled
Motivation gone 1 sessionNormal
Motivation gone 2+ sessions

Plateau-Breaking Strategies

StrategyWhen to UseHow
Deload firstAlways try first1 week at 50-60% volume
Change rep rangeAfter deload if still stuckSwitch 8-12 to 6-8 or 12-15
Change exercise variationSame movement pattern, different exerciseBarbell bench → Dumbbell bench
Add intensity techniqueIntermediate+ liftersDrop sets, rest-pause on final set
Increase frequencyIf recovery allows2x → 3x per muscle/week
Decrease frequencyIf overreached4 days → 3 days/week
Address nutritionIf in aggressive deficitIncrease calories to maintenance
Address sleepIf <7 hours consistentlyPrioritize sleep over training

Decision Tree: What to Do When Stuck

Stuck for 2-3 weeks?

├── Have you deloaded in last 4-6 weeks?
│ │
│ ├── NO → Take a deload week
│ │
│ └── YES → Continue below

├── Is it ONE lift or ALL lifts?
│ │
│ ├── ONE LIFT:
│ │ ├── Change exercise variation
│ │ ├── Change rep range
│ │ └── Add intensity technique
│ │
│ └── ALL LIFTS:
│ ├── Check sleep (<7 hrs? Fix it)
│ ├── Check nutrition (deficit too aggressive?)
│ ├── Check life stress (if high, reduce volume)
│ └── Consider extended deload (2 weeks)

└── Still stuck after 2 more weeks?

└── Full program change may be needed

When to Change Your Program

DON'T change if:

  • You've been on the program <6 weeks
  • You haven't tried deloading
  • Only 1-2 exercises are stuck
  • You're making progress on other metrics (reps, form, etc.)

DO change if:

  • You've run the same program 12+ weeks with proper deloads
  • All major lifts have plateaued for 4+ weeks
  • You've addressed sleep, nutrition, and recovery
  • The program no longer fits your goals

Source: The Muscle PhD


Implementation in Mo

Warm-up Generation

interface WarmupProtocol {
generalWarmup: Exercise[];
dynamicStretches: Exercise[];
specificWarmupSets: WarmupSet[];
}

function generateWarmup(sessionType: SessionType, firstExercise: Exercise): WarmupProtocol {
const generalWarmup = [
{ name: 'Light cardio', duration: '2 min' },
];

const dynamicStretches = getDynamicStretchesForSession(sessionType);

const specificWarmupSets = [
{ percent: 50, reps: 8, exercise: firstExercise },
{ percent: 70, reps: 5, exercise: firstExercise },
{ percent: 85, reps: 3, exercise: firstExercise },
];

return { generalWarmup, dynamicStretches, specificWarmupSets };
}

Progression Tracking

interface ProgressionCheck {
shouldIncreaseWeight: boolean;
reason: string;
suggestedIncrease: number;
}

function checkProgression(
exercise: Exercise,
lastWeekPerformance: SetLog[],
thisWeekPerformance: SetLog[],
targetRepRange: [number, number]
): ProgressionCheck {
const [minReps, maxReps] = targetRepRange;

// Check if hit top of range on all sets
const allSetsAtTop = thisWeekPerformance.every(set => set.reps >= maxReps);

// Check 2-for-2 rule
const lastSetExceeded = thisWeekPerformance[thisWeekPerformance.length - 1].reps >= maxReps + 2;
const previousWeekExceeded = lastWeekPerformance[lastWeekPerformance.length - 1].reps >= maxReps + 2;
const twoForTwoMet = lastSetExceeded && previousWeekExceeded;

if (allSetsAtTop || twoForTwoMet) {
return {
shouldIncreaseWeight: true,
reason: allSetsAtTop ? 'All sets at top of range' : '2-for-2 rule met',
suggestedIncrease: exercise.category === 'compound' ? 5 : 2.5,
};
}

return {
shouldIncreaseWeight: false,
reason: 'Continue progressing reps',
suggestedIncrease: 0,
};
}

Plateau Detection

interface PlateauAnalysis {
isPlateaued: boolean;
type: 'single_lift' | 'multiple_lifts' | 'all_lifts' | null;
suggestedAction: string;
priority: 'deload' | 'variation' | 'program_change' | 'lifestyle';
}

function detectPlateau(
exerciseHistory: ExerciseHistory[],
weeksSinceDeload: number
): PlateauAnalysis {
const stuckExercises = exerciseHistory.filter(ex =>
ex.weeksWithoutProgress >= 3
);

if (stuckExercises.length === 0) {
return { isPlateaued: false, type: null, suggestedAction: 'Continue current program', priority: null };
}

// Check if deload is overdue
if (weeksSinceDeload >= 6) {
return {
isPlateaued: true,
type: stuckExercises.length === exerciseHistory.length ? 'all_lifts' : 'multiple_lifts',
suggestedAction: 'Take a deload week - you are overdue',
priority: 'deload',
};
}

// Single lift stuck
if (stuckExercises.length === 1) {
return {
isPlateaued: true,
type: 'single_lift',
suggestedAction: `Try a variation of ${stuckExercises[0].name} or change rep range`,
priority: 'variation',
};
}

// Multiple lifts stuck
if (stuckExercises.length < exerciseHistory.length) {
return {
isPlateaued: true,
type: 'multiple_lifts',
suggestedAction: 'Take a deload week, then reassess',
priority: 'deload',
};
}

// All lifts stuck
return {
isPlateaued: true,
type: 'all_lifts',
suggestedAction: 'Check sleep, nutrition, and stress. Extended deload may be needed.',
priority: 'lifestyle',
};
}


Last Updated: 2025-12-08