Session tonnage
{{ model.primaryDisplay }}
{{ model.summaryLine }}
{{ model.totalSetsDisplay }} sets {{ model.totalRepsDisplay }} reps {{ goalLabel }} {{ model.dominantGroupLabel }} {{ model.bodyweightBadge }}
{{ model.guidanceLine }}
Workout volume inputs
The selected unit applies to load, body weight, tonnage, and exports.
Enter current body weight in the selected unit for bodyweight-equivalent load estimates.
{{ unit }}
Choose the lens for group-set guidance; it does not change tonnage math.
Use the number of times this workout pattern is repeated each week.
sessions/week
Mark bodyweight rows with bodyweight, bw, bw*0.64, bw+10, or assisted values in the load field.
Paste CSV, pipe, or tab-delimited rows. Legacy rows such as movement, sets, reps, load, seconds are also accepted.
{{ sourceStatusLine }}
Set to 0 if you do not want a work-time estimate for incomplete rows.
sec/set
Use 6-8 for most training logs; blank row RPE defaults to 7.
RPE
Use exact for spreadsheet reconciliation or plate jumps for cleaner coaching exports.
Source order mirrors the workout log; volume order puts the biggest contributors first.
Movement Group Sets Reps/set Total reps Load/rep Volume Share Work Load basis Copy
{{ row.movement }} {{ row.group }} {{ formatCompact(row.sets) }} {{ formatCompact(row.reps) }} {{ formatCompact(row.totalReps) }} {{ formatLoad(row.equivalentLoad) }} {{ formatVolume(row.volume) }} {{ formatPercent(row.share) }} {{ formatDuration(row.workSeconds) }} {{ row.loadBasis }}
Group Session sets Hard sets Weekly hard sets Reps Volume Share Read Note Copy
{{ row.group }} {{ formatCompact(row.sets) }} {{ formatCompact(row.hardSets) }} {{ formatCompact(row.weeklyHardSets) }} {{ formatCompact(row.reps) }} {{ formatVolume(row.volume) }} {{ formatPercent(row.share) }} {{ row.status }} {{ row.note }}
{{ jsonPayload }}
Customize
Advanced
:

Introduction:

Workout volume is a training-log measure that combines how many sets were performed, how many repetitions were completed, and how much load each repetition carried. It is often used to compare sessions, spot sudden workload jumps, and check whether a program is spreading work across the intended muscle groups.

Volume can be counted in more than one way. Set volume counts hard sets, repetition volume counts total reps, and volume load multiplies reps by load. A useful workout volume calculator should keep those ideas separate enough that a heavy squat day, a high-rep circuit, and a bodyweight session do not collapse into one vague number.

Movement rows sets, reps, load, RPE Load volume sets x reps x equivalent load Group review share and hard sets external load bodyweight estimate work density weekly projection

Load-volume math is clearest for barbell, dumbbell, cable, or machine work because the external load is recorded directly. Bodyweight work is less exact because a push-up, pull-up, split squat, or plank does not place the same fraction of body mass through the working muscles. Bodyweight-equivalent estimates can still make mixed sessions easier to compare, as long as they are treated as planning estimates rather than measured force.

The safest interpretation is comparative. Use the same unit, bodyweight convention, and hard-set threshold when comparing sessions. A number that looks precise can still be misleading if the exercise technique, range of motion, RPE rating, or movement category changed between logs.

How to Use This Tool:

Start by making the workout log readable, then check the result tables before using the charts or exports.

  1. Choose the Load unit. The same unit is used for entered loads, body weight, volume totals, table columns, charts, and exported files.
  2. Enter Body weight when the log includes bodyweight movements. External-load-only sessions can still calculate without relying on bodyweight estimates.
  3. Select the Training focus and Weekly frequency. These settings affect the Group Targets hard-set read, not the basic tonnage formula.
  4. Choose Bodyweight load handling. Use Marked bodyweight rows when the load cells contain entries such as bw, bw*0.64, bw+10, or assisted values. Use External load only when zero-load rows should stay at zero.
  5. Paste, drag, or browse a CSV, TSV, or text file into Workout rows. The preferred columns are movement, group, sets, reps, load, load mode, seconds per set, and RPE. Older rows in movement, sets, reps, load, seconds order are also accepted.
  6. Use Strength sample, Bodyweight sample, or Normalize rows to check the expected shape. If the warning box appears, fix the named line before reading the total as a finished session.
  7. Read Exercise Ledger first, then Group Targets. The chart tabs are useful for spotting load concentration, while the JSON view is best for auditing the exact assumptions behind a saved result.

Interpreting Results:

Session tonnage is the headline load-volume total. It adds every valid movement row after each row's sets, reps, and equivalent load have been calculated. The badges beside it summarize total sets, total reps, selected training focus, leading muscle group, and whether bodyweight estimates contributed to the result.

Exercise Ledger is the best place to audit the calculation row by row. Check Load/rep, Volume, Share, Work, and Load basis before comparing sessions. A movement with a large share can dominate the total even when its set count is modest.

Group Targets groups rows by the entered or inferred muscle group. The Read column compares projected weekly hard sets with the selected focus range. Below range and Above range are planning flags, not diagnoses. No hard-set signal means the group had no rows at or above the active RPE threshold.

  • Use load volume to compare similar movements, similar technique, and similar bodyweight assumptions.
  • Use hard sets to judge weekly exposure by group, especially when load volume is distorted by very different rep ranges.
  • Use density only when seconds per set were entered consistently, because the value is total volume divided by logged work time.
  • Use the charts to find concentration patterns, then confirm close calls in the tables where rounded display values and load basis notes are visible.

Technical Details:

Resistance-training volume is not a single universally fixed quantity. Research and coaching logs commonly use total sets, total repetitions, and volume load for different questions. Volume load is useful when the question is how much loaded work was accumulated, because it combines repetitions with the load attached to each repetition.

That usefulness has limits. A load-volume total is most comparable when exercise selection, movement range, tempo, and proximity to failure stay similar. Weekly set volume often maps more cleanly to hypertrophy planning, while load volume can be more useful for tracking a familiar lift or a tightly controlled exercise family.

Formula Core

Workout volume formulas used for movement rows and session totals
Quantity Formula Interpretation
Total reps sets x reps per set Repetition count for one movement row.
Equivalent load external load + bodyweight-estimated load Load assigned to one repetition after the selected bodyweight handling rule is applied.
Movement volume sets x reps x equivalent load Load volume for the row, reported in the selected load unit.
Work time sets x seconds per set Logged work duration for density and table review.
Density session volume / (work seconds / 60) Load volume per minute of logged work time.
Volume share row or group volume / session volume x 100 How much of the session's calculated load came from a movement or group.

Bodyweight Load Mapping

Bodyweight rows use an equivalent-load estimate when the row is marked as bodyweight work, when a bodyweight expression appears in the load cell, or when the zero-load mode treats a matching movement as likely bodyweight work. The expression takes priority over the movement-name fallback.

Bodyweight movement factors used for equivalent load estimates
Movement pattern Fallback factor Load basis shown in the ledger
Push-up or press-up 0.64 x body weight Push-up bodyweight estimate
Pull-up, chin-up, dip, or muscle-up 1.00 x body weight Full bodyweight estimate
Inverted row 0.45 x body weight Row bodyweight estimate
Split squat, lunge, step-up, or pistol squat 0.65 x body weight Single-leg bodyweight estimate
Squat, air squat, or wall sit 0.88 x body weight Squat bodyweight estimate
Bridge, hip thrust, or glute bridge 0.42 x body weight Bridge bodyweight estimate
Plank, hollow hold, dead bug, sit-up, or crunch 0.30 x body weight Core bodyweight estimate

A custom expression can override the fallback. bw*0.64 uses 64 percent of body weight, bw+10 adds 10 units of external load, and assisted bodyweight entries subtract the assistance amount before the final equivalent load is formed. The equivalent load is never allowed to go below zero.

Hard-Set Projection Rules

A hard set is counted when the row's RPE is greater than or equal to the active threshold. Blank RPE cells default to 7, and RPE values outside 1 to 10 are clamped into that range with a warning. Weekly hard sets are then calculated by multiplying session hard sets by weekly frequency.

Training focus hard-set ranges used by the group target table
Training focus Weekly hard-set range per group How to read the flag
Strength 6 to 12 Lower weekly exposure, typically paired with heavier work and more recovery focus.
Hypertrophy 10 to 20 Growth-focused weekly exposure where set count matters more than one session's tonnage alone.
Conditioning circuit 8 to 24 Wider range for repeated circuit demand, where density and total reps also matter.
Maintenance 4 to 10 Lower range for preserving movement coverage while limiting volume creep.

Accepted Bounds and Recovery Rules

Workout volume validation bounds and default rules
Field Accepted or normalized range Effect when outside range
Sets > 0 and <= 100 The row is rejected until sets are positive and inside the limit.
Reps per set > 0 and <= 1000 The row is rejected until reps are positive and inside the limit.
Seconds per set 0 to 600 The default seconds value is used when the row omits a valid value.
RPE 1 to 10 Out-of-range RPE values are clamped and reported in the warning box.
Body weight 1 to 1000 The value is clamped before bodyweight-equivalent load estimates are calculated.
Weekly frequency 1 to 14 The clamped value is used for projected weekly hard sets.

Accuracy and Privacy Notes:

Workout volume is useful training-log math, not medical advice, injury screening, or a coaching prescription. The result can support program review, but it cannot judge technique quality, pain, recovery, nutrition, sleep, or whether a volume target is appropriate for a specific person.

  • Bodyweight factors are estimates. A real push-up or lunge can change load sharing with limb length, hand or foot position, range of motion, tempo, and assistance.
  • RPE is subjective. A hard-set threshold is useful only when effort ratings are entered consistently.
  • Group inference uses movement names when the group cell is blank. Enter the muscle group directly when an exercise name is ambiguous.
  • Routine calculation happens in the browser. Pasted rows and imported text files are processed on the page, and copied or downloaded exports are created only when you use those actions.
  • Imported workout files are limited to 256 KB. Paste a smaller log or a single session when a larger file is rejected.

Worked Examples:

Strength sample with mixed external and bodyweight work

A session uses kilograms, 82 kg body weight, hypertrophy focus, two weekly repeats, and the built-in strength sample. Session tonnage reads about 11,292 kg, with 18 sets and 155 reps. In Exercise Ledger, the pull-up row uses 90 kg per rep from bw+8, while the push-up row uses about 52.5 kg from bw*0.64. Group Targets shows chest in range at roughly 14 projected weekly hard sets, while quads, back, and hamstrings sit below the selected hypertrophy range.

Bodyweight circuit with a low-effort core row

The bodyweight sample uses the same 82 kg body weight and marked bodyweight handling. The result is about 8,061 kg of Session tonnage, with the push-up row contributing about 2,939 kg of volume and the split squat row about 1,919 kg. The side plank has RPE 6.5, so with the default hard-set threshold of 7 it adds reps and volume but does not add hard sets. In Group Targets, the core group therefore shows No hard-set signal.

Fixing a rejected row

A pasted row such as Bench press, chest, 0, 8, 70, external, 34, 8 triggers a warning because sets must be greater than zero. The row is not counted in Session tonnage until the sets value is corrected. Changing the row to Bench press, chest, 4, 8, 70, external, 34, 8 adds 32 reps, 2,240 kg of volume, and four hard chest sets at the default RPE threshold.

FAQ:

What columns should my workout log use?

Use movement, group, sets, reps, load, load mode, seconds per set, and RPE when possible. The parser also accepts older movement, sets, reps, load, seconds rows, but the preferred column order gives cleaner group, effort, and bodyweight handling.

Why does a bodyweight exercise have a load value?

Marked bodyweight rows estimate an equivalent load from body weight and either the expression in the load cell or the movement-name fallback. This helps mixed logs compare push-ups, pull-ups, lunges, and loaded lifts in one ledger.

Should I compare load volume across different exercises?

Compare cautiously. Load volume is most meaningful across similar movements and similar technique. For broad program balance, use Group Targets and hard-set counts alongside the load-volume totals.

Why is a muscle group marked below range when the tonnage is high?

The range flag uses projected weekly hard sets, not total tonnage. A heavy low-set movement can produce a large volume number while still staying below the selected weekly hard-set range.

What should I do when the warning box appears?

Read the named line number and fix the value that failed validation. Common fixes include making sets and reps positive, keeping seconds per set at 600 or below, correcting an RPE outside 1 to 10, or reducing an imported file below the 256 KB limit.

Glossary:

Volume load
Total loaded work calculated from repetitions multiplied by load.
Equivalent load
The per-repetition load after external load and any bodyweight-estimated load are combined.
Hard set
A set counted toward group exposure because its RPE meets or exceeds the selected threshold.
RPE
Rating of perceived exertion, a 1 to 10 effort rating used here to decide whether a set counts as hard.
Density
Session volume divided by logged work minutes.
Bodyweight factor
The fraction of body weight assigned to a bodyweight movement when no custom expression overrides it.
Weekly hard sets
Session hard sets multiplied by the number of times the workout pattern is repeated each week.