Methodology
How your percentile is calculated
A strength chart gets the rankings started. Real lifters on this site gradually take over as more of them log lifts.
The short version
Every lift is compared only with the same exercise, the same gender, and the same weight class (a bucket). Your weight class is set automatically from the bodyweight you enter.
When a bucket is new and nearly empty, we lean on a published strength chart to know what "normal" looks like. As real people log lifts in that bucket, their numbers get more and more say. After 30 real entries, the live data and the chart count equally. Beyond that, the live data counts for more than the chart.
Step 1 — The baseline chart
For each lift we store a chart with bodyweight rows at 155, 175, 200, 220, 240, 265 and 310+ lb. Each row lists five tiers, and each tier stands for a fixed share of lifters:
Your exact bodyweight almost never lands on a row. So we take the two nearest rows and blend them in a straight line. At 187.5 lb you get the halfway point between the 175 and 200 rows. Below 155 lb or above 310 lb, the end row is used.
Women's chart: estimated, not measured
We don't have a published women's chart yet. For now, women are compared against the men's chart scaled down to a fixed fraction. That figure is a rough placeholder taken from grip and pulling-strength research, not something measured on armwrestling lifts. Treat women's percentiles as approximate. The estimate fades out on its own: once a women's bucket has more than 30 real entries, the live data outweighs it.
Those five numbers are then turned into a bell curve. We draw the straight line that best fits "tier value vs. z-score" (least squares), and that line gives us the chart's average (μstandard) and spread (σstandard):
value ≈ μ_standard + σ_standard · z μ_standard = (B + N + I + A + E) / 5 σ_standard = Σ zᵢ·valueᵢ / Σ zᵢ²
Loading…
Step 2 — The live data
We also take every verified (non-flagged) entry in your bucket and work out its real average (μactual) and standard deviation (σactual). Let n be how many entries that is. A spread needs at least two lifts, so with fewer than two entries the live σ is left out.
Step 3 — Blend them
The two are combined as a weighted average. The chart counts as if it were n₀ = 30 lifters, and the real data counts as n lifters:
μ_blended = (n₀ · μ_standard + n · μ_actual) / (n₀ + n) σ_blended = (n₀ · σ_standard + n · σ_actual) / (n₀ + n) n₀ = 30
| Real entries (n) | Chart's say | Live data's say |
|---|---|---|
| 0 | 100% | 0% |
| 10 | 75% | 25% |
| 30 | 50% | 50% |
| 90 | 25% | 75% |
| 270 | 10% | 90% |
Step 4 — Your percentile
Your lift is placed on the blended bell curve. Φ is the standard normal cumulative distribution function. It gives the share of the curve that falls below your z-score:
z = (weight_lifted − μ_blended) / σ_blended percentile = Φ(z) × 100
A percentile of 90 means your lift beats about 90% of the bucket, so you're in the top 10%. Your tier is the highest tier mark that percentile clears.
Keeping it honest
A new entry is automatically flagged for review if either of these is true:
- its z-score against the bucket's blended curve is above 3 (about a 1-in-740 lift), or
- the weight lifted is more than 5× bodyweight.
Flagged lifts are left out of every percentile calculation and every leaderboard until an admin reviews them. You can still see your own flagged lifts on My Results, marked "under review".
Weight classes
Men
- Feather-Lightup to 57 kg
- Lightweightup to 63 kg
- Light-Middleweightup to 70 kg
- Middleweightup to 78 kg
- Middle-Heavyweightup to 86 kg
- Light Heavyweightup to 95 kg
- Heavyweightup to 105 kg
- Super Heavyweightup to 120 kg
- Ultra Heavyweightover 120 kg
Women
- Lightweightup to 52 kg
- Light-Middleweightup to 57 kg
- Middleweightup to 65 kg
- Heavyweightup to 75 kg
- Super Heavyweightover 75 kg