A team gains 8 yards on a 3rd & 15. Good play?
The announcer says yes. Traditional stats agree — 8 yards is solid.
But the reality? The team didn't convert. They're going to punt. They actually lost value on that play.
EPA (Expected Points Added) captures this nuance. It's the metric that measures what a play truly contributes in terms of expected points. And for NFL bettors, it's a game-changing tool.
The Problem with Traditional Stats
Yards Lie
Classic football stats — yards, touchdowns, time of possession — tell an incomplete story.
| Situation | Yards gained | Perception | Reality |
|---|---|---|---|
| 1st & 10, gain of 4 yards | 4 | "OK" | Average — still need 6 yards |
| 3rd & 2, gain of 3 yards | 3 | "Not bad" | Excellent — first down |
| 3rd & 15, gain of 8 yards | 8 | "Nice!" | Bad — punt |
| 1st & Goal at the 2, gain of 1 yard | 1 | "Disappointing" | OK — 2nd & Goal at the 1 |
Yards don't account for context.
Context Is King
In football, the value of a play depends heavily on: - The down (1st, 2nd, 3rd, 4th) - The distance to go - Field position - Time remaining - The score
A 5-yard gain on 3rd & 3 is worth far more than a 5-yard gain on 1st & 10.
Join ProbWin for free
Access our AI predictions for NBA, NHL, Soccer & Tennis. Sign up in 30 seconds.
What Is EPA?
The Definition
EPA = Expected Points Added
EPA measures how many expected points a play adds (or subtracts) compared to the situation before the play.
EPA = Expected Points after the play - Expected Points before the play
The Expected Points (EP) Concept
Every game situation has an expected point value based on millions of historical plays.
| Situation | Expected Points |
|---|---|
| 1st & 10 at own 20 | +0.5 |
| 1st & 10 at midfield | +2.0 |
| 1st & 10 at opponent's 20 | +4.0 |
| 1st & Goal at the 5 | +5.5 |
| 4th & 10 at own 30 | -0.5 (going to punt) |
These values are calculated by analyzing millions of drives: "Starting from this situation, how many points did the team score on average?"
Calculating EPA
Concrete example:
Situation: 1st & 10 at the 50-yard line - Expected Points before the play: +2.0
The team gains 20 yards → 1st & 10 at the opponent's 30 - Expected Points after the play: +4.2
EPA = 4.2 - 2.0 = +2.2
This play added 2.2 expected points. Excellent play.
EPA Examples by Play Type
| Play | Situation before | Situation after | EPA |
|---|---|---|---|
| 7-yard gain | 1st & 10 at the 30 | 2nd & 3 at the 37 | +0.8 |
| 3-yard gain | 3rd & 2 at the 45 | 1st & 10 at the 48 | +1.5 |
| Interception | 2nd & 8 at the 40 | Opponent gets ball | -4.5 |
| Touchdown | 1st & Goal at the 3 | 7 points | +1.5 |
| Sack (-8 yards) | 2nd & 10 at the 25 | 3rd & 18 at the 17 | -1.8 |
EPA by Team
Offensive EPA and Defensive EPA
EPA is calculated across an entire season (or time period) for each team:
| Metric | What it measures |
|---|---|
| EPA/play Offense | Offensive efficiency per play |
| EPA/play Defense | Points allowed per opponent play |
| Total EPA | Overall performance |
The Reference Scale (EPA/play)
| Offensive EPA/play | Interpretation |
|---|---|
| > +0.15 | Elite offense |
| +0.05 to +0.15 | Good offense |
| -0.05 to +0.05 | Average offense |
| -0.15 to -0.05 | Weak offense |
| < -0.15 | Struggling offense |
| Defensive EPA/play | Interpretation |
|---|---|
| < -0.10 | Elite defense (limits opponent scoring) |
| -0.10 to 0.00 | Good defense |
| 0.00 to +0.10 | Average defense |
| > +0.10 | Weak defense |
Note: For defense, a negative EPA is good (you're limiting the opponent's scoring).
Sample Rankings
| Team | EPA/play OFF | EPA/play DEF | Profile |
|---|---|---|---|
| Kansas City | +0.18 | -0.05 | Elite offense, decent defense |
| San Francisco | +0.12 | -0.12 | Well-balanced, excellent |
| Dallas | +0.08 | +0.08 | OK offense, weak defense |
| Chicago | -0.12 | -0.08 | Weak offense, decent defense |
Pass EPA vs Rush EPA
The Breakdown
EPA breaks down by play type:
| Metric | What it measures |
|---|---|
| Pass EPA/play | Passing game efficiency |
| Rush EPA/play | Rushing game efficiency |
The Truth About the Ground Game
One of EPA's biggest revelations: the passing game is far more efficient than the ground game.
| Play type | Average NFL EPA/play |
|---|---|
| Pass | +0.05 to +0.10 |
| Rush | -0.05 to 0.00 |
The rushing game has a negative average EPA!
Why? Rushing plays: - Gain fewer yards on average - Have less variance (less explosiveness) - Are more predictable
How to Use Pass/Rush EPA
| Team profile | Pass EPA | Rush EPA | Implication |
|---|---|---|---|
| High Pass EPA, Low Rush EPA | Pass-heavy, runs little | Vulnerable if forced to run | |
| Low Pass EPA, High Rush EPA | Run-first team | Can control the clock | |
| Both high | Complete offense | Hard to defend | |
| Both low | Broken offense | Structural problem |
Success Rate
Complementary metric: Success Rate = percentage of plays with positive EPA.
| Success Rate | Interpretation |
|---|---|
| > 50% | Above average |
| 45-50% | Average |
| < 45% | Below average |
A team can have a high average EPA thanks to a few explosive plays, but a low Success Rate (inconsistent).
Using EPA for Betting
Strategy #1: Compare Both Teams' EPA
To estimate a spread:
EPA Advantage = (EPA OFF Team A - EPA DEF Team B) - (EPA OFF Team B - EPA DEF Team A)
| EPA Differential | Approximate Spread |
|---|---|
| +0.30 | ~10-14 points |
| +0.20 | ~7-10 points |
| +0.10 | ~3-6 points |
| 0.00 | Pick'em |
| -0.10 | ~3-6 points for the other team |
Strategy #2: Identify Over/Under-Valued Teams
Compare EPA with win-loss record:
| EPA (OFF + DEF) | Record | Diagnosis |
|---|---|---|
| High | Bad | Unlucky, likely to improve |
| High | Good | Genuinely good team |
| Low | Good | Lucky, likely to regress |
| Low | Bad | Genuinely bad team |
The opportunity: Bet on teams with strong EPA but poor records — they're undervalued. This is the core principle of value betting: finding odds that don't reflect the true probability.
Strategy #3: Pass EPA vs Opponent Defense
For Totals bets:
Offense with high Pass EPA vs Defense with weak defensive Pass EPA
= Lots of expected points
= Potential Over
| Pass EPA OFF | Opponent Pass EPA DEF | Signal |
|---|---|---|
| +0.20 | +0.15 | Strong Over |
| +0.20 | -0.10 | Tight game |
| -0.10 | +0.15 | Balanced |
| -0.10 | -0.10 | Potential Under |
Strategy #4: Recent EPA vs Season EPA
Recent form matters:
| EPA last 4 games | Season EPA | Signal |
|---|---|---|
| >> season | Team in form | Likely overperformance |
| << season | Team struggling | Likely underperformance |
| ≈ season | Stable | No strong signal |
Join ProbWin for free
Access our AI predictions for NBA, NHL, Soccer & Tennis. Sign up in 30 seconds.
EPA's Limitations
Limitation #1: Doesn't Capture In-Game Context
EPA doesn't account for: - The game score (a team with a big lead plays differently) - Time remaining - Strategy (garbage time)
A team leading 28-0 will run the ball and post a lower EPA — but they're winning.
Limitation #2: Small Sample Variance
| Plays analyzed | EPA Reliability |
|---|---|
| < 100 plays | Low |
| 100-300 plays | Moderate |
| > 300 plays | Good |
Early in the season (Weeks 1-4), EPA is volatile.
Limitation #3: Turnovers Skew EPA
A team that commits many turnovers will have a very negative EPA. But turnovers are partially random (recovered fumbles, in particular). We explore this nuance in depth in our guide on turnover differential.
Solution: Look at EPA excluding turnovers for a more stable picture.
Limitation #4: Strength of Schedule Varies
Playing against top defenses = lower EPA. Playing against bottom defenses = higher EPA.
Solution: Look at opponent-adjusted EPA (some sites calculate this).
Where to Find EPA Data
Free Sources
| Source | URL | Data |
|---|---|---|
| rbsdm.com (Ben Baldwin) | rbsdm.com/stats | Complete EPA, charts |
| NFL Next Gen Stats | nextgenstats.nfl.com | Basic EPA |
| Pro Football Reference | pro-football-reference.com | Advanced stats |
| ESPN | espn.com/nfl/qbr | QBR (EPA-based) |
nflfastR (For Data Scientists)
The nflfastR package provides play-by-play data with EPA calculated:
Source: github.com/nflverse/nflfastR
Data: Every play with EPA since 1999
Format: CSV, R, Python compatible
Key Columns to Look For
| Column | Meaning |
|---|---|
| epa | Play EPA |
| pass_epa | Passing EPA |
| rush_epa | Rushing EPA |
| success | 1 if EPA > 0, 0 otherwise |
| cpoe | Completion % Over Expected |
Full Example: EPA-Based Analysis
The Matchup
Bills @ Dolphins — Week 12
Season EPA Data
| Team | EPA/play OFF | EPA/play DEF | Pass EPA OFF | Rush EPA OFF |
|---|---|---|---|---|
| Buffalo | +0.15 | -0.08 | +0.22 | -0.02 |
| Miami | +0.12 | +0.05 | +0.18 | -0.05 |
The Analysis
Buffalo: - Elite offense (EPA +0.15) - Decent defense (EPA -0.08) - Dominant Pass EPA (+0.22) - Complete team
Miami: - Good offense (EPA +0.12) - Weak defense (EPA +0.05) - Solid Pass EPA (+0.18) - Vulnerable defensively
The Calculation
Buffalo's offensive advantage:
- Buffalo OFF (+0.15) vs Miami DEF (+0.05)
- Buffalo should score
Miami's offensive advantage:
- Miami OFF (+0.12) vs Buffalo DEF (-0.08)
- Buffalo should limit Miami
Overall differential:
Buffalo: +0.15 - (+0.05) = +0.10 offensive advantage
Miami: +0.12 - (-0.08) = +0.20 offensive advantage (but against a good defense)
Adjusted: Buffalo slight overall advantage
The Bookmaker's Line
Spread: Buffalo -3.5
Total: 51.5
Buffalo ML: -175
The Verdict
Spread analysis: - EPA suggests Buffalo is slightly superior - -3.5 seems fair, perhaps slightly high - No clear value on the spread
Note that the -3.5 spread crosses a crucial key number: the number 3. That half-point can represent ~3% in win rate.
Total analysis: - Buffalo passes well (+0.22 Pass EPA) - Miami's defense is weak (+0.05) - Miami passes well too (+0.18) - Buffalo's defense is decent (-0.08) - Potentially high-scoring game → Over 51.5 possible
Don't forget to check the weather conditions: a game in Miami in November won't pose cold-weather issues, but strong winds could change everything.
Additional Factors
- Home field advantage for Miami
- Weather (Miami in November = no cold-weather factor)
- Rivalry history
Recommended bet: Over 51.5 slight value
EPA and the Quarterback
QBR and EPA
ESPN's QBR (Quarterback Rating) is built on EPA. It measures the QB's contribution to the team's EPA.
| QBR | Interpretation |
|---|---|
| > 70 | Elite (Mahomes, Allen) |
| 55-70 | Good starter |
| 40-55 | Average starter |
| < 40 | Struggling |
QB EPA vs Team EPA
A great QB can mask a bad team. Look at:
| Metric | What it reveals |
|---|---|
| QB EPA/play | Individual QB performance |
| Team Pass EPA | Passing game performance (QB + receivers + OL) |
| EPA without QB | When the QB doesn't play (backup) |
The Injury Factor
When a starting QB (high EPA) is replaced by a backup (low EPA), the impact is massive:
| Starter | Backup | Estimated EPA Differential |
|---|---|---|
| +0.25 | +0.05 | -0.20 (huge) |
| +0.15 | -0.05 | -0.20 |
| +0.05 | -0.10 | -0.15 |
Rule of thumb: When an elite QB is OUT, adjust your estimate by 7-10 points.
How ProbWin Uses EPA
Our NFL model integrates EPA as a core metric:
1. EPA/play Offense and Defense (season-long)
2. Pass EPA and Rush EPA separately
3. Recent EPA trend (last 4-5 games)
4. Opponent-adjusted EPA
5. Complementary Success Rate
6. Offense vs opponent defense cross-matching
7. Adjustment for injured QBs
EPA is more predictive than yards or points scored. We use it as the foundation of our projections.
Check out our NFL picks to see this analysis in action.
Summary: EPA in 7 Key Takeaways
| # | Key takeaway |
|---|---|
| 1 | EPA = Expected Points Added by a play |
| 2 | Accounts for context (down, distance, field position) |
| 3 | Pass EPA > Rush EPA on average (passing is more efficient) |
| 4 | EPA/play > +0.10 = good team, < -0.10 = weak team |
| 5 | For defense, negative EPA = good |
| 6 | Compare EPA with record to find mispriced teams |
| 7 | Recent EPA (last 4-5 games) reveals current form |
Next Steps
You now understand EPA. To go further, learn how weather can neutralize even the best offense, and why key numbers like 3 and 7 change everything for your spread bets.