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.

Catch rate · 2016

Receptions per target, shrunk within position (WR vs TE separately). Depth-of-target confound; catchable-target rate not available here.

Beats raw by
18.3%
lower out-of-sample error
RMSE raw → shrunk
11.1% → 9.1%
odd vs. even weeks
Split-half reliability
0.35
how repeatable the raw stat is
Stabilizes at
208
targets to trust the number
shrunkrawthe shrink90% CI
60%65%70%TE avg1Jack DoyleIND · 7569.0%2Zach ErtzPHI · 10668.2%3Martellus BennettNE · 7368.0%4Jordan ReedWAS · 9067.8%5Travis KelceKC · 11867.8%6Jason WittenDAL · 9567.7%7Dennis PittaBAL · 12167.5%8Vernon DavisWAS · 5967.5%9Zach MillerCHI · 6467.3%10Eric EbronDET · 8567.3%11Ben KoyackJAX · 2466.9%12Cameron BrateTB · 8166.8%13MarQueis GrayMIA · 1766.8%14Dion SimsMIA · 3566.8%15A.J. DerbyDEN · 2066.8%16Daniel BrownCHI · 2066.8%17Darren FellsARI · 1866.5%18Jerell AdamsNYG · 2166.5%19Tyler KroftCIN · 1266.5%20Seth DeValveCLE · 1266.5%21Jimmy GrahamSEA · 9566.4%22Will TyeNYG · 7066.3%23Jacob TammeATL · 3166.2%24Mychal RiveraLV · 2566.2%25Brent CelekPHI · 1966.2%26Neal SterlingJAX · 1666.2%27Luke WillsonSEA · 2166.0%28Ryan GriffinHOU · 7466.0%29Austin HooperATL · 2865.8%30Larry DonnellNYG · 2265.7%31Levine ToiloloATL · 1965.7%32Stephen AndersonHOU · 1665.7%

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.

Catch rate · 2016 · full board

Catch rate leaderboard for the 2016 NFL season, shrunk by empirical Bayes with 90% credible intervals, ranked by the shrunk estimate.
#PlayerTeamPostargetsRawShrunk90% interval
1Jack Doyle◦ provisionalINDTE7578.7%69.0%64.4%73.4%
2Zach Ertz◦ provisionalPHITE10673.6%68.2%63.8%72.5%
3Martellus Bennett◦ provisionalNETE7375.3%68.0%63.4%72.5%
4Jordan Reed◦ provisionalWASTE9073.3%67.8%63.3%72.2%
5Travis Kelce◦ provisionalKCTE11872.0%67.8%63.5%72.0%
6Jason Witten◦ provisionalDALTE9572.6%67.7%63.2%72.1%
7Dennis Pitta◦ provisionalBALTE12171.1%67.5%63.2%71.7%
8Vernon Davis◦ provisionalWASTE5974.6%67.5%62.7%72.1%
9Zach Miller◦ provisionalCHITE6473.4%67.3%62.6%72.0%
10Eric Ebron◦ provisionalDETTE8571.8%67.3%62.7%71.7%
11Ben Koyack◦ provisionalJAXTE2479.2%66.9%61.7%71.9%
12Cameron Brate◦ provisionalTBTE8170.4%66.8%62.2%71.3%
13MarQueis Gray◦ provisionalMIATE1782.3%66.8%61.5%71.8%
14Dion Sims◦ provisionalMIATE3574.3%66.8%61.7%71.6%
15A.J. Derby◦ provisionalDENTE2080.0%66.8%61.6%71.8%
16Daniel Brown◦ provisionalCHITE2080.0%66.8%61.6%71.8%
17Darren Fells◦ provisionalARITE1877.8%66.5%61.2%71.5%
18Jerell Adams◦ provisionalNYGTE2176.2%66.5%61.3%71.5%
19Tyler Kroft◦ provisionalCINTE1283.3%66.5%61.1%71.6%
20Seth DeValve◦ provisionalCLETE1283.3%66.5%61.1%71.6%
21Jimmy Graham◦ provisionalSEATE9568.4%66.4%61.9%70.8%
22Will Tye◦ provisionalNYGTE7068.6%66.3%61.5%70.9%
23Jacob Tamme◦ provisionalATLTE3171.0%66.2%61.1%71.1%
24Mychal Rivera◦ provisionalLVTE2572.0%66.2%61.0%71.2%
25Brent Celek◦ provisionalPHITE1973.7%66.2%60.9%71.2%
26Neal Sterling◦ provisionalJAXTE1675.0%66.2%60.9%71.3%
27Luke Willson◦ provisionalSEATE2171.4%66.0%60.8%71.1%
28Ryan Griffin◦ provisionalHOUTE7467.6%66.0%61.3%70.6%
29Austin Hooper◦ provisionalATLTE2867.9%65.8%60.6%70.8%
30Larry Donnell◦ provisionalNYGTE2268.2%65.7%60.5%70.8%
31Josh Hill◦ provisionalNOTE2268.2%65.7%60.5%70.8%
32Erik Swoope◦ provisionalINDTE2268.2%65.7%60.5%70.8%
33Levine Toilolo◦ provisionalATLTE1968.4%65.7%60.5%70.8%
34Hunter Henry◦ provisionalLACTE5466.7%65.7%60.8%70.5%
35Stephen Anderson◦ provisionalHOUTE1668.8%65.7%60.4%70.8%
36Gary Barnidge◦ provisionalCLETE8366.3%65.7%61.1%70.2%
37Marcedes Lewis◦ provisionalJAXTE3066.7%65.6%60.5%70.6%
38Dwayne Allen◦ provisionalINDTE5366.0%65.6%60.7%70.3%
39John Phillips◦ provisionalNOTE1566.7%65.6%60.3%70.7%
40Rob Gronkowski◦ provisionalNETE3865.8%65.5%60.5%70.4%
41C.J. Uzomah◦ provisionalCINTE3865.8%65.5%60.5%70.4%
42Charles Clay◦ provisionalBUFTE8765.5%65.5%60.9%70.0%
43Austin Seferian-Jenkins◦ provisionalNYJTE2065.0%65.4%60.2%70.5%
44Rhett Ellison◦ provisionalMINTE1464.3%65.4%60.1%70.6%
45Richard Rodgers◦ provisionalGBTE4763.8%65.2%60.2%70.0%
46Jesse James◦ provisionalPITTE6163.9%65.1%60.3%69.8%
47Nick O'Leary◦ provisionalBUFTE1560.0%65.1%59.8%70.3%
48David Johnson◦ provisionalPITTE1258.3%65.1%59.7%70.3%
49Clive Walford◦ provisionalLVTE5263.5%65.1%60.2%69.9%
50Darren Waller◦ provisionalBALTE1758.8%65.0%59.7%70.1%
51Anthony Fasano◦ provisionalTENTE1457.1%65.0%59.6%70.1%
52Crockett Gillmore◦ provisionalBALTE1457.1%65.0%59.6%70.1%
53Delanie Walker◦ provisionalTENTE10263.7%64.9%60.4%69.3%
54Tyler Eifert◦ provisionalCINTE4761.7%64.8%59.8%69.6%
55Trey Burton◦ provisionalPHITE6061.7%64.6%59.8%69.4%
56Virgil Green◦ provisionalDENTE3759.5%64.6%59.5%69.5%
57Jeff Heuerman◦ provisionalDENTE1752.9%64.5%59.2%69.7%
58Ed Dickson◦ provisionalCARTE1952.6%64.4%59.1%69.5%
59Jermaine Gresham◦ provisionalARITE6160.7%64.4%59.5%69.1%
60Kyle Rudolph◦ provisionalMINTE13362.4%64.3%60.0%68.5%
61Xavier Grimble◦ provisionalPITTE2152.4%64.3%59.0%69.4%
62Brandon Myers◦ provisionalTBTE1546.7%64.2%58.9%69.4%
63Coby Fleener◦ provisionalNOTE8261.0%64.2%59.5%68.8%
64Jared Cook◦ provisionalGBTE5158.8%64.2%59.2%69.0%
65Julius Thomas◦ provisionalJAXTE5158.8%64.2%59.2%69.0%
66C.J. Fiedorowicz◦ provisionalHOUTE8960.7%64.0%59.4%68.6%
67Garrett Celek◦ provisionalSFTE5058.0%64.0%59.1%68.9%
68Jordan Matthews◦ provisionalPHITE11961.3%64.0%59.6%68.3%
69Demetrius Harris◦ provisionalKCTE3253.1%63.8%58.7%68.9%
70Greg Olsen◦ provisionalCARTE13260.6%63.6%59.3%67.8%
71Ladarius Green◦ provisionalPITTE3551.4%63.5%58.3%68.5%
72Vance McDonald◦ provisionalSFTE4553.3%63.3%58.3%68.2%
73Lance Kendricks◦ provisionalLATE8757.5%63.1%58.5%67.7%
74Antonio Gates◦ provisionalLACTE9456.4%62.6%58.0%67.2%
75Tyler Higbee◦ provisionalLATE2937.9%62.1%56.9%67.2%

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).