Abstract
We study 2,488,584 raw full-power third attempts from 337,773 lifters at 21,280 meets since 2012. A third attempt succeeds 66% of the time on the squat, 62% on the deadlift and only 48% on the bench. On the squat and deadlift, success barely depends on the size of the jump, and within the same lifter bigger-than-usual jumps succeed more often. We argue that this is selection: the jump is chosen after the second attempt and carries the lifter’s unrecorded form. A gradient-boosting model trained on 2012–2023 and tested on 2025–26 is well calibrated but reaches an AUC of only 0.66.
In plain words
- 48%
of third bench attempts get white lights, far fewer than on the squat and deadlift. Bigger bench jumps fail more often, but the same lifter makes bigger and smaller ones about equally often.
- +4 pts
On the squat, the same lifter makes more third attempts when jumping bigger than usual (+2 pts on the deadlift). The jump is a signal of a good day, not a cause of success.
- 52%
of repeated squats are made after a missed second, and only about a third on bench and deadlift. A missed second is a strong warning.
Data
The data is the public OpenPowerlifting archive. We keep every raw, full-power (squat, bench, deadlift) entry since 2012 for which the federation reported all three attempts of a lift. A lifter entered in two divisions of the same meet appears once. Rows with obvious entry errors are dropped, such as jumps above 30% (the full list is under Table 1).
For a lifter with an earlier raw meet we also know the pre-meet best of the lift, the heaviest good lift of that kind at any earlier raw full-power meet with a valid total. It is the only handle we have on how heavy a weight is for that lifter.
Entry errors are a second attempt below the first or more than 30% above it, a third more than 5% below the second or more than 30% above it, a second attempt under half or over one and a half times the pre-meet best, and a bodyweight under 30 kg or missing. The year 2024 sits between training and test set on purpose (Section 7).
How often third attempts succeed
For every group of attempts we report the share that got white lights, with a 95% confidence interval around it: the Wilson score interval, which unlike the textbook interval stays between 0 and 100% even for small groups.
With hundreds of thousands of attempts per cell, the intervals in Table 2 are a fraction of a percentage point wide; the uncertainty in this study is not sampling noise but what the data cannot see.
| Lift | 1st | 2nd | 3rd | Attempts per column |
|---|
Each column counts the same lifter × meet × lift rows, so the drop from the first to the third attempt is not a change in who is lifting.
Jump size
Take third attempts after a good second and group them by the jump , where and are the second and third attempt. Common sense says that a bigger jump is heavier relative to what the lifter just did and should fail more often.
Third-attempt success by jump size
Third Attempt by Daniel Vahl · Data: OpenPowerlifting, current dump
On the bench it does: success falls from just over half for jumps of 3–4% to under 40% for jumps of 12% and more. On the squat and deadlift the curves are nearly flat from 4% to 12%, and small jumps of 1–3% even succeed less often. Read naively, Figure 1 says: jump big, it costs nothing. Section 5 shows why that reading is wrong.
The selection problem
A lifter picks the third attempt after the second, knowing how it moved. Write for the potential outcome, whether the third attempt would be good with jump , and for the lifter’s form on the day, which the data never records. The jump is chosen depending on , and also drives . The observed curve in Figure 1 is therefore
The left side averages over the lifters who chose ; the right side is the rate everyone would have if they all jumped . The gap is selection bias, and no amount of data on choices alone closes it.
Same lifter, different day. Comparing each lifter with themselves removes everything that is fixed about them, for example being a cautious or a bold attempt picker. For lifters with at least four third attempts on a lift after a good second, we split those attempts into jumps bigger and smaller than their own usual (median) jump.
The math: the within-lifter contrast
Let be the median jump of lifter and the jump of their attempt . The contrast is
Attempts exactly at the median are left out. Almost every lifter contributes to both sides, about equally often, so anything constant about the lifter cancels.
Same lifters: bigger-than-usual jumps succeed more often
Third Attempt by Daniel Vahl · Data: OpenPowerlifting, current dump
On the squat, the difference is +4.3 percentage points (71.5% against 67.2%). A heavier bar cannot make a lift easier, so the jump must carry information: lifters jump big when the second attempt flew. The within-lifter comparison removes who they are, but not , which changes from meet to meet. On the bench the difference is only +0.3 points: the same lifter makes bigger and smaller jumps about equally often, so the falling bench curve in Figure 1 is mostly a difference between lifters.
After a missed second. The same pattern appears when the second attempt fails. Lifters who repeat the weight make it less often than lifters who go up anyway (Figure 3). Going up after a miss probably only looks smart because the lifters who do it missed for a reason they could fix, such as depth or a missed command.
Third attempt after a missed second: repeat or go up
Third Attempt by Daniel Vahl · Data: OpenPowerlifting, current dump
The PR wall
A better yardstick than the jump is the lifter’s pre-meet best . We group third attempts after a good second by .
Third-attempt success by share of the pre-meet best
Third Attempt by Daniel Vahl · Data: OpenPowerlifting, current dump
On the squat and deadlift the odds fall steeply up to and then level off: once a third attempt is a PR, it hardly matters by how much. That is selection again: someone attempting is usually a newer lifter whose old best is out of date. The bench keeps falling past the old best.
Predicting a third attempt
A model does not solve the selection problem, but it answers a clean question: given everything recorded before the third attempt, how well can we tell whether it will be good? The inputs are the lift, sex, whether the first and second attempts were good, both jumps, the second attempt relative to bodyweight and to the pre-meet best, the third relative to the pre-meet best, bodyweight, age, experience, days since the last meet, drug testing and year.
Two models, tested on the future. A logistic regression, which bends the continuous inputs along smooth curves, and gradient boosting, which adds up many small decision trees. Both are trained on meets before 2024 (1,548,917 attempts) and tested on meets from 2025 on (589,814 attempts), with 2024 left out as a gap in between.
The math: models, scores and importance
The logistic regression uses cubic B-splines with six knots for the jumps, the attempts relative to the pre-meet best and to bodyweight and age (), linear terms for the other numeric inputs (: bodyweight, experience, days since the last meet, year) and indicators for the categorical inputs (). It is fitted on a random 600,000 of the training attempts; missing values are filled with the median, plus an indicator.
Gradient boosting starts from the log-odds of the overall success rate and adds histogram trees with learning rate , stopped early on a validation split:
Table 3 reports log loss , Brier score and the AUC:
The importance of input in Figure 6 is the increase in log loss when its column in the test data is randomly permuted, :
| Model | Log loss | Brier score | AUC |
|---|
Gradient boosting wins and is well calibrated: when it predicts 70%, about 70% of those attempts are good (Figure 5). That matters more than the AUC when the numbers are used as probabilities, as in the calculator in Section 9.
Calibration: predicted against observed success
Third Attempt by Daniel Vahl · Data: OpenPowerlifting, current dump
What the model relies on. Shuffling one input at a time shows how much worse the predictions get without it. The lift matters most, then strength relative to bodyweight: on the squat and deadlift, stronger lifters miss more third attempts, plausibly because they pick attempts closer to their limit.
What the model relies on most
Third Attempt by Daniel Vahl · Data: OpenPowerlifting, current dump
Limits and next steps
- No causal answer. To learn what a bigger jump does, we need variation in that is independent of : rules that force a minimum increment, record attempts where the record sets the weight, or meets where attempts are declared in advance.
- Reporting differs. Only federations that publish single attempts are included, mostly from the US and international meets.
- Old yardstick. The pre-meet best can be years old. A latent model of each lifter’s current strength would give a sharper .
How it was computed. The dataset is built from the OpenPowerlifting dump with DuckDB, and the models are fitted in Python with scikit-learn. Every number on this page is recomputed with each data update.
Your third attempt
The calculator at the end of the page tries the model on your own numbers. It takes real lifters from the 2025–26 meets who were in your spot (same lift, same sex, second attempt at a similar share of their best), gives each of them your jump to the third attempt and averages what the model predicts.
The math: partial dependence
Let be your situation and the set of comparable test situations. With the boosting model from (4),
References
- OpenPowerlifting. OpenPowerlifting data dump, public domain. openpowerlifting.org.
- Wilson, E. B. (1927). Probable inference, the law of succession, and statistical inference. JASA 22, 209–212.
- Rubin, D. B. (1974). Estimating causal effects of treatments in randomized and nonrandomized studies. Journal of Educational Psychology 66, 688–701.
- Friedman, J. H. (2001). Greedy function approximation: a gradient boosting machine. Annals of Statistics 29, 1189–1232.
- Breiman, L. (2001). Random forests. Machine Learning 45, 5–32 (permutation importance).
- Pedregosa, F. et al. (2011). Scikit-learn: machine learning in Python. JMLR 12, 2825–2830.