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.

Target success rate · 2020

Share of targets with positive EPA, shrunk within position.

Beats raw by
21.9%
lower out-of-sample error
RMSE raw → shrunk
11.7% → 9.1%
odd vs. even weeks
Split-half reliability
0.19
how repeatable the raw stat is
Stabilizes at
117
targets to trust the number
shrunkrawthe shrink90% CI
45%50%55%60%65%TE avg1Travis KelceKC · 14660.0%2Darren WallerLV · 14658.5%3Robert TonyanGB · 5958.4%4Durham SmytheMIA · 2958.1%5George KittleSF · 6457.9%6Darren FellsHOU · 2857.8%7Jordan AkinsHOU · 4957.7%8Cameron BrateTB · 3457.5%9Dan ArnoldARI · 4557.3%10Pharaoh BrownHOU · 1657.0%11Adam TrautmanNO · 1657.0%12Richard RodgersPHI · 3256.9%13Kyle RudolphMIN · 3856.6%14Tyler HigbeeLA · 6156.6%15Ross DwelleySF · 2456.6%16Jack DoyleIND · 3356.5%17James O'Shaughnes…JAX · 3956.3%18Mo Alie-CoxIND · 3956.3%19Tyler KroftBUF · 1656.2%20Albert OkwuegbunamDEN · 1555.9%21Tyler ConklinMIN · 2655.8%22Anthony FirkserTEN · 5355.7%23Geoff SwaimTEN · 1255.6%24Dalton SchultzDAL · 8955.2%25Irv SmithMIN · 4455.1%26Blake BellDAL · 1555.1%27Hunter HenryLAC · 9355.1%28Jonnu SmithTEN · 6655.1%29Nick BoyleBAL · 1755.0%30Austin HooperCLE · 7054.9%31Kaden SmithNYG · 2154.9%32Darrell DanielsARI · 1254.9%

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.

Target success rate · 2020 · full board

Target success rate leaderboard for the 2020 NFL season, shrunk by empirical Bayes with 90% credible intervals, ranked by the shrunk estimate.
#PlayerTeamPostargetsRawShrunk90% interval
1Travis KelceKCTE14664.4%60.0%55.0%64.9%
2Darren WallerLVTE14661.6%58.5%53.4%63.4%
3Robert Tonyan◦ provisionalGBTE5966.1%58.4%52.2%64.4%
4Durham Smythe◦ provisionalMIATE2972.4%58.1%51.3%64.7%
5George Kittle◦ provisionalSFTE6464.1%57.9%51.8%63.8%
6Darren Fells◦ provisionalHOUTE2871.4%57.8%51.0%64.4%
7Jordan Akins◦ provisionalHOUTE4965.3%57.7%51.3%63.9%
8Cameron Brate◦ provisionalTBTE3467.7%57.5%50.8%64.0%
9Dan Arnold◦ provisionalARITE4564.4%57.3%50.8%63.6%
10Pharaoh Brown◦ provisionalHOUTE1675.0%57.0%49.9%63.9%
11Adam Trautman◦ provisionalNOTE1675.0%57.0%49.9%63.9%
12Richard Rodgers◦ provisionalPHITE3265.6%56.9%50.2%63.5%
13Kyle Rudolph◦ provisionalMINTE3863.2%56.6%50.0%63.1%
14Tyler Higbee◦ provisionalLATE6160.7%56.6%50.5%62.7%
15Ross Dwelley◦ provisionalSFTE2466.7%56.6%49.7%63.4%
16Jack Doyle◦ provisionalINDTE3363.6%56.5%49.8%63.1%
17James O'Shaughnessy◦ provisionalJAXTE3961.5%56.3%49.7%62.7%
18Mo Alie-Cox◦ provisionalINDTE3961.5%56.3%49.7%62.7%
19Tyler Kroft◦ provisionalBUFTE1668.8%56.2%49.1%63.2%
20Albert Okwuegbunam◦ provisionalDENTE1566.7%55.9%48.7%62.9%
21Tyler Conklin◦ provisionalMINTE2661.5%55.8%48.9%62.5%
22Anthony Firkser◦ provisionalTENTE5358.5%55.7%49.5%62.0%
23Geoff Swaim◦ provisionalTENTE1266.7%55.6%48.4%62.7%
24Dalton Schultz◦ provisionalDALTE8956.2%55.2%49.5%60.9%
25Irv Smith◦ provisionalMINTE4456.8%55.1%48.7%61.5%
26Blake Bell◦ provisionalDALTE1560.0%55.1%48.0%62.2%
27Hunter Henry◦ provisionalLACTE9355.9%55.1%49.5%60.7%
28Jonnu Smith◦ provisionalTENTE6656.1%55.1%49.0%61.1%
29Nick Boyle◦ provisionalBALTE1758.8%55.0%47.9%62.1%
30Austin Hooper◦ provisionalCLETE7055.7%54.9%48.9%60.9%
31Kaden Smith◦ provisionalNYGTE2157.1%54.9%47.9%61.8%
32Darrell Daniels◦ provisionalARITE1258.3%54.9%47.6%62.0%
33Dallas Goedert◦ provisionalPHITE6555.4%54.8%48.7%60.8%
34Jared Cook◦ provisionalNOTE6055.0%54.7%48.5%60.8%
35David Njoku◦ provisionalCLETE2955.2%54.6%47.8%61.4%
36Will Dissly◦ provisionalSEATE2955.2%54.6%47.8%61.4%
37Drew Sample◦ provisionalCINTE5354.7%54.6%48.3%60.8%
38Mark Andrews◦ provisionalBALTE8854.5%54.5%48.8%60.2%
39Chris Herndon◦ provisionalNYJTE4654.4%54.4%48.0%60.8%
40Greg Olsen◦ provisionalSEATE3754.0%54.4%47.8%60.9%
41Troy Fumagalli◦ provisionalDENTE1553.3%54.4%47.2%61.4%
42Jason Witten◦ provisionalLVTE1752.9%54.3%47.2%61.3%
43O.J. Howard◦ provisionalTBTE1952.6%54.2%47.2%61.2%
44Ryan Izzo◦ provisionalNETE2050.0%53.8%46.8%60.8%
45Donald Parham◦ provisionalLACTE2050.0%53.8%46.8%60.8%
46T.J. Hockenson◦ provisionalDETTE10252.9%53.8%48.2%59.3%
47Jacob Hollister◦ provisionalSEATE4151.2%53.6%47.1%60.1%
48Jace Sternberger◦ provisionalGBTE1546.7%53.6%46.5%60.7%
49Marcedes Lewis◦ provisionalGBTE1747.1%53.5%46.5%60.6%
50Cole Kmet◦ provisionalCHITE4551.1%53.5%47.1%60.0%
51Trey Burton◦ provisionalINDTE4751.1%53.5%47.1%59.9%
52Mike Gesicki◦ provisionalMIATE8551.8%53.3%47.6%59.1%
53Ryan Griffin◦ provisionalNYJTE1241.7%53.3%46.1%60.5%
54Nick Vannett◦ provisionalDENTE2245.5%53.1%46.1%60.0%
55Tyler Eifert◦ provisionalJAXTE6050.0%53.0%46.8%59.1%
56Harrison Bryant◦ provisionalCLETE3847.4%52.8%46.2%59.3%
57Jimmy Graham◦ provisionalCHITE7650.0%52.7%46.8%58.6%
58Noah Fant◦ provisionalDENTE9450.0%52.5%46.8%58.1%
59Demetrius Harris◦ provisionalCHITE1435.7%52.5%45.3%59.6%
60Rob Gronkowski◦ provisionalTBTE7749.4%52.4%46.6%58.3%
61Gerald Everett◦ provisionalLATE6248.4%52.4%46.2%58.5%
62Adam Shaheen◦ provisionalMIATE2240.9%52.3%45.4%59.3%
63Hayden Hurst◦ provisionalATLTE8949.4%52.3%46.6%58.0%
64N'Keal Harry◦ provisionalNETE5747.4%52.2%45.9%58.4%
65Taysom Hill◦ provisionalNOTE1330.8%52.1%44.9%59.3%
66Dawson Knox◦ provisionalBUFTE4445.5%52.0%45.6%58.5%
67Ian Thomas◦ provisionalCARTE3141.9%51.9%45.1%58.6%
68Jesse James◦ provisionalDETTE2236.4%51.6%44.7%58.6%
69Logan Thomas◦ provisionalWASTE11147.8%51.2%45.8%56.6%
70Vance McDonald◦ provisionalPITTE2030.0%50.9%43.9%57.9%
71Jordan Reed◦ provisionalSFTE4641.3%50.8%44.3%57.2%
72Eric Ebron◦ provisionalPITTE9245.6%50.6%44.9%56.3%
73Zach Ertz◦ provisionalPHITE7335.6%47.2%41.3%53.2%
74Evan Engram◦ provisionalNYGTE10939.5%47.2%41.8%52.7%

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