Pigskin NightlyWeek 10
Latest
InjuryKyler Murray: Questionable → Outjust nowInjuryDaiyan Henley: Active → Clearedjust nowRaiders DeskRaiders were outplayed from the first quarter in a deserved loss to the 49ers3 min agoIndianapolis ColtsColts sign WR Nick Westbrook-Ikhine to 53-man roster from practice squad; sign LS Jacob Bobenmoyer to practice squadPro Football RumorsBroncos To Acquire LB Daiyan Henley From ChargersMinnesota VikingsVikings Bring Back Quarterback Kirk Cousins via Trade with RaidersPro Football RumorsColts Will Not Trade Jonathan Taylor Before DeadlineInjuryPuka Nacua: Questionable → Doubtful19 min agoIndianapolis ColtsColts trade WR Keenan Allen to San Francisco 49ers for 2027 sixth-round NFL Draft pickCarolina PanthersPanthers release wide receiver David Moore, among other movesESPNEisen fired up over Kirk Cousins' return to the VikingsSeahawks DeskSeahawks earned 17-3 over Cardinals, then punted on fourth-and-1 anyway32 min agoKansas City ChiefsChiefs Kick Off 12th Annual Chiefs Kingdom Food Drive Benefiting HarvestersInjuryKirk Cousins: Active → Cleared34 min agoESPNMcAfee & Co. react to Bills' trade for Amani HookerESPNJeff Saturday: Kirk Cousins trade a 'great fit' for Vikings and RaidersESPNNFL trade deadline grades: Deals for Keenan Allen, Jordan Davis, Jessie BatesTampa Bay BuccaneersTop Play Breakdown: Tykee Smith's Interception Against the BearsInjuryPuka Nacua: Doubtful → Questionable52 min agoESPNSources: Bills fill major need at safety, trade for Titans' Amani HookerPro Football RumorsRaiders To Trade QB Kirk Cousins Back To VikingsInjuryCam Skattebo: Out → Questionable1 h ago
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 · leading

The EPA map

Span
Season
Reset all

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

Bottom lineChiefs have the best balance (+0.319 net per play). Best offense: Texans (+0.191); stingiest defense: Buccaneers (-0.333 allowed). 16 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.40-0.30-0.20-0.100.00+0.10+0.20+0.30+0.20+0.100.00-0.10-0.20-0.30Chiefs logoJaguars logoBuccaneers logoSeahawks logoBengals logoTexans logoRams logo49ers logoSteelers logoPackers logoBears logoCommanders logoPanthers logoLions logoCowboys logoBills logoRavens logoPatriots logoBroncos logoGiants logoBrowns logoDolphins logoTitans logoVikings logoFalcons logoSaints logoColts logoCardinals logoEagles logoChargers logoJets logoRaiders 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 · 1–4 games per team · 2,785 offensive plays, 3,881 defensive · source: nflverse play-by-play
#???
1Chiefs logoChiefs6-2+0.319+0.137-0.1823
2Jaguars logoJaguars6-2+0.281-0.026-0.3063
3Buccaneers logoBuccaneers3-6+0.268-0.065-0.3333
4Seahawks logoSeahawks5-4+0.227+0.126-0.1012
5Bengals logoBengals6-2+0.225+0.161-0.0644
6Texans logoTexans3-5+0.220+0.191-0.0293
7Rams logoRams5-4+0.187+0.005-0.1824
849ers logo49ers7-1+0.177+0.063-0.1144
9Steelers logoSteelers6-2+0.122+0.118-0.0043
10Packers logoPackers6-3+0.120+0.078-0.0423
11Bears logoBears7-2+0.079-0.027-0.1064
12Commanders logoCommanders2-5-1+0.055+0.035-0.0203
13Panthers logoPanthers3-5+0.033+0.027-0.0063
14Lions logoLions6-2+0.030+0.047+0.0174
15Cowboys logoCowboys4-5+0.024+0.072+0.0483
16Bills logoBills7-1+0.022-0.060-0.0824
17Ravens logoRavens4-5-0.002-0.068-0.0662
18Patriots logoPatriots5-4-0.006-0.032-0.0262
19Broncos logoBroncos7-2-0.078-0.046+0.0323
20Giants logoGiants5-2-1-0.086-0.125-0.0383
21Browns logoBrowns5-4-0.191-0.135+0.0572
22Dolphins logoDolphins1-7-0.207+0.078+0.2852
23Titans logoTitans1-7-0.209-0.053+0.1564
24Vikings logoVikings6-2-0.235-0.412-0.1773
25Falcons logoFalcons3-6-0.271-0.160+0.1111
26Saints logoSaints3-5-0.311-0.247+0.0643
27Colts logoColts2-7-0.327-0.203+0.1242
28Cardinals logoCardinals3-6-0.360-0.276+0.0842
29Eagles logoEagles2-7-0.519-0.341+0.1782
30Chargers logoChargers0-8-0.531-0.410+0.1222
31Jets logoJets2-7-0.599-0.292+0.3073
32Raiders logoRaiders4-5-0.748-0.413+0.3352

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.