This tool allows you to quickly build your weightlifting programs, ensure you have proper weekly volume per muscle group , and balance it with the time you spend in a gym . You can build multi-week programs, plan your mesocycles, deload weeks, testing 1RM weeks, and see the weekly undulation of volume and intensity of each exercise on a graph.
Set the program name, create weeks and days, type the list of exercises for each day, putting each exercise on a new line, along with the number of sets and reps after slash (
/ ) character, like this:
Squat 3x3-5
Romanian Deadlift 3x8
Autocomplete will help you with the exercise names. You can also create custom exercises if they're missing in the library.
On the right you'll see Weekly Stats , where you can see the number of sets per week per muscle group, whether you're in the recommended range (indicated by color), strength/hypertrophy split, and if you hover a mouse over the numbers - you'll see what exercises contribute to that number, and how much.
The exercise syntax supports RPEs , percentage of 1RM , rest timers, various progressive overload types, etc. Read more about the features in the docs !
When you're done, you can convert this program to Liftosaur program, and run what you planned in the gym, using the Liftosaur app !
To use this program:
Install Liftosaur app Copy the link to this program by clicking on below Import the link in the app, on the Choose Program screen. Delete Week Add New Week Duplicate Week Add Week Description
Add Day Description
Delete Day
Add Day Description
Delete Day
Add Day Description
Delete Day
Add Day
Week Stats Total Sets: 59
Strength Sets: 0, 0%
Hypertrophy Sets: 59, 100%
{"maxWidth":2400,"url":"/planner"}
{"exportedProgram":{"customExercises":{"fdbtizqf":{"name":"Low intensity low volume","types":[],"id":"fdbtizqf","isDeleted":false,"meta":{"synergistMuscles":[],"targetMuscles":[],"bodyParts":[],"sortedEquipment":[]}},"fqjykerr":{"name":"High intensity low volume","types":[],"id":"fqjykerr","isDeleted":false,"meta":{"synergistMuscles":[],"targetMuscles":[],"bodyParts":[],"sortedEquipment":[]}},"hsdymrhc":{"name":"High intensity high volume","types":[],"id":"hsdymrhc","isDeleted":false,"meta":{"synergistMuscles":[],"targetMuscles":[],"bodyParts":[],"sortedEquipment":[]}},"kuyozklc":{"name":"External shoulder rotation, Cable","types":["pull","upper"],"id":"kuyozklc","isDeleted":false,"meta":{"synergistMuscles":[],"targetMuscles":[],"bodyParts":[],"sortedEquipment":[]}},"gyvhlftz":{"name":"Low intensity high volume","types":[],"id":"gyvhlftz","isDeleted":false,"meta":{"synergistMuscles":[],"targetMuscles":[],"bodyParts":[],"sortedEquipment":[]}},"elpgzqcp":{"name":"Core","types":["core"],"id":"elpgzqcp","isDeleted":false,"meta":{"synergistMuscles":[],"targetMuscles":[],"bodyParts":[],"sortedEquipment":[]}},"yemijkqb":{"id":"yemijkqb","name":"Update 1RM","isDeleted":false,"types":[],"meta":{"targetMuscles":[],"synergistMuscles":[],"bodyParts":[],"sortedEquipment":[]}}},"program":{"id":"jgimdpbk","name":" SBS Hypertrophy 3/week","url":"","author":"","shortDescription":"","description":"","nextDay":44,"weeks":[],"isMultiweek":false,"days":[{"id":"bwdcduxx","name":"Day 1","exercises":[]}],"exercises":[],"tags":[],"deletedDays":[],"deletedWeeks":[],"deletedExercises":[],"clonedAt":1738955414194,"planner":{"name":" SBS Hypertrophy 3/week","weeks":[{"name":"Week 1","days":[{"name":"Day 1","exerciseText":"t: Update 1RM[1-21] / used: none / 3x10+, 1x12+ / 70% / progress: custom(adjustmentMultiplier: 1) {~\nif (week % 7 != 0) {\n if (completedReps[numberOfSets] >= reps[numberOfSets] + 5) {\n rm1 = rm1+ (rm1 * 0.03 * state.adjustmentMultiplier)\n } else if (completedReps[numberOfSets] >= reps[numberOfSets] + 4) {\n rm1 = rm1+ (rm1 * 0.02 * state.adjustmentMultiplier)\n } else if (completedReps[numberOfSets] == reps[numberOfSets] + 3) {\n rm1 = rm1+ (rm1 * 0.015 * state.adjustmentMultiplier)\n } else if (completedReps[numberOfSets] == reps[numberOfSets] + 2) {\n rm1 = rm1+ (rm1 * 0.01 * state.adjustmentMultiplier)\n } else if (completedReps[numberOfSets] == reps[numberOfSets] + 1) {\n rm1 = rm1+ (rm1 * 0.005 * state.adjustmentMultiplier)\n } else if (completedReps[numberOfSets] == reps[numberOfSets] - 1) {\n rm1 = rm1 - (rm1 * 0.02 * state.adjustmentMultiplier)\n } else if (completedReps[numberOfSets] <= reps[numberOfSets] - 2) {\n rm1 = rm1 - (rm1 * 0.05 * state.adjustmentMultiplier)\n }\n}\n~}\n\nt: Core[1-21] / used: none / 3x12+ / 150lb / warmup: none / progress: custom() {~\n for (var.i in reps) {\n if (week % 7 != 0) {\n reps[var.i] = max(completedReps)\n }\n }\n~}\n\n\n\nt: High intensity low volume / used: none / 2x10+, 1x12+ / 70% / warmup: none\nt: Low intensity low volume / used: none / 2x12+, 1x15+ / 65% / warmup: none\n\nt: High intensity high volume / used: none / 3x10+, 1x12+ / 70% / warmup: none\nt: Low intensity high volume / used: none / 2x12+, 1x15+ / 65% / warmup: none\n\n\nChest Fly[1-21] / ...t: High intensity high volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nIncline Chest Press, Leverage Machine[1-21] / ...t: Low intensity low volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nT Bar Row[1-21] / ...t: High intensity high volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nBack Extension, Bodyweight[1-21] / ...t: Low intensity low volume / progress: custom(adjustmentMultiplier: 2) { ...t: Update 1RM }\nPreacher Curl, Leverage Machine[1-21] / ...t: Low intensity low volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nLateral Raise, Cable[1-21] / 3x12+ / 70% / warmup: none / progress: dp(1lb, 10, 15)"},{"name":"Day 2","exerciseText":"Bench Press[1-21] / ...t: High intensity high volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nHanging Leg Raise[1-21] / ...t: Core / progress: custom() { ...t: Core }\nLeg Press[1-21] / ...t: High intensity low volume / progress: custom(adjustmentMultiplier: 2) { ...t: Update 1RM }\nChin Up[1-21] / ...t: Core / progress: custom() { ...t: Core }\nLateral Raise, Cable[1-21] / 3x12+ / 70% / warmup: none / progress: dp(1lb, 10, 15)\nFace Pull[1-21] / 3x12+ / 70% / warmup: none / progress: dp(5lb, 10, 15)"},{"name":"Day 3","exerciseText":"Incline Chest Press[1-21] / ...t: High intensity high volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nLat Pulldown, Leverage Machine[1-21] / ...t: High intensity high volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nExternal shoulder rotation, Cable[1-21] / 3x12+ / 70% / warmup: none / progress: dp(1lb, 10, 15)\nCrunch[1-21] / ...t: Core / progress: custom() { ...t: Core }\nShrug, Leverage Machine[1-21] / ...t: Low intensity low volume / progress: custom(adjustmentMultiplier: 1) { ...t: Update 1RM }\nPreacher Curl, Leverage Machine[1-21] / ...t: Low intensity low volume"}]},{"name":"Week 2","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\nt: Low intensity low volume / used: none / 2x11+, 1x13+ / 67.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x9+, 1x11+ / 72.5% / warmup: none\nt: Low intensity high volume / used: none / 2x11+, 1x13+ / 67.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 3","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\nt: Low intensity low volume / used: none / 2x10+, 1x12+ / 70% / warmup: none\n\nt: High intensity high volume / used: none / 3x8+, 1x10+ / 75% / warmup: none\nt: Low intensity high volume / used: none / 2x10+, 1x12+ / 70% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 4","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\nt: Low intensity low volume / used: none / 2x11+, 1x13+ / 67.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x9+, 1x11+ / 72.5% / warmup: none\nt: Low intensity high volume / used: none / 2x11+, 1x13+ / 67.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 5","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\nt: Low intensity low volume / used: none / 2x10+, 1x12+ / 70% / warmup: none\n\nt: High intensity high volume / used: none / 3x8+, 1x10+ / 75% / warmup: none\nt: Low intensity high volume / used: none / 2x10+, 1x12+ / 70% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 6","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity high volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 7","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 3x8+ / 60% / warmup: none\nt: Low intensity low volume / used: none / 3x10+ / 55% / warmup: none\n\nt: High intensity high volume / used: none / 4x8+ / 60% / warmup: none\nt: Low intensity high volume / used: none / 4x10+ / 55% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 8","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\nt: Low intensity low volume / used: none / 2x11+, 1x13+ / 67.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x9+, 1x11+ / 72.5% / warmup: none\nt: Low intensity high volume / used: none / 2x11+, 1x13+ / 67.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 9","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\nt: Low intensity low volume / used: none / 2x10+, 1x12+ / 70% / warmup: none\n\nt: High intensity high volume / used: none / 3x8+, 1x10+ / 75% / warmup: none\nt: Low intensity high volume / used: none / 2x10+, 1x12+ / 70% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 10","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity high volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 11","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\nt: Low intensity low volume / used: none / 2x10+, 1x12+ / 70% / warmup: none\n\nt: High intensity high volume / used: none / 3x8+, 1x10+ / 75% / warmup: none\nt: Low intensity high volume / used: none / 2x10+, 1x12+ / 70% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 12","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity high volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 13","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x6+, 1x8+ / 80% / warmup: none\nt: Low intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\n\nt: High intensity high volume / used: none / 3x6+, 1x8+ / 80% / warmup: none\nt: Low intensity high volume / used: none / 2x8+, 1x10+ / 75% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 14","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 3x8+ / 60% / warmup: none\nt: Low intensity low volume / used: none / 3x10+ / 55% / warmup: none\n\nt: High intensity high volume / used: none / 4x8+ / 60% / warmup: none\nt: Low intensity high volume / used: none / 4x10+ / 55% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 15","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\nt: Low intensity low volume / used: none / 2x10+, 1x12+ / 70% / warmup: none\n\nt: High intensity high volume / used: none / 3x8+, 1x10+ / 75% / warmup: none\nt: Low intensity high volume / used: none / 2x10+, 1x12+ / 70% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 16","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity high volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 17","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x6+, 1x8+ / 80% / warmup: none\nt: Low intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\n\nt: High intensity high volume / used: none / 3x6+, 1x8+ / 80% / warmup: none\nt: Low intensity high volume / used: none / 2x8+, 1x10+ / 75% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 18","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity low volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x7+, 1x9+ / 77.5% / warmup: none\nt: Low intensity high volume / used: none / 2x9+, 1x11+ / 72.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 19","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x6+, 1x8+ / 80% / warmup: none\nt: Low intensity low volume / used: none / 2x8+, 1x10+ / 75% / warmup: none\n\nt: High intensity high volume / used: none / 3x6+, 1x8+ / 80% / warmup: none\nt: Low intensity high volume / used: none / 2x8+, 1x10+ / 75% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 20","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 2x5+, 1x6+ / 82.5% / warmup: none\nt: Low intensity low volume / used: none / 2x7+, 1x9+ / 77.5% / warmup: none\n\nt: High intensity high volume / used: none / 3x5+, 1x6+ / 82.5% / warmup: none\nt: Low intensity high volume / used: none / 2x7+, 1x9+ / 77.5% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]},{"name":"Week 21","days":[{"name":"Day 1","exerciseText":"t: High intensity low volume / used: none / 3x8+ / 60% / warmup: none\nt: Low intensity low volume / used: none / 3x10+ / 55% / warmup: none\n\nt: High intensity high volume / used: none / 4x8+ / 60% / warmup: none\nt: Low intensity high volume / used: none / 4x10+ / 55% / warmup: none"},{"name":"Day 2","exerciseText":""},{"name":"Day 3","exerciseText":""}]}]}},"version":"20250331001906","settings":{"timers":{"warmup":90,"workout":180,"reminder":900},"units":"lb"}},"shouldSyncProgram":false,"isMobile":false,"revisions":[]}