Dip Belt Calculator
This tool determines what weight plates to put on a dip belt to reach a target weight, while staying balanced. This is helpful for calisthenics progression.
Input your desired Target Weight and Available Weights, then click Submit. Use the same weight unit for both fields.
Notes
- While decimal values e.g.
2.5
for weight can technically be inputted and be factored in due to JS’s lazy variables, this has not been tested. - The algorithm prefers putting the heaviest weight(s) in the center, while using as few plates as possible, and the layout must be balanced.
- More unusual configurations such as even distribution (e.g.
15-10-15-10-15
) or heaviest plates outside (e.g.45-15-45
) are not currently supported.
Context
A dip belt is commonly used to add weight to pull-ups and dips, which has a chain to put weights on – such as plates or a kettlebell. This calculator is meant to determine the optimal plate layout to put on the dip belt as you progress higher.
The main difference between a barbell and dip belt is that a standard barbell by itself weights 45lb, while the dip belt weighs basically nothing and can have any weight configuration. However, both should use weights in a balanced configuration to target muscles evenly.
For a dip belt, the preference is to use the heaviest plates available that are compatible with the target weight, and to center the heaviest plate(s) for stability. Smaller plates should then be placed evenly outwards.
One issue with dip belts is that increasing the weight progressively requires new weight configurations. For example, if you go from 25lb to 30lbs, you may go from one 25lb plate, to three 10lb plates, or two 15lb plates. This all depends on what weights are available.
If you are unable to get a good configuration for a target weight using the calculator, then you can use a smaller target with higher reps (while keeping reps within ideal hypertrophy range), or try going higher.
Also, for higher weights in the 100-200 range, viable configurations (with an amount of plates that will actually fit on a belt) become rare. However, at this range it’s worth questioning how much further you want to go with weight, due to the increased risk of injury. It might make more sense to try different variations of the exercise or a barbell version that targets similar muscles, instead of continuing to increase weight on a dip belt.
Programming details
The usefulness of this calculator is debatable, since most people other than powerlifters probably wouldn’t think twice about what weights to put on a dip belt or barbell.
However, I became interested in this problem from a programming perspective about half a year ago, when I got into weighted dips and wanted to make gradual progress. I used Javascript for convenience.
After getting inconsistent results with initial experiments, I realized that this was a variant of the coin change problem, which has many example solutions out there.
However, the dip belt problem had an important distinction from the coin change problem – it needed to be a centrally balanced set of numbers that added up to the target, with the least amount possible. Therefore, I needed to get every combination, not just the number of combinations or the most optimal combination.
The current solution is brute force and pretty inefficient, where it considers every possible combination of every available plate that add up to the target weight, and then de-duplicates the combinations before attempting to find the most optimal combinations. But it works for most cases I’ve tried.
I have decided to publish this now despite the lack of performance optimization / polish, because this project has been on and off for too long.
Last updated: June 2024