Power rankings
One board. The math earns the order, the commissioner signs off, and every disagreement is shown rather than hidden.
How the rankings work
no PhD required1. The math: record + deserved wins
Half the board is your actual record. The other half is deserved wins, which asks what your scores were worth against the whole league instead of against the one team the schedule handed you.
Every week we take your score and ask a simple question: how many of the other eleven teams would you have beaten? Drop 140 in a week where nine teams scored less, and you banked nine-elevenths of a win — about 0.82. Do that every week and it adds up. That total is your deserved wins, and it is the whole ranking.
No opinions, no projections, no roster ratings. board = ½ × wins + ½ × deserved wins. Win games, and score more than more people. That is it.
Deserved wins on its own is schedule-blind on purpose — but used alone it said a 1-2 team was fourth and a 3-0 team fifth, because a blowout banks the same single win as a squeaker. Keeping the W-L column in the board fixes that without pretending the schedule is fair.
Schedule luck is your real wins minus your deserved wins. Positive means the schedule was kind to you. Negative means you have been getting mugged. Across the league it always adds up to exactly zero — every bit of good luck came out of somebody else's hide.
“vs the league” shows it week by week. “9-2” means your score beat nine of the other eleven that week.
2. Two tiebreaks
Deserved wins is a decimal, so two teams can land a hair apart on nothing. When they are inside one opponent of each other, the better record breaks the tie, then points for.
Then head-to-head, with a leash: if you beat somebody this week and they are within three spots of you, you go above them. Further apart than that and the season's body of work wins — beating the best team once does not make a last-place team good.
3. The commissioner's pass
The math cannot see who is still standing. So the commissioner may move any team up to three spots, and only for one reason: roster news — a starter lost, a starter back, or a score that was wrecked by somebody getting hurt in the first quarter.
Everything else is a story, not a reason. Blown leads, comebacks, walk-offs, leaving 40 points on your bench — all great copy, all worth reading about, none of it moves a rank. The scoreboard already counted it once.
And a team never drops below one that is worse on both record and deserved wins. Losing your quarterback is the story of your season; it is not evidence that the 0-2 teams under you are suddenly better.
Where the commissioner disagreed with the math, the row says so. Most weeks, most teams do not move — that is the system working, not the commissioner asleep.
Through week 14
- 1Austin Soured? Will Mason· score 0.994wrapped 54.5recent +5.214 gp
- 2Proud Member of Tuanon Bryan Provenzano▲1 score 0.928wrapped 54.1recent +3.114 gp
- 3Night at The Museum David Bruce▼1 score 0.795wrapped 52.9recent +1.714 gp
- 4PEAK AT DEEZ NUTZ VALLEY LAD Andrew Sharpe· score 0.696wrapped 52.0recent +1.114 gp
- 5BRICK CITY Chris Fiata· score 0.622wrapped 51.1recent +2.614 gp
- 6GEORGE WASHINGT CAN S*** MY D Michael Muralles▲1 score 0.605wrapped 50.7recent +5.914 gp
- 7Team Billy Pierce Freeman▼1 score 0.599wrapped 50.7recent +5.814 gp
- 8WHO THE **CK IS BIG RED?! Jason Moyer· score 0.268wrapped 47.8recent +0.914 gp
- 9Fountain Hills Falcons Logan Gamer▲2 score 0.252wrapped 47.3recent +5.814 gp
- 10THE CONDOR HAS BEEN CLIPPED Josh Stubblefield▼1 score 0.207wrapped 47.6recent -3.114 gp
- 11Sucio Squad Jose Velez Capin▲1 score 0.035wrapped 45.6recent +1.414 gp
- 12Wheat and Barley Conner Mitchell▼2 score 0.033wrapped 45.7recent -1.414 gp
The old composite
formula v5 · no longer the boardThis is the roster-strength composite the rankings used to run on. It no longer decides anything — the board is deserved wins, explained above. It is kept here because it is a genuinely different read (it weighs who is on your roster right now, which deserved wins deliberately ignores) and because deleting your own history is cowardly. Same rules for every team, published in full so anyone can recompute it and argue with it. The API carries this block verbatim at /api/v1/rankings/2022.json → formula.
Three terms
- Season
- FFWrapped raw = (avg weekly pts × 6 + (best week + worst week) × 2 + win% × 400) ÷ 10, regular season through W, with win% = ½ actual + ½ all-play (schedule luck halved)
- Recent
- last 3 weeks weighted 70/20/10: 65% × (PF − league mean that week) ÷ 5 + 35% × result, where result = ½ actual W/L (W 10, T 5, L 1) + ½ all-play that week (1 + 9 × share of teams outscored), +0.5 week high, −0.5 week low — schedule luck halved, as in the season term
- Roster
- 40% depth + 40% leverage + 20% bench. depth = FantasyPros weekly positional ECR of every rostered player → value 100 ÷ (1 + ((ECR−1) ÷ half)²), depth-weighted per corps, each corps scaled 1–10 across the league (mean 5.5, best 10), corps combined by position weight. leverage = the best lineup the roster can start next week, in this league's points (FantasyPros projection + first-down/yardage bonuses), each player × probability of playing this week (FantasyPros' number, else OUT/IR/PUP/Suspended 0, Doubtful 0.25, Questionable 0.75), every slot floored at replacement level — the average of the best 5 still available at that position in the newest free-agent snapshot, taken after the Wednesday 07:00Z FAAB run so the names left are genuinely free (which also lets the week's waiver results move the board), valued the same way as any rostered player — because a manager with an injured starter streams a replacement rather than fielding nobody; the floored slot is listed as '(waiver replacement)' and the rostered player stays eligible for a FLEX behind it. Depth and bench stay roster-only: renting a starter off the wire is not the same as owning one. bench = the best 4 non-starting RB/WR/TE projected the same way (a backup QB/K/DST cannot start here), blended with the RB/WR/TE points the bench has actually scored per week (the actual half weighted min(1, W/4)). Injury status: FantasyPros when they list the player, else ESPN's own injuryStatus
- Scaling
- every term is min-max scaled 0–1 across the league before weighting; ties → season raw → name
Weights by week
season = min(0.45 + 0.04W, 0.80) × min(1, W/4); recent = max(0.20 − 0.01W, 0.06); roster = remainder
| Wk | Season | Recent | Roster |
|---|---|---|---|
| 1 | 12% | 19% | 69% |
| 2 | 26% | 18% | 56% |
| 3 | 43% | 17% | 40% |
| 4 | 61% | 16% | 23% |
| 5 | 65% | 15% | 20% |
| 6 | 69% | 14% | 17% |
| 7 | 73% | 13% | 14% |
| 8 | 77% | 12% | 11% |
| 9 | 80% | 11% | 9% |
| 10 | 80% | 10% | 10% |
| 11 | 80% | 9% | 11% |
| 12 | 80% | 8% | 12% |
| 13 | 80% | 7% | 13% |
| 14 | 80% | 6% | 14% |
Roster term
- Mix
- depth 40% · leverage 40% · bench 20%
- Corps weights
- QB 14.5% · RB 34.0% · WR 34.0% · TE 11.5% · DST 6.0%
- Depth weights
- QB: 1.0/0.25 · RB: 1.0/1.0/0.8/0.5/0.4/0.25/0.1 · WR: 1.0/1.0/0.8/0.5/0.4/0.25/0.1 · TE: 1.0/0.25 · DST: 1.0/0.1
- ECR half-rank
- QB 12 · RB 24 · WR 30 · TE 8 · DST 8 — the positional rank at which a player is worth half of the #1
- Bench
- best 4 non-starting RB/WR/TE
- Availability
- ranked this week: this-week ECR × probability of playing if Questionable/Doubtful. unranked (injured/suspended): preseason ECR × OUT 0.6, PUP 0.5, IR 0.4, SUSPENDED 0.5, DOUBTFUL 0.5, QUESTIONABLE 0.8
This league's points
- Projections
- FantasyPros PPR projection + first downs (yards ÷ yards-per-first-down: pass 21.1, rush 17.6, rec 21.1, measured on nflverse 2023–24) × the rule value + expected 300/400-yd passing and 100/200-yd rushing/receiving games × their bonuses; 50+ yd TDs not projected
- Editorial pass
- the published Commissioner edition may move any team at most 3 spots from this board; every move must be justified by that week's verified numbers; the site prints 'math #n · moved ±k' beside each moved team
- Not in the formula
- ESPN's currentProjectedRank (shown as a reference); FantasyPros League Analyzer (not in their API); any external edition
Through week 14
- 1Austin Soured? Will Mason· 54.5 / 100raw 151.71avg 127.52best 152.58worst 94.84record .64314 gp
- 2Proud Member of Tuanon Bryan Provenzano▲1 53.6 / 100raw 149.33avg 123.62best 208.54worst 81.50record .42914 gp
- 3Night at The Museum David Bruce▼1 52.6 / 100raw 146.56avg 122.68best 186.16worst 78.62record .50014 gp
- 4BRICK CITY Chris Fiata▲1 52.4 / 100raw 145.98avg 117.06best 154.66worst 81.20record .71414 gp
- 5PEAK AT DEEZ NUTZ VALLEY LAD Andrew Sharpe▼1 51.5 / 100raw 143.62avg 123.03best 177.98worst 71.00record .50014 gp
- 6Team Billy Pierce Freeman· 51.0 / 100raw 141.96avg 117.60best 173.60worst 83.42record .50014 gp
- 7GEORGE WASHINGT CAN S*** MY D Michael Muralles▲2 49.7 / 100raw 138.35avg 124.38best 153.34worst 65.26record .50014 gp
- 8WHO THE **CK IS BIG RED?! Jason Moyer▼1 49.0 / 100raw 136.52avg 112.56best 151.46worst 79.18record .57114 gp
- 9THE CONDOR HAS BEEN CLIPPED Josh Stubblefield▼1 48.6 / 100raw 135.34avg 114.04best 149.62worst 70.68record .57114 gp
- 10Fountain Hills Falcons Logan Gamer▲2 46.4 / 100raw 129.36avg 114.41best 156.26worst 75.86record .35714 gp
- 11Wheat and Barley Conner Mitchell▼1 45.7 / 100raw 127.29avg 109.67best 163.32worst 72.66record .35714 gp
- 12Sucio Squad Jose Velez Capin▼1 45.1 / 100raw 125.61avg 112.58best 136.90worst 81.98record .35714 gp