Pigskin NightlyWeek 10
Latest
InjuryPuka Nacua: Doubtful → Questionable3 min agoCarolina PanthersAround the NFC South: Another topsy-turvy week after Week 9Tennessee TitansTuesday Mailbag: Jim Wyatt Answers Questions From Titans FansSan Francisco 49ersMorning Report: Purdy, McCaffrey Reach Milestones, 49ers React to Week 9 🗞️Commanders DeskCommanders lost to the Rams 20-13 and the snaps say the margin should have been wider20 min agoChiefs DeskChiefs beat the Jets 35-12 and the snaps say the margin was no accident30 min agoCardinals DeskCardinals lost at Seattle on the snaps as well as the scoreboard30 min agoBroncos DeskBroncos beat Panthers 26-21 in a game the snaps gave to Carolina39 min agoBears DeskBears earned the win over Tampa Bay on a day the offense lost ground40 min agoDallas CowboysMailbag: Should a trade be made before deadline?New York GiantsVote: Arvell Reese nominated for Pepsi NFL Rookie of the WeekTampa Bay Buccaneers2026 Bucs NFL Power Rankings Week 10Jacksonville JaguarsNFL Power Rankings, Week 10: Staying Strong at No. 1Cleveland BrownsEnter for a chance to win tickets to Browns vs. Falcons by Take a Minute, Make a Plan, Never Drive ImpairedBaltimore RavensLate for Work: Two Reasons to Be Optimistic About Ravens' Playoff HopesTexans DeskTexans earned 44-22 win over Chargers, and the snaps say it was no fluke1 h agoCincinnati BengalsBengals Release Uniform Combination for White Bengal Against SteelersGreen Bay PackersInbox: Good football teams need wins like thisPanthers DeskPanthers outplayed Denver and lost 26-21 on a late strip sack1 h agoNew Orleans SaintsFive things to know about the New Orleans Saints for Tuesday, November 10Lions DeskLions earned 19-9 in Miami, with a defense doing the work and a thin offense1 h agoESPNDoes Puka Nacua's injury put the Rams' season in jeopardy?
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 · within one score

The EPA map

Span
Season
Reset all

Bottom line49ers have the best balance (+0.346 net per play). Best offense: 49ers (+0.221); stingiest defense: Bears (-0.210 allowed). 9 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.100.00-0.10-0.2049ers logoBears logoPackers logoJaguars logoBills logoChiefs logoBengals logoRams logoGiants logoBroncos logoSteelers logoRavens logoCowboys logoTexans logoPatriots logoVikings logoLions logoPanthers logoSaints logoSeahawks logoJets logoBrowns logoBuccaneers logoCommanders logoRaiders logoFalcons logoColts logoCardinals logoTitans logoEagles logoDolphins 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 1–9 · 8–9 games per team · 11,661 offensive plays · source: nflverse play-by-play
#???
149ers logo49ers7-1+0.346+0.221-0.1258
2Bears logoBears7-2+0.339+0.129-0.2109
3Packers logoPackers6-3+0.238+0.055-0.1849
4Jaguars logoJaguars6-2+0.231+0.147-0.0858
5Bills logoBills7-1+0.191+0.130-0.0618
6Chiefs logoChiefs6-2+0.165+0.160-0.0058
7Bengals logoBengals6-2+0.162+0.192+0.0298
8Rams logoRams5-4+0.136+0.064-0.0729
9Giants logoGiants5-2-1+0.098+0.021-0.0788
10Broncos logoBroncos7-2+0.075+0.032-0.0439
11Steelers logoSteelers6-2+0.046+0.017-0.0298
12Ravens logoRavens4-5+0.014+0.061+0.0489
13Cowboys logoCowboys4-5+0.005+0.079+0.0759
14Texans logoTexans3-5+0.002+0.025+0.0238
15Patriots logoPatriots5-4-0.000+0.031+0.0329
16Vikings logoVikings6-2-0.011-0.164-0.1528
17Lions logoLions6-2-0.013+0.035+0.0488
18Panthers logoPanthers3-5-0.027+0.001+0.0288
19Saints logoSaints3-5-0.034-0.019+0.0148
20Seahawks logoSeahawks5-4-0.051-0.142-0.0919
21Jets logoJets2-7-0.051-0.016+0.0359
22Browns logoBrowns5-4-0.064-0.096-0.0329
23Buccaneers logoBuccaneers3-6-0.083-0.233-0.1509
24Commanders logoCommanders2-5-1-0.087-0.113-0.0268
25Raiders logoRaiders4-5-0.103+0.028+0.1329
26Falcons logoFalcons3-6-0.142-0.127+0.0149
27Colts logoColts2-7-0.154-0.063+0.0909
28Cardinals logoCardinals3-6-0.173-0.119+0.0549
29Titans logoTitans1-7-0.181-0.098+0.0838
30Eagles logoEagles2-7-0.194-0.138+0.0569
31Dolphins logoDolphins1-7-0.226-0.067+0.1588
32Chargers logoChargers0-8-0.318-0.336-0.0188

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.