NFL · Empirical Bayes

True-Talent Leaderboards

A raw single-season rate is a noisy guess at a player’s real ability, and the noise is worst for the smallest samples — so a naïve leaderboard is topped by whoever got lucky in the fewest tries. This one shrinks every rate toward its position-group prior by how much the sample can be trusted, and shows a 90% credible interval instead of a point. Toggle raw vs. shrunk to watch the flukes fall back to the pack.

Yards per carry · 2019

Mean rushing yards per carry. Heavy-tailed (one long run moves it); the band reflects that.

Beats raw by
18.1%
lower out-of-sample error
RMSE raw → shrunk
1.04 → 0.85
odd vs. even weeks
Split-half reliability
0.23
how repeatable the raw stat is
Stabilizes at
341
carrys to trust the number
shrunkrawthe shrink90% CI
4455avg1Raheem MostertSF · 1374.692Derrick HenryTEN · 3034.673Nick ChubbCLE · 2984.644Gus EdwardsBAL · 1334.605Mark IngramBAL · 2044.576Devin SingletaryBUF · 1514.567Christian McCaffr…CAR · 2884.558Jordan WilkinsIND · 514.549Rashaad PennySEA · 654.5310Justin JacksonLAC · 294.5211Matt BreidaSF · 1234.5112Tony PollardDAL · 874.5013Josh JacobsLV · 2424.5014Derrius GuiceWAS · 424.4815Kenyan DrakeARI · 1704.4816Mike BooneMIN · 494.4717Reggie BonnafonCAR · 164.4418Duke JohnsonHOU · 834.4419Saquon BarkleyNYG · 2174.4320Alvin KamaraNO · 1714.4321Aaron JonesGB · 2364.4322Chase EdmondsARI · 604.4223J.D. McKissicDET · 384.4224Travis HomerSEA · 184.4125Dalvin CookMIN · 2504.4126Ezekiel ElliottDAL · 3014.4027Miles SandersPHI · 1804.4028Cordarrelle Patte…CHI · 174.4029Phillip LindsayDEN · 2254.3830Alexander MattisonMIN · 1004.3831Jonathan WilliamsIND · 494.3732Rex BurkheadNE · 654.3733Kerrith WhytePIT · 244.3634Ameer AbdullahMIN · 234.3635Ito SmithATL · 224.34

Each row is a player: the solid dot is the shrunk estimate, the hollow dot the raw rate, joined by the red pull of regression; the grey bar is the 90% credible interval. A hollow shrunk dot means the sample is below the stabilization line — the number is mostly the position prior. Switch to Raw rank and watch the small-sample names climb.

Yards per carry · 2019 · full board

Yards per carry leaderboard for the 2019 NFL season, shrunk by empirical Bayes with 90% credible intervals, ranked by the shrunk estimate.
#PlayerTeamPoscarrysRawShrunk90% interval
1Raheem Mostert◦ provisionalSFRB1375.634.694.215.18
2Derrick Henry◦ provisionalTENRB3035.084.674.265.09
3Nick Chubb◦ provisionalCLERB2985.014.644.225.06
4Gus Edwards◦ provisionalBALRB1335.354.604.125.09
5Mark Ingram◦ provisionalBALRB2045.014.574.125.03
6Devin Singletary◦ provisionalBUFRB1515.134.564.095.04
7Christian McCaffrey◦ provisionalCARRB2884.824.554.124.97
8Jordan Wilkins◦ provisionalINDRB516.024.544.005.07
9Rashaad Penny◦ provisionalSEARB655.694.534.015.06
10Justin Jackson◦ provisionalLACRB296.904.523.965.07
11Matt Breida◦ provisionalSFRB1235.074.514.025.01
12Tony Pollard◦ provisionalDALRB875.254.503.995.02
13Josh Jacobs◦ provisionalLVRB2424.754.504.064.94
14Derrius Guice◦ provisionalWASRB425.834.483.945.02
15Kenyan Drake◦ provisionalARIRB1704.814.484.014.95
16Mike Boone◦ provisionalMINRB495.574.473.935.01
17Reggie Bonnafon◦ provisionalCARRB167.254.443.885.01
18Duke Johnson◦ provisionalHOURB834.944.443.924.95
19Saquon Barkley◦ provisionalNYGRB2174.624.433.984.88
20Alvin Kamara◦ provisionalNORB1714.664.433.964.90
21Aaron Jones◦ provisionalGBRB2364.594.433.994.87
22Chase Edmonds◦ provisionalARIRB605.054.423.894.95
23J.D. McKissic◦ provisionalDETRB385.394.423.884.97
24Travis Homer◦ provisionalSEARB186.334.413.854.97
25Dalvin Cook◦ provisionalMINRB2504.544.413.974.85
26Ezekiel Elliott◦ provisionalDALRB3014.514.403.994.82
27Miles Sanders◦ provisionalPHIRB1804.564.403.934.86
28Cordarrelle Patterson◦ provisionalCHIRB176.064.403.834.96
29Phillip Lindsay◦ provisionalDENRB2254.494.383.944.83
30Alexander Mattison◦ provisionalMINRB1004.624.383.884.89
31LeSean McCoy◦ provisionalKCRB1014.604.383.874.88
32Jonathan Williams◦ provisionalINDRB494.804.373.844.91
33Rex Burkhead◦ provisionalNERB654.654.373.844.89
34Kerrith Whyte◦ provisionalPITRB245.084.363.814.92
35Chris Carson◦ provisionalSEARB2784.424.363.944.79
36Ameer Abdullah◦ provisionalMINRB235.004.363.804.91
37Damien Williams◦ provisionalKCRB1114.494.363.864.86
38Marlon Mack◦ provisionalINDRB2484.414.353.924.79
39Ito Smith◦ provisionalATLRB224.824.343.794.90
40Jordan Howard◦ provisionalPHIRB1194.414.343.844.83
41Carlos Hyde◦ provisionalHOURB2454.374.343.904.77
42Latavius Murray◦ provisionalNORB1464.364.333.854.81
43Brandon Bolden◦ provisionalNERB154.534.323.764.89
44Leonard Fournette◦ provisionalJAXRB2664.334.323.894.75
45Ty Johnson◦ provisionalDETRB634.334.323.794.84
46Jamaal Williams◦ provisionalGBRB1074.304.313.814.81
47Trey Edmunds◦ provisionalPITRB224.184.313.754.86
48Bo Scarbrough◦ provisionalDETRB894.244.303.794.81
49Kareem Hunt◦ provisionalCLERB434.164.303.754.84
50Adrian Peterson◦ provisionalWASRB2114.264.293.844.74
51Austin Ekeler◦ provisionalLACRB1324.224.293.804.78
52Darren Sproles◦ provisionalPHIRB183.784.293.734.85
53T.J. Yeldon◦ provisionalBUFRB173.714.283.724.85
54Jeff Wilson◦ provisionalSFRB273.894.283.734.84
55Brian Hill◦ provisionalATLRB784.144.283.764.80
56Ronald Jones◦ provisionalTBRB1724.214.283.814.75
57Wendell Smallwood◦ provisionalWASRB223.684.273.724.83
58Wayne Gallman◦ provisionalNYGRB293.794.273.724.82
59Boston Scott◦ provisionalPHIRB614.024.273.744.80
60Darrell Henderson◦ provisionalLARB393.774.263.714.80
61Chris Thompson◦ provisionalWASRB373.734.263.714.80
62Myles Gaskin◦ provisionalMIARB363.694.253.714.80
63Dion Lewis◦ provisionalTENRB543.874.253.724.79
64Jalen Richard◦ provisionalLVRB393.724.253.714.80
65Spencer Ware◦ provisionalKCRB173.004.253.694.81
66Justice Hill◦ provisionalBALRB583.884.253.724.78
67Bilal Powell◦ provisionalNYJRB593.884.253.724.78
68Nyheim Hines◦ provisionalINDRB523.834.253.714.78
69Mark Walton◦ provisionalMIARB533.794.243.714.78
70Elijhaa Penny◦ provisionalNYGRB152.604.243.684.80
71C.J. Anderson◦ provisionalDETRB162.694.243.684.80
72James White◦ provisionalNERB693.844.233.714.76
73James Conner◦ provisionalPITRB1164.004.233.744.73
74Tra Carson◦ provisionalDETRB182.674.233.674.79
75Darwin Thompson◦ provisionalKCRB373.464.233.684.78
76C.J. Prosise◦ provisionalSEARB243.004.233.674.78
77Benny Snell◦ provisionalPITRB1083.944.223.724.73
78Darrel Williams◦ provisionalKCRB413.444.223.684.76
79Tevin Coleman◦ provisionalSFRB1373.974.223.734.70
80Joe Mixon◦ provisionalCINRB2784.094.213.794.64
81Jon Hilliman◦ provisionalNYGRB303.034.213.664.76
82Malcolm Brown◦ provisionalLARB693.704.213.684.73
83Ryquell Armstead◦ provisionalJAXRB353.094.203.654.75
84Qadree Ollison◦ provisionalATLRB222.274.193.634.75
85David Johnson◦ provisionalARIRB943.674.173.674.68
86Giovani Bernard◦ provisionalCINRB533.214.163.634.70
87Royce Freeman◦ provisionalDENRB1323.764.163.674.65
88Tarik Cohen◦ provisionalCHIRB643.334.163.634.69
89Melvin Gordon◦ provisionalLACRB1623.784.143.674.61
90DeAndre Washington◦ provisionalLVRB1083.584.143.644.64
91Kerryon Johnson◦ provisionalDETRB1133.574.133.634.63
92Todd Gurley◦ provisionalLARB2243.834.123.684.57
93Frank Gore◦ provisionalBUFRB1663.614.083.614.55
94Patrick Laird◦ provisionalMIARB622.714.073.544.60
95Sony Michel◦ provisionalNERB2473.694.053.614.49
96Devonta Freeman◦ provisionalATLRB1843.574.053.594.51
97David Montgomery◦ provisionalCHIRB2423.674.053.614.49
98Jaylen Samuels◦ provisionalPITRB662.654.043.524.57
99Peyton Barber◦ provisionalTBRB1553.053.923.444.39
100Kalen Ballage◦ provisionalMIARB731.793.873.354.39
101Le'Veon Bell◦ provisionalNYJRB2453.223.863.424.30

How the shrinkage works

Two estimators

Rate stats (completion %, success rate, catch rate) use a beta-binomial model: a Beta(α, β) prior fit by marginal likelihood over each position group, then a Beta posterior per player. Per-play averages (EPA, CPOE, yards) use a normal-normal model with DerSimonian–Laird between-player variance. Both pull each player toward their group by exactly how thin their sample is.

Does it help? & the fine print

The trust panel’s numbers come from a leakage-free odd/even-week holdout: fit on odd weeks, predict even-week raw. Shrinkage lowers out-of-sample error for every stat. Priors are fit per season and per position (WR and TE separately), so a TE’s baseline isn’t a skill. Regular season only, 2016–2025. Rushing and receiving efficiency are heavily scheme-driven — read the wide bands as the honesty they are.

Source: nflverse play-by-play. Counted and computed deterministically — never modeled by a language model. Built by build_nfl_leaderboards.py (byte-reproducible).