Lose fat and gain muscle simultaneously. Balanced approach.
General fitness
Stay healthy, feel good, no specific aesthetic target.
Custom physique
Set your own muscle group priorities.
Body composition target
What body composition are you working toward? Pick the one that fits the lifestyle you want.
Set priority for each muscle group
Daily check-in
Same conditions — morning, fasted, after bathroom
Weight (lb)
Monthly body fat check-in
%
The Toji Method
Adaptive home gym training
How it works
Tap a topic to learn more.
Set feedback
After each set, rate how it felt. The app uses this to adjust your workout in real time and plan your next session. Your target zone is Hard or Failed — if everything feels Easy or Good, the weight isn't heavy enough.
Easy — not hard enough. Weight jumps immediately for remaining sets, and again next session.
Good — still comfortable. Reps push to top of range. If already at top, weight jumps.
Hard — target zone. Reps nudge up +1 each session. After 2 consecutive Hard sessions at top of range, weight jumps.
Failed — ideal stimulus. Weight drops for remaining sets with no rest — go straight into the next set. Between sessions: hold weight, build reps. 3 consecutive fails = slight deload.
Session types
Two ways to start a workout. The Train tab shows both as side-by-side cards. Pick based on the time and energy you have.
Full Session — 8 exercises, ~50 minutes. Compounds, accessories, finishers, and core. Standard 8-12 rep range for compounds and 12-15 for accessories. The default for a normal training day.
Quick Session — 6 exercises in 3 supersetted pairs, ~22 minutes. Targets 15-20 reps per set in a high-density, minimum-effective-volume protocol. Built for days when you have 20 minutes instead of an hour. Different stimulus, both productive.
Quick Session
A high-density, time-efficient workout structured as three supersetted pairs. Each pair targets a different muscle area within the focus you picked.
Three pairs of two — exercises A and B in each pair, done back-to-back with minimal rest. The progress dots at the top show your position across the three pairs (gray = pending, red = active, green = done).
3 sets, 15+ reps, each one hard — fewer sets than Full Session, so each one has to count. Push to a rep or two from failure; stopping at a comfortable 15 with gas in the tank is the miss, not the goal.
Lower starting weight — Quick Session starts you at ~70% of your usual weight to fit the higher rep target. The app auto-suggests this; adjust as needed on the first set.
Rate every set — each Quick set gets the same Easy/Good/Hard/Fail tap as Full Session. It's one tap, but it tells the app how hard you actually pushed, which feeds your recovery and the weight you get next time. The last set is the explicit to-failure set: empty the tank, then rate it. The rating only appears on the active set so you always know what's next.
Shared progression with Full Session — the app uses the same weight-tracking across both modes. If you've been doing DB bench at 50 lb in Full Session, Quick Session knows that too.
Supersets & pairs
Two exercises paired back-to-back with no rest between them. Quick Session uses pairs as its core structure (3 pairs always); Full Session adds 1-2 supersets among standalone exercises.
Pair UI — each pair gets a header showing its number (Quick Session) or "Superset" (Full Session) plus muscle tags showing what's being trained. Each exercise within a pair gets a letter prefix (A, B) for clarity.
GO pill — rotates between partners as you complete sets. After finishing set 1 of A, the GO pill jumps to set 1 of B. Always tells you which set is next.
Partner switch banner — appears for ~3.5 seconds after each completed set, telling you which partner to do next. Read it and start the next set.
Dropsets
Lower the weight and grind out more reps with no rest. Adds total volume and metabolic stress past failure — strong hypertrophy stimulus when used judiciously.
Manual — tap "+ Drop set" on any weighted exercise's card to add an extra set at one weight step lower. Available anytime in Full Session. (Hidden in Quick Session to keep the flow tight.)
Auto-add (opt-in) — toggle on via Settings → Intensity techniques. The app automatically adds a dropset to your last set when you push it Hard (or Easy at the equipment ceiling). Caps at 1 auto-dropset per session, fires only in hypertrophy phase, skips your first compound in Full Session to preserve strength for the rest of the session.
When to use — best for hypertrophy. Push your last set to genuine failure first, then drop and rep out. Don't dropset every exercise every session — recovery cost is real.
Smart starting weights
When the generator picks an exercise you've never trained before, the app estimates a sensible starting weight from your existing training history instead of starting at the static minimum.
How it works — looks at your progressions for exercises that hit the same dominant muscle, takes the median weight of similar-type exercises (compound vs accessory), applies an 80% conservative bias, and snaps to a weight you actually own.
Why it matters — if your DB Bench is 50 lb and you encounter DB Incline Press for the first time, you start at ~40 lb instead of the static default of 20 lb. Avoids the "every new exercise starts laughably light" frustration.
Manual override — the estimate is just a starting point. Adjust the weight on the first set if it's off, and the normal progression takes over from there.
Timed exercises
Exercises like farmer carry, planks, and jump rope use a countdown timer instead of reps.
5-second prep — when you tap Start, the timer counts down "Get ready: 5...4...3...2...1..." before the actual exercise timer begins. Gives you time to pick up weights and get in position.
Auto-reset — after logging feedback on a timed set, the timer automatically resets to the next set's target. No need to tap Reset manually.
Weight tracking — farmer carry tracks both weight and time. Feedback adjusts the weight (Easy bumps up, Fail drops) just like a regular dumbbell exercise.
Periodization
The app automatically cycles through three training phases so your body doesn't adapt to the same stimulus. You don't need to manage this — it happens based on your session count.
Hypertrophy (sessions 1–12) — high volume, 8–12 reps for compounds, 12–15 for accessories. The muscle-building phase. Push hard — target Hard and Failed feedback.
Strength (sessions 13–18) — heavier weight, 4–6 reps for compounds, same set volume as hypertrophy. Lower reps and higher load — not less work. This phase builds the raw strength that makes the hypertrophy phase more effective.
Deload (sessions 19–21) — weights drop to 60%, sets are halved. Easy and Good are expected. This isn't laziness — it's recovery. Your muscles grow during rest, not during lifting. After deload, the cycle repeats and you'll be stronger.
Body composition target
Instead of picking an arbitrary goal weight, you pick the body composition you're working toward. The app calculates the actual target weight from your current lean mass and the body fat % range you're aiming for. Change your target anytime in Settings → Goal → Body comp target.
Athletic — Visible abs, defined musculature. Very high effort. 12–18% BF (men) / 18–22% (women).
Fitness — Lean and healthy without abs. High effort. 14–22% BF (men) / 21–26% (women).
Healthy — Good proportions, doctor-approved. Moderate effort. Most sustainable for long term. 18–25% BF (men) / 24–30% (women).
The body comp card tracks your weight trend and composition over time. The app asks for your weight once per day and body fat once per month.
7-day average — your real weight. Daily weight swings 2–4 lb from water, sodium, and food. The weekly average smooths this out so you see the actual trend, not the noise.
Rate (lb/week) — how fast you're losing or gaining. For fat loss, 0.5–1.0 lb/week is ideal. Faster than 1.5 lb/week means you're likely losing muscle too. Flat for 2+ weeks means the deficit isn't real or you're recomping.
Fat mass vs lean mass — calculated from your monthly body fat check-in. During a cut, you want fat mass going down while lean mass stays flat or goes up. If lean mass is dropping fast, eat more protein or reduce the deficit.
FFMI (Fat-Free Mass Index) — normalizes your lean mass to your height. It answers "how muscular am I for my frame?" Average is under 20, Athletic is 20–22, Muscular is 22–25, Elite is 25+. The natural ceiling for most people is around 25.
ETA to target — weeks remaining at your current rate. This shifts as your rate changes. Don't chase this number — focus on consistency and the ETA takes care of itself.
The card border color tells you the overall trend:
Green — weight trending down. Cut is working.
Yellow — weight flat. Could be a stall or recomp — check body fat trend monthly.
Red — weight trending up. Either intentional bulk or the deficit isn't real.
Strength section
The Strength section on the dashboard is your training overview. The big card at the top shows your current score and tier with a row of dots showing your position across all 5 tiers. Below it is a grid of 8 cards — each is a tappable shortcut to a deeper view.
Score — your strength score change over the last 90 days, with a sparkline. Tap for the full history chart and per-lift breakdown.
Goal — your active strength goal (or a CTA to set one). Shows points remaining and ETA. Tap to manage.
PRs — total personal records earned, plus the most recent one. Tap for the full PR feed.
Bodyweight — your top bodyweight benchmark (max push-ups, pull-ups, plank, etc.). Tap for the full grid.
Muscles — number of muscle groups with tracked lifts, plus a mini bar chart of relative strength. Tap for top 3 lifts per muscle.
Achievements — earned vs total, with a progress bar. Tap to see what you've unlocked and what's next.
Lifts — number of compound lifts you're tracking. Tap for category-grouped progression sparklines.
Career — total sessions and training age. Tap for lifetime stats (volume, PR streak, etc.).
Strength score & tiers
Your single "am I getting stronger" number. Calculated from your best e1RM across tracked compound lifts, normalized to your bodyweight, then multiplied by 100. The score updates automatically after every session and is saved daily so you can see how it's grown over weeks and months.
Beginner — 0–149. Just starting out. Focus on consistency and form.
Novice — 150–399. Built a base. Strength gains come fast.
Intermediate — 400–699. Solid lifter. Progress requires more deliberate effort.
Advanced — 700–999. Strong by any measure. Years of consistent training.
Elite — 1000+. Top tier. Most lifters never reach this.
Strength goals
Pick a tier to chase from the Goal card. The app records your starting score and tracks your rate of progress to estimate how many weeks until you hit the target.
Picking a tier — tap Goal → see your current score and a list of tiers higher than your current. Tap a tier to set it as your target.
ETA calculation — based on your average pts/day since you set the goal. Needs at least a week of data before showing an estimate. Goes up if you're making progress, fades to "—" if you stall.
Reaching it — when your score crosses the target, the Goal card celebrates and prompts you to set a new one. You can clear and re-pick a goal anytime.
Personal records
PRs are detected automatically every session. When you beat a previous best, you get a banner celebration and the PR is logged. Three types are tracked:
Weight PRs — when your e1RM (estimated 1-rep max from Epley formula) on any weighted exercise beats your previous best. Catches both heavier weight at the same reps and more reps at the same weight. Applies to compounds (DB bench, OHP, row) and accessories (curls, lateral raises, flys) alike.
Rep PRs — when you do more reps than ever before on a bodyweight exercise (push-ups, pull-ups, etc.).
Time PRs — when you hold a timed exercise (plank, farmer carry, etc.) longer than ever before.
Major PRs (e1RM jumps of 8+ lb, 3+ extra reps, or 15+ extra seconds) get a red accent and "MAJOR PR" tag in the PR feed.
Achievements
20 milestones spread across 5 categories. They unlock automatically as you train — no manual claiming. Each comes with its own banner celebration.
Tier crossings — Reach Novice, Intermediate, Advanced, and Elite scores.
PR streaks — 4, 12, and 26 consecutive weeks with at least one PR. Consistency rewards.
Volume milestones — 100k, 500k, and 1M lb of lifetime volume lifted.
Session count — 50, 100, 250, and 500 sessions completed.
The Achievements detail screen shows everything you've earned plus the closest unearned ones with progress bars — so you can see what's coming.
Muscle recovery
Each muscle group has a recovery score from 0–100%. It's calculated from what you trained, how hard you pushed (your feedback), how many sets you did, and how many hours ago the session was. Everything decays back to 100% over 48 hours. The app uses this to recommend which workout focus to pick.
Fresh (75–100%) — fully recovered. Good to train this muscle hard.
Recovering (40–74%) — still repairing. Can train but expect lower performance.
Fatigued (0–39%) — needs rest. Training this muscle again risks junk volume and injury.
Dashboard stats
The four cards at the top of the dashboard. Each shows a number, label, and a small visual hint about what it means.
Week streak — consecutive weeks where you completed 3+ sessions. The single best predictor of long-term results. Below the number, a row of 4 dots shows the last 4 weeks — filled red means you hit 3+ sessions that week. Weeks run Monday through Sunday.
This week — sessions completed Monday through Sunday. Target matches your schedule setting from onboarding. The bar fills red while you're under target, green when you hit it.
Days since last — how recent your last session was. Turns red after 3+ days to nudge you back in.
Avg vol / session — average pounds lifted per session across your full history. The sparkline shows your last 10 sessions so you can see if volume is trending up or down.
Equipment & weight pools
The app builds workouts using only the equipment you actually own. You set this once during onboarding and can change it anytime in Settings. With 82 exercises across 15 muscle pools, the generator finds workable combinations for any equipment configuration.
Bodyweight only — 34 pure-bodyweight exercises across all 5 focus types. Push-ups, squats, lunges, planks, and supermans alongside improvisations like inverted rows (under a table or low surface), door towel rows, and prone T-raises that need no equipment. Every focus type generates a complete 6-exercise Quick Session for bodyweight-only users.
Bodyweight + weights — weighted exercises take priority for muscle building. Bodyweight rotates in for variety and to fill gaps where weighted options aren't appropriate.
Dumbbell pool — pick exactly which weights you have (5–100 lb in 5 lb increments). The app only uses weights from your pool, never suggests something you don't own.
Kettlebell pool — same system as dumbbells, separate selection. Used for KB-specific exercises like swings, snatches, and cleans.
Accessories — toggle pullup bar, dip bars, bench, step, bands, or ab wheel if you have them. Each unlocks the relevant exercises in the generator.
Your data
All your data stays on your device. Nothing is sent to a server.
Export — download a JSON backup of all your data from Settings. Do this before clearing browser data or switching phones.
Import — restore a backup file from Settings. Merges with any existing data on the device.
AI coach export — copy a structured training report to your clipboard from Training History. Paste it into the AI assistant of your choice for personalized coaching analysis.
Strength Score
Track your strength journey
Priority muscles
Bias volume toward up to 2 priority muscles. Mark others as Reduced if they're already developed.
Personal Records
Every PR you've ever earned
Bodyweight Benchmarks
Your max reps and times across all bodyweight exercises