Pigskin NightlyWeek 10
Latest
InjuryPuka Nacua: Doubtful → Questionable14 min agoInjuryCam Skattebo: Out → Questionable29 min agoPro Football RumorsTitans To Trade S Amani Hooker To BillsCommanders DeskJayden Daniels Carries a Positive EPA Into a Giants Defense Ranked 11th34 min agoJaguars DeskJaguars beat Ravens 33-10 and the snaps say it was no accident45 min agoInjuryJalen Travis: Questionable → Doubtful46 min agoPro Football RumorsJaguars Made ‘Significant Offer’ For Jets DE Will McDonaldMinnesota VikingsVikings Visit V.A. Medical Centers & Host Military Baby ShowerBengals DeskBengals earned a road win in Atlanta from the first deep ball to the last punt55 min agoPittsburgh SteelersWeek 10 Blog: On the huntAtlanta FalconsTracking the NFC South: Each team in division has 3 winsMiami DolphinsDolphins Cancer Challenge Honors Top DCC XVI FundraisersInjuryCam Skattebo: Questionable → Out1 h agoInjuryJalen Travis: Doubtful → Questionable1 h agoESPNSources: 49ers trade for Colts' Keenan Allen to bolster injury-plagued WR roomNew York GiantsVote: Arvell Reese nominated for Pepsi NFL Rookie of the WeekPittsburgh SteelersSamuel honored for his ability to battle backESPNSources: Vikings have identified Raiders QB Kirk Cousins as prime trade targetBaltimore RavensReports: Falcons Signing Kicker Jake Moody Off Ravens' Practice SquadPro Football Rumors49ers To Acquire WR Keenan AllenPro Football RumorsKirk Cousins Emerges As Vikings Trade TargetJacksonville JaguarsTuesday Insider: "How Great Do We Want To Be?"
WSH ThuNYG NE SunDET BUF SunNYJ CAR SunNO HOU SunCLE JAX SunTEN KC SunATL MIA SunIND MIN SunGB LAR SunARI SEA SunLV SF SunDAL PIT SunCIN LAC MonBAL
Expected points added per play · 2026 regular season · last 4 games per team · 2nd down

The EPA map

Span
Season
Reset all

Small sample: the median team has 82 offensive plays in this view, so a few snaps move the rates a lot.

Bottom lineSteelers have the best balance (+0.472 net per play). Best offense: Bills (+0.252); stingiest defense: Steelers (-0.380 allowed). 10 of 32 teams are above average on both sides.

How to read this chart
One logo = one team.
Left to right is its offense: EPA per play, the expected points each snap adds. Further right = a better offense.
Bottom to top is its defense,
measured as EPA allowed per play. For a defense lower is better, so the scale is flipped: the higher a logo sits, the less its defense gives up.
The dashed lines
are the league average on each side. Top right = above average on both; bottom left = below average on both.
Tap a logo
to open the team. The table below has the same numbers; switch it to “All columns” for the dropback and rush splits.
Good offense
good defense
Bad offense
good defense
Bad offense
bad defense
Good offense
bad defense
-0.50-0.250.00+0.25+0.30+0.20+0.100.00-0.10-0.20-0.30-0.40Steelers logoJaguars logoBills logoRams logo49ers logoCommanders logoChiefs logoBears logoVikings logoPackers logoCowboys logoTitans logoTexans logoBengals logoBroncos logoBuccaneers logoDolphins logoLions logoPanthers logoGiants logoCardinals logoPatriots logoSeahawks logoColts logoSaints logoEagles logoBrowns logoFalcons logoJets logoRavens logoRaiders logoChargers logo
Offense EPA per play →↑ Better defense · EPA allowed per play, lower is better

All 32 teams

Default order: net EPA per play (offense minus defense). Tap a column to sort. Overview columns: pick “All columns” above for the splits.
Sample: weeks 5–9 · 4 games per team · 2,612 offensive plays, 2,617 defensive · source: nflverse play-by-play
#???
1Steelers logoSteelers6-2+0.472+0.092-0.3804
2Jaguars logoJaguars6-2+0.405+0.156-0.2494
3Bills logoBills7-1+0.404+0.252-0.1524
4Rams logoRams5-4+0.321+0.229-0.0934
549ers logo49ers7-1+0.319+0.077-0.2434
6Commanders logoCommanders2-5-1+0.231+0.104-0.1274
7Chiefs logoChiefs6-2+0.211+0.022-0.1894
8Bears logoBears7-2+0.206+0.048-0.1584
9Vikings logoVikings6-2+0.169-0.051-0.2204
10Packers logoPackers6-3+0.165-0.064-0.2294
11Cowboys logoCowboys4-5+0.112+0.034-0.0794
12Titans logoTitans1-7+0.098+0.054-0.0454
13Texans logoTexans3-5+0.077+0.090+0.0134
14Bengals logoBengals6-2+0.039-0.047-0.0864
15Broncos logoBroncos7-2+0.033+0.109+0.0764
16Buccaneers logoBuccaneers3-6+0.016-0.223-0.2384
17Dolphins logoDolphins1-7+0.003-0.025-0.0284
18Lions logoLions6-2-0.004-0.122-0.1194
19Panthers logoPanthers3-5-0.072-0.053+0.0204
20Giants logoGiants5-2-1-0.081-0.149-0.0684
21Cardinals logoCardinals3-6-0.098+0.014+0.1124
22Patriots logoPatriots5-4-0.103+0.032+0.1354
23Seahawks logoSeahawks5-4-0.107-0.116-0.0094
24Colts logoColts2-7-0.137-0.074+0.0644
25Saints logoSaints3-5-0.161-0.229-0.0684
26Eagles logoEagles2-7-0.165-0.166-0.0024
27Browns logoBrowns5-4-0.170-0.184-0.0144
28Falcons logoFalcons3-6-0.171-0.204-0.0344
29Jets logoJets2-7-0.185+0.009+0.1934
30Ravens logoRavens4-5-0.348-0.275+0.0724
31Raiders logoRaiders4-5-0.551-0.285+0.2664
32Chargers logoChargers0-8-0.747-0.557+0.1904

EPA (expected points added) values each play by how much it changed the expected points of the drive, given down, distance, field position and time. Dropback EPA covers passes, sacks and scrambles; rush EPA covers designed runs only. Success rate counts plays with positive EPA. PROE is pass rate over expected: how often a team throws compared with what an average team would do in the same spot. Regular season only, two-point tries included as in the season totals. Home and away, score and last-4 filters apply from each team's side: a defense's “leading” plays are the ones its team led before the snap. The score before each snap comes from the ESPN play log. Source: nflverse play-by-play.