Pigskin NightlyWeek 10
Latest
InjuryCam Skattebo: Active → Out14 min agoInjuryJ.J. McCarthy: Active → Questionable14 min agoDenver BroncosBroncos agree to terms on trade with Chargers for LB Daiyan HenleyLos Angeles ChargersLos Angeles Chargers Trade Daiyan Henley to Denver BroncosDallas CowboysBig Picture: 10 Storylines for Cowboys & 49ersArizona CardinalsCardinals Sign Quarterback Reinforcements Including Josh JohnsonArizona CardinalsCardinals Place Gardner Minshew, Michael Wilson On IRGiants DeskJameis Winston's minus-0.05 EPA per play meets a Commanders defense ranked 20th23 min agoCarolina PanthersAsk The Old Guy: Deadline day finds the Panthers in first placeSeattle SeahawksSeahawks Sign DT Cole Brevard To Practice SquadInjuryCam Skattebo: Questionable → Active32 min agoInjuryJordan Whittington: Questionable → Injured Reserve32 min agoInjuryJ.J. McCarthy: Questionable → Active32 min agoInjuryMalik Willis: Questionable → Injured Reserve32 min agoBaltimore RavensRavens Release Blocking Tight End Among Several Roster MovesESPN2026 NFL trade deadline winners, losers: From Kirk Cousins to the BengalsESPNWhat the Kirk Cousins trade means for the Vikings and the RaidersESPNNFL trade deadline grades: Deals for Kirk Cousins, Daiyan Henley, Amani HookerAtlanta FalconsThe Falcons trade C Ryan Neuzil for G Andrew Vorhees plus undisclosed draft choiceInjuryMalik Willis: Injured Reserve → Questionable47 min agoGreen Bay PackersPackers vs. Vikings | How to watch, stream & listen | Week 10Minnesota VikingsVikings Terminate Contract of Odell Beckham, Jr. During Roster Moves
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 · 1st quarter · within one score

The EPA map

Span
Season
Reset all

Bottom linePackers have the best balance (+0.485 net per play). Best offense: 49ers (+0.312); stingiest defense: Rams (-0.273 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.50-0.250.00+0.25+0.20+0.100.00-0.10-0.20-0.30Packers logoBears logoJaguars logo49ers logoSteelers logoRams logoRavens logoTexans logoBroncos logoChiefs logoTitans logoCowboys logoGiants logoCardinals logoJets logoPanthers logoBills logoDolphins logoPatriots logoBengals logoSeahawks logoVikings logoEagles logoRaiders logoChargers logoCommanders logoColts logoLions logoBuccaneers logoSaints logoFalcons logoBrowns 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 · 3,620 offensive plays · source: nflverse play-by-play
#???
1Packers logoPackers6-3+0.485+0.233-0.2529
2Bears logoBears7-2+0.448+0.260-0.1889
3Jaguars logoJaguars6-2+0.429+0.164-0.2658
449ers logo49ers7-1+0.400+0.312-0.0888
5Steelers logoSteelers6-2+0.264+0.080-0.1838
6Rams logoRams5-4+0.254-0.020-0.2739
7Ravens logoRavens4-5+0.213+0.141-0.0729
8Texans logoTexans3-5+0.162+0.005-0.1578
9Broncos logoBroncos7-2+0.092-0.007-0.0999
10Chiefs logoChiefs6-2+0.083+0.193+0.1108
11Titans logoTitans1-7+0.056-0.088-0.1438
12Cowboys logoCowboys4-5+0.039+0.057+0.0189
13Giants logoGiants5-2-1+0.016-0.011-0.0278
14Cardinals logoCardinals3-6+0.011-0.021-0.0329
15Jets logoJets2-7-0.002+0.038+0.0409
16Panthers logoPanthers3-5-0.027-0.016+0.0118
17Bills logoBills7-1-0.030-0.084-0.0548
18Dolphins logoDolphins1-7-0.062+0.074+0.1368
19Patriots logoPatriots5-4-0.076-0.060+0.0169
20Bengals logoBengals6-2-0.083+0.098+0.1818
21Seahawks logoSeahawks5-4-0.088-0.184-0.0969
22Vikings logoVikings6-2-0.108-0.312-0.2048
23Eagles logoEagles2-7-0.123-0.177-0.0549
24Raiders logoRaiders4-5-0.125+0.032+0.1579
25Chargers logoChargers0-8-0.190-0.392-0.2028
26Commanders logoCommanders2-5-1-0.193-0.190+0.0038
27Colts logoColts2-7-0.233-0.162+0.0729
28Lions logoLions6-2-0.236-0.113+0.1238
29Buccaneers logoBuccaneers3-6-0.241-0.351-0.1119
30Saints logoSaints3-5-0.251-0.182+0.0698
31Falcons logoFalcons3-6-0.267-0.263+0.0039
32Browns logoBrowns5-4-0.681-0.482+0.1999

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.