Pigskin NightlyWeek 10
Latest
Buffalo BillsThe advanced stats behind the Bills' Week 9 Monday Night Football victory over the Minnesota VikingsInjuryDamien Lewis: Questionable → Active36 min agoInjuryPuka Nacua: Questionable → Doubtful36 min agoInjuryJaelan Phillips: Questionable → Active36 min agoInjuryWill Lee III: Questionable → Active36 min agoNew York JetsJets Practice Notebook | WRs Garrett Wilson and Omar Cooper Jr. LimitedSteelers DeskJaylen Warren and the run game carry a Steelers offense still asking questions38 min agoTennessee TitansHighlights From Titans GM Mike Borgonzi's Wednesday Press ConferencePackers DeskPackers ran more on early downs in Week 9 and posted their best EPA of the year47 min agoCardinals DeskCardinals offense sits 21st in EPA per play as Minshew II takes every snap48 min agoInjuryPuka Nacua: Doubtful → Questionable51 min agoInjuryChristian Darrisaw: Active → Cleared51 min agoESPNBrowns sticking with Deshaun WatsonPro Football RumorsPanthers CB Michael Jackson, RB Jonathon Brooks Return To PracticeESPNZac Taylor says Bengals take responsibility for failed trade with EaglesDenver BroncosRanking the Broncos' top 3 games from before the byePittsburgh SteelersDick Hoak, 5-time champion, 86InjuryIsaiah Rodgers: Active → Cleared1 h agoInjuryBryce Boettcher: Active → Cleared1 h agoESPNTitans' Calvin Ridley addresses incident with valet at Nashville airportCarolina PanthersWeek 10 Wednesday Injury Report: Many happy returnsESPNBengals' Zac Taylor apologizes for failed trade with Eagles: 'It was on our end'
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 · 1st down · within one score

The EPA map

Span
Season
Reset all

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

Bottom lineChiefs have the best balance (+0.371 net per play). Best offense: Bengals (+0.385); stingiest defense: Buccaneers (-0.296 allowed). 12 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.30-0.20-0.100.00+0.10+0.20+0.30+0.40+0.20+0.100.00-0.10-0.20-0.30Chiefs logoBengals logoLions logoCowboys logo49ers logoBuccaneers logoBears logoBrowns logoRams logoTexans logoBills logoJaguars logoJets logoBroncos logoCommanders logoSteelers logoSaints logoSeahawks logoCardinals logoGiants logoPatriots logoPanthers logoEagles logoVikings logoFalcons logoDolphins logoChargers logoPackers logoRaiders logoTitans logoColts logoRavens 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,280 offensive plays, 2,290 defensive · source: nflverse play-by-play
#???
1Chiefs logoChiefs6-2+0.371+0.184-0.1874
2Bengals logoBengals6-2+0.368+0.385+0.0164
3Lions logoLions6-2+0.294+0.129-0.1654
4Cowboys logoCowboys4-5+0.261+0.188-0.0734
549ers logo49ers7-1+0.259+0.099-0.1604
6Buccaneers logoBuccaneers3-6+0.239-0.057-0.2964
7Bears logoBears7-2+0.178+0.009-0.1704
8Browns logoBrowns5-4+0.167+0.113-0.0544
9Rams logoRams5-4+0.163+0.064-0.0994
10Texans logoTexans3-5+0.154+0.123-0.0314
11Bills logoBills7-1+0.129-0.011-0.1404
12Jaguars logoJaguars6-2+0.112+0.068-0.0444
13Jets logoJets2-7+0.104+0.140+0.0364
14Broncos logoBroncos7-2+0.095+0.089-0.0064
15Commanders logoCommanders2-5-1+0.075+0.059-0.0154
16Steelers logoSteelers6-2+0.057+0.048-0.0094
17Saints logoSaints3-5+0.035+0.014-0.0214
18Seahawks logoSeahawks5-4+0.021+0.027+0.0074
19Cardinals logoCardinals3-6-0.003+0.090+0.0934
20Giants logoGiants5-2-1-0.035-0.007+0.0284
21Patriots logoPatriots5-4-0.100-0.076+0.0244
22Panthers logoPanthers3-5-0.107-0.141-0.0344
23Eagles logoEagles2-7-0.130-0.094+0.0364
24Vikings logoVikings6-2-0.136-0.175-0.0394
25Falcons logoFalcons3-6-0.190-0.006+0.1844
26Dolphins logoDolphins1-7-0.213-0.139+0.0734
27Chargers logoChargers0-8-0.240-0.265-0.0254
28Packers logoPackers6-3-0.260-0.153+0.1084
29Raiders logoRaiders4-5-0.289-0.030+0.2594
30Titans logoTitans1-7-0.296-0.117+0.1784
31Colts logoColts2-7-0.362-0.254+0.1084
32Ravens logoRavens4-5-0.377-0.216+0.1604

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.