Pigskin NightlyWeek 10
Latest
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 · on the road · 2nd down · tied

The EPA map

Span
Season
Reset all

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

Bottom line49ers have the best balance (+0.992 net per play). Best offense: Saints (+0.622); stingiest defense: Steelers (-0.770 allowed). 10 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.75-0.50-0.250.00+0.25+0.50+0.50+0.250.00-0.25-0.50-0.7549ers logoSteelers logoPackers logoVikings logoTexans logoCardinals logoChargers logoChiefs logoPanthers logoBroncos logoFalcons logoDolphins logoBills logoRams logoBears logoSaints logoPatriots logoBengals logoJets logoEagles logoBuccaneers logoJaguars logoSeahawks logoTitans logoRavens logoRaiders logoCowboys logoGiants logoColts logoLions logoBrowns logoCommanders 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 · 1–6 games per team · 598 offensive plays, 514 defensive · source: nflverse play-by-play
#???
149ers logo49ers7-1+0.992+0.350-0.6423
2Steelers logoSteelers6-2+0.989+0.219-0.7704
3Packers logoPackers6-3+0.745+0.240-0.5045
4Vikings logoVikings6-2+0.696+0.060-0.6364
5Texans logoTexans3-5+0.690+0.128-0.5624
6Cardinals logoCardinals3-6+0.639+0.066-0.5746
7Chargers logoChargers0-8+0.591-0.003-0.5953
8Chiefs logoChiefs6-2+0.565+0.505-0.0604
9Panthers logoPanthers3-5+0.479+0.291-0.1884
10Broncos logoBroncos7-2+0.360+0.081-0.2795
11Falcons logoFalcons3-6+0.344+0.203-0.1414
12Dolphins logoDolphins1-7+0.335+0.298-0.0374
13Bills logoBills7-1+0.302+0.322+0.0204
14Rams logoRams5-4+0.293+0.195-0.0984
15Bears logoBears7-2+0.289+0.425+0.1364
16Saints logoSaints3-5+0.253+0.622+0.3693
17Patriots logoPatriots5-4+0.162+0.110-0.0525
18Bengals logoBengals6-2+0.140-0.029-0.1693
19Jets logoJets2-7+0.010+0.077+0.0675
20Eagles logoEagles2-7-0.075-0.126-0.0513
21Buccaneers logoBuccaneers3-6-0.114+0.167+0.2813
22Jaguars logoJaguars6-2-0.162+0.253+0.4153
23Seahawks logoSeahawks5-4-0.180-0.205-0.0253
24Titans logoTitans1-7-0.189-0.157+0.0324
25Ravens logoRavens4-5-0.297-0.079+0.2183
26Raiders logoRaiders4-5-0.356-0.188+0.1683
27Cowboys logoCowboys4-5-0.373-0.125+0.2484
28Giants logoGiants5-2-1-0.465-0.218+0.2474
29Colts logoColts2-7-0.579-0.533+0.0465
30Lions logoLions6-2-0.679-0.338+0.3413
31Browns logoBrowns5-4-0.762-0.703+0.0596
32Commanders logoCommanders2-5-1-1.394-0.884+0.5101

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.