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. Week Stats
Total Sets: 40
Strength Sets: 0, 0%
Hypertrophy Sets: 40, 100%
Upper Sets: 20 (20h ) , 3d
Lower Sets: 20 (20h ) , 3d
Core Sets: 0
Push Sets: 20 (20h ) , 3d
Pull Sets: 4 (4h ) , 1d
Legs Sets: 16 (16h ) , 3d
Shoulders: 14↓ (14h ) , 3d
Triceps: 10 (10h ) , 3d
Back: 6↑ (6h ) , 3d
Abs: 0↑
Glutes: 14↓ (14h ) , 3d
Hamstrings: 10 (10h ) , 3d
Quadriceps: 14↓ (14h ) , 3d
Chest: 16↓ (16h ) , 3d
Biceps: 0↑
Calves: 8↑ (8h ) , 3d
Forearms: 0↑
{"maxWidth":2400,"url":"/planner","isLoggedIn":false}
{"exportedProgram":{"customExercises":{},"program":{"id":"kvwuaozw","name":"SBS Hypertrophy 3x","url":"","author":"","shortDescription":"","description":"","nextDay":1,"weeks":[],"isMultiweek":false,"days":[{"id":"milybkhy","name":"Day 1","exercises":[]}],"exercises":[],"tags":[],"deletedDays":[],"deletedWeeks":[],"deletedExercises":[],"clonedAt":1746119190894,"planner":{"name":"SBS Hypertrophy 3x","weeks":[{"name":"Week 1","days":[{"name":"Day 1","exerciseText":"main_logic / used: none / progress: custom() {~\n if (week != 7 && week != 14 && week != 21) {\n if (completedReps[ns] > reps[ns] + 4) {\n rm1 = rm1 * 1.03\n } else if (completedReps[ns] < reps[ns] - 1) {\n rm1 = rm1 * 0.95\n } else if (completedReps[ns] < reps[ns]) {\n rm1 = rm1 * 0.98\n } else if (completedReps[ns] > reps[ns]) {\n rm1 = rm1 * (1.0 + ((completedReps[ns] - reps[ns]) * 0.005))\n }\n }\n~}\nAcc[1-21] / used: none / progress: custom() {~\n for (var.i in completedReps) {\n weights[var.i] = completedWeights[var.i]\n }\n~}\n\nMain / used: none / 3x10, 1x12+ / 70% / progress: custom() { ...main_logic }\nAux / used: none / 3x12, 1x15+ / 65% / progress: custom() { ...main_logic }\n\nMain: Squat[1-21] / ...Main\nAux: Romanian Deadlift, Barbell[1-21] / ...Aux\nAux: Bench Press, Dumbbell[1-21] / ...Aux\n/// Acc: Bicep Curl / 3x10 30lb / ...Acc","id":"ugchxzlt"},{"name":"Day 2","exerciseText":"Main: Bench Press[1-21] / ...Main\nMain: Overhead Press[1-21] / ...Main\nAux: Leg Press, Leverage Machine[1-21] / ...Aux","id":"xjfvbziu"},{"name":"Day 3","exerciseText":"Main: Deadlift[1-21] / ...Main\nAux: Incline Bench Press, Dumbbell [1-21] / ...Aux\nAux: Hack Squat, Barbell[1-21] / ...Aux\nAux: Overhead Press, Dumbbell[1-21] / ...Aux","id":"ductuiql"}],"id":"sjsmojby"},{"name":"Week 2","days":[{"name":"Day 1","exerciseText":"Main / 3x9, 1x11+ / 72.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x11, 1x13+ / 67.5% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"ccogouso"},{"name":"Day 2","exerciseText":"","id":"uuwicyrj"},{"name":"Day 3","exerciseText":"","id":"irmmfzvt"}],"id":"gobkbxwg"},{"name":"Week 3","days":[{"name":"Day 1","exerciseText":"Main / 3x8, 1x10+ / 75% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x10, 1x12+ / 70% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"uixotjbi"},{"name":"Day 2","exerciseText":"","id":"imjynqot"},{"name":"Day 3","exerciseText":"","id":"qxazobvd"}],"id":"cyifqkmy"},{"name":"Week 4","days":[{"name":"Day 1","exerciseText":"Main / 3x9, 1x11+ / 72.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x11, 1x13+ / 67.5% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"vlvebbjr"},{"name":"Day 2","exerciseText":"","id":"ehoygfmf"},{"name":"Day 3","exerciseText":"","id":"cmnhbfur"}],"id":"uivzssts"},{"name":"Week 5","days":[{"name":"Day 1","exerciseText":"Main / 3x8, 1x10+ / 75% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x10, 1x12+ / 180s / 70% / warmup: 1x5 45lb, 1x5 70%","id":"vxxvladv"},{"name":"Day 2","exerciseText":"","id":"gkouetok"},{"name":"Day 3","exerciseText":"","id":"pkskviei"}],"id":"txrgvprn"},{"name":"Week 6","days":[{"name":"Day 1","exerciseText":"Main / 3x7, 1x9+ / 77.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x9, 1x11+ / 180s / 72.5% / warmup: 1x5 45lb, 1x5 70%","id":"ahlqtfjr"},{"name":"Day 2","exerciseText":"","id":"ctzsqfpi"},{"name":"Day 3","exerciseText":"","id":"daxwtpmi"}],"id":"xqltelom"},{"name":"Week 7","days":[{"name":"Day 1","exerciseText":"Main / 4x5 / 60% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 4x5 / 180s / 55% / warmup: 1x5 45lb, 1x5 70%","id":"ptwfvcqa"},{"name":"Day 2","exerciseText":"","id":"zvomntpq"},{"name":"Day 3","exerciseText":"","id":"jeaxpgtw"}],"id":"frtbktzm"},{"name":"Week 8","days":[{"name":"Day 1","exerciseText":"Main / 3x9, 1x11+ / 72.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x11, 1x13+ / 180s / 67.5% / warmup: 1x5 45lb, 1x5 70%","id":"gmmlqvoo"},{"name":"Day 2","exerciseText":"","id":"imrmjiet"},{"name":"Day 3","exerciseText":"","id":"kedmykmw"}],"id":"hheuvytc"},{"name":"Week 9","days":[{"name":"Day 1","exerciseText":"Main / 3x8, 1x10+ / 75% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x10, 1x12+ / 180s / 70% / warmup: 1x5 45lb, 1x5 70%","id":"ldjvvuhd"},{"name":"Day 2","exerciseText":"","id":"nghwtvvd"},{"name":"Day 3","exerciseText":"","id":"pbbthrin"}],"id":"zspotmqv"},{"name":"Week 10","days":[{"name":"Day 1","exerciseText":"Main / 3x7, 1x9+ / 77.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x9, 1x11+ / 180s / 72.5% / warmup: 1x5 45lb, 1x5 70%","id":"tlohdxdr"},{"name":"Day 2","exerciseText":"","id":"xjezpmgq"},{"name":"Day 3","exerciseText":"","id":"erpvacil"}],"id":"uxkfhvuk"},{"name":"Week 11","days":[{"name":"Day 1","exerciseText":"Main / 3x8, 1x10+ / 75% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x10, 1x12+ / 180s / 70% / warmup: 1x5 45lb, 1x5 70%","id":"mncxeoac"},{"name":"Day 2","exerciseText":"","id":"prbucwyu"},{"name":"Day 3","exerciseText":"","id":"txxlmohp"}],"id":"zefjeooj"},{"name":"Week 12","days":[{"name":"Day 1","exerciseText":"Main / 3x7, 1x9+ / 77.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x9, 1x11+ / 180s / 72.5% / warmup: 1x5 45lb, 1x5 70%","id":"ntvhbjzh"},{"name":"Day 2","exerciseText":"","id":"ddldsmwt"},{"name":"Day 3","exerciseText":"","id":"tmhrcisb"}],"id":"tkhoddcd"},{"name":"Week 13","days":[{"name":"Day 1","exerciseText":"Main / 3x6, 1x8 / 80% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x8, 1x10+ / 75% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"upcztawe"},{"name":"Day 2","exerciseText":"","id":"exxaluqm"},{"name":"Day 3","exerciseText":"","id":"lrjqpurp"}],"id":"jgajpzcn"},{"name":"Week 14","days":[{"name":"Day 1","exerciseText":"Main / 4x5, 1x5 / 60% / 240s\nAux / 4x5 / 55% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"qhweakts"},{"name":"Day 2","exerciseText":"","id":"zhlqfdrt"},{"name":"Day 3","exerciseText":"","id":"oucrchwk"}],"id":"rfhomllb"},{"name":"Week 15","days":[{"name":"Day 1","exerciseText":"Main / 3x8, 1x10+ / 75% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x10, 1x12+ / 70% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"fdfepnjp"},{"name":"Day 2","exerciseText":"","id":"sfmvqsot"},{"name":"Day 3","exerciseText":"","id":"ghsxmnun"}],"id":"zaxuljkh"},{"name":"Week 16","days":[{"name":"Day 1","exerciseText":"Main / 3x7, 1x9+ / 77.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x9, 1x11+ / 72.5% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"ytttujtn"},{"name":"Day 2","exerciseText":"","id":"lqmwowow"},{"name":"Day 3","exerciseText":"","id":"nzbnubhv"}],"id":"shljoyvj"},{"name":"Week 17","days":[{"name":"Day 1","exerciseText":"Main / 3x6, 1x8 / 80% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x8, 1x10+ / 75% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"eujlydxq"},{"name":"Day 2","exerciseText":"","id":"uuiwemac"},{"name":"Day 3","exerciseText":"","id":"znfdjqop"}],"id":"fhbflpmk"},{"name":"Week 18","days":[{"name":"Day 1","exerciseText":"Main / 3x7, 1x9+ / 77.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x9, 1x11+ / 72.5% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"buiyjupu"},{"name":"Day 2","exerciseText":"","id":"jcvryzri"},{"name":"Day 3","exerciseText":"","id":"kitquyvb"}],"id":"dfvufnaz"},{"name":"Week 19","days":[{"name":"Day 1","exerciseText":"Main / 3x6, 1x8 / 80% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x8, 1x10+ / 75% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"oxbkdzck"},{"name":"Day 2","exerciseText":"","id":"urxgztjw"},{"name":"Day 3","exerciseText":"","id":"nofhigpm"}],"id":"nkpjimah"},{"name":"Week 20","days":[{"name":"Day 1","exerciseText":"Main / 3x5, 1x6 / 82.5% / 240s / warmup: 1x5 45lb, 1x5 70%\nAux / 3x7, 1x9+ / 77.5% / 180s / warmup: 1x5 45lb, 1x5 70%","id":"fbcxteqq"},{"name":"Day 2","exerciseText":"","id":"inecaxor"},{"name":"Day 3","exerciseText":"","id":"fshidxgq"}],"id":"qipaosxp"},{"name":"Week 21","days":[{"name":"Day 1","exerciseText":"Main / 4x5 / 60% / warmup: 1x5 45lb, 1x5 70% / 240s\nAux / 4x5 / 55% / warmup: 1x5 45lb, 1x5 70% / 180s","id":"hyzujclj"},{"name":"Day 2","exerciseText":"","id":"pdjbxlpa"},{"name":"Day 3","exerciseText":"","id":"gawlbxan"}],"id":"yuhiyxun"}],"vtype":"planner"},"vtype":"program"},"version":"20260304084247","settings":{"timers":{"warmup":90,"workout":180,"reminder":900},"units":"lb"}},"shouldSyncProgram":false,"isMobile":false,"source":"sbs","revisions":[]}