Pigskin NightlyWeek 10
Latest
InjuryPuka Nacua: Questionable → Doubtfuljust nowSeahawks DeskSeahawks earned 17-3 over Cardinals, then punted on fourth-and-1 anyway15 min agoInjuryKirk Cousins: Active → Cleared17 min agoESPNJeff Saturday: Kirk Cousins trade a 'great fit' for Vikings and RaidersTampa Bay BuccaneersTop Play Breakdown: Tykee Smith's Interception Against the BearsInjuryPuka Nacua: Doubtful → Questionable34 min agoESPNSources: Bills fill major need at safety, trade for Titans' Amani HookerPro Football RumorsRaiders To Trade QB Kirk Cousins Back To VikingsLas Vegas RaidersPower Rankings: A look at where Raiders rank after Week 9 clash in The BayInjuryCam Skattebo: Out → Questionable49 min agoPro Football RumorsTitans To Trade S Amani Hooker To BillsCommanders DeskJayden Daniels Carries a Positive EPA Into a Giants Defense Ranked 11th55 min agoESPN'Great move': Rich Eisen reacts to 49ers' trade for Keenan AllenJaguars DeskJaguars beat Ravens 33-10 and the snaps say it was no accident1 h agoInjuryJalen Travis: Questionable → Doubtful1 h 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 punt1 h agoPittsburgh SteelersSteelers at Bengals: How to watch/listen to the gamePittsburgh SteelersWeek 10 Blog: On the huntAtlanta FalconsTracking the NFC South: Each team in division has 3 winsMiami DolphinsDolphins Cancer Challenge Honors Top DCC XVI Fundraisers
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 · weeks 1–9 · 2nd quarter · trailing

The EPA map

Span
Season
Reset all

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

Bottom lineBills have the best balance (+0.713 net per play). Best offense: Bills (+0.581); stingiest defense: 49ers (-0.415 allowed). 7 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.250.00+0.25+0.50+0.250.00-0.25Bills logoJaguars logo49ers logoBears logoChiefs logoRams logoEagles logoSteelers logoBrowns logoLions logoPatriots logoBuccaneers logoVikings logoSaints logoTexans logoGiants logoJets logoBengals logoCowboys logoPackers logoCommanders logoCardinals logoFalcons logoPanthers logoColts logoSeahawks logoBroncos logoDolphins logoRavens logoChargers logoRaiders logoTitans 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 1–9 · 2–8 games per team · 2,203 offensive plays, 1,634 defensive · source: nflverse play-by-play
#???
1Bills logoBills7-1+0.713+0.581-0.1325
2Jaguars logoJaguars6-2+0.502+0.103-0.4002
349ers logo49ers7-1+0.440+0.025-0.4153
4Bears logoBears7-2+0.226+0.064-0.1622
5Chiefs logoChiefs6-2+0.219+0.163-0.0564
6Rams logoRams5-4+0.149+0.053-0.0966
7Eagles logoEagles2-7+0.137+0.149+0.0117
8Steelers logoSteelers6-2+0.115-0.028-0.1424
9Browns logoBrowns5-4+0.092-0.037-0.1298
10Lions logoLions6-2+0.080+0.212+0.1325
11Patriots logoPatriots5-4+0.072+0.178+0.1064
12Buccaneers logoBuccaneers3-6+0.072-0.077-0.1485
13Vikings logoVikings6-2+0.071-0.062-0.1335
14Saints logoSaints3-5+0.060+0.042-0.0197
15Texans logoTexans3-5-0.005+0.335+0.3405
16Giants logoGiants5-2-1-0.027-0.385-0.3584
17Jets logoJets2-7-0.028+0.015+0.0427
18Bengals logoBengals6-2-0.047+0.090+0.1375
19Cowboys logoCowboys4-5-0.071-0.048+0.0236
20Packers logoPackers6-3-0.081-0.071+0.0103
21Commanders logoCommanders2-5-1-0.143+0.075+0.2185
22Cardinals logoCardinals3-6-0.168-0.082+0.0868
23Falcons logoFalcons3-6-0.168-0.073+0.0966
24Panthers logoPanthers3-5-0.186+0.020+0.2075
25Colts logoColts2-7-0.204-0.217-0.0136
26Seahawks logoSeahawks5-4-0.218-0.185+0.0336
27Broncos logoBroncos7-2-0.233-0.019+0.2145
28Dolphins logoDolphins1-7-0.236-0.201+0.0346
29Ravens logoRavens4-5-0.313-0.272+0.0414
30Chargers logoChargers0-8-0.326-0.239+0.0877
31Raiders logoRaiders4-5-0.408-0.081+0.3276
32Titans logoTitans1-7-0.491-0.410+0.0827

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.