What is EPA per play in football? (And what CPOE adds)

By Jack Wallner. Updated October 12, 2026.

EPA per play is the average number of points a play adds to its team's expected score on the drive. A positive number means the play left the offense better off than before the snap, and a negative number means worse. CPOE, completion percentage over expected, is the companion stat that judges a passer's accuracy against how hard each throw was.

How EPA works

Before every snap, a model estimates how many points the offense will score on average from that situation, using down, distance, field position, time and similar inputs. That number is the play's expected points, or EP. After the play, the model scores the new situation. EPA is the difference: expected points after, minus expected points before. The nflverse data dictionary describes it as the expected points added by the team with the ball for the given play.

Two real plays from Week 1 of the 2025 season show the range. On 3rd and 12 from the Saints' 45, Arizona was worth 1.60 expected points. Kyler Murray completed a 25-yard pass to Trey McBride to the Saints' 20 and the play was worth +2.79 EPA. On the other end, Carolina's Bryce Young threw an interception on 2nd and 1 with 1.22 expected points on the board, and the play was worth -4.89 EPA.

Because a first down, a touchdown or a turnover is priced in points, EPA counts what yards alone miss. A 5-yard gain on 3rd and 3 can be worth more than a 12-yard gain on 3rd and 15.

EPA per play, per dropback, per rush

Total EPA mostly rewards volume, so analysts divide it by opportunities. The common versions are EPA per play for a team, EPA per dropback for a quarterback, and EPA per rush or per target for runners and receivers. StatScout computes a quarterback's EPA per play as passing EPA divided by pass attempts plus sacks, so a sack that loses points counts against him.

By construction the league average play is close to zero. Across all regular-season pass plays in 2025, the nflverse play-by-play data averages +0.02 EPA per play. Rushing plays average -0.01.

CPOE: accuracy against throw difficulty

Every pass gets a completion probability, called cp in the data, based on factors such as how far downfield the throw went. For a single pass, CPOE is 1 minus cp if the pass was completed, or 0 minus cp if it was not. Averaged over a season, it shows how far above or below expectation a passer's completion percentage was. Murray's 45-yard completion to Marvin Harrison Jr. in that same game had a 30 percent completion probability, so it scored +70 percentage points on that one throw. StatScout shows CPOE in percentage points.

What good looks like for quarterbacks

I calculated the 2025 regular-season spread from the nflverse player stats file for the 36 quarterbacks with at least 200 pass attempts.

Metric (2025)Weak (10th pct.)Typical (median)Strong (90th pct.)Best
EPA per play-0.12+0.05+0.20+0.31 (Drake Maye)
CPOE-3.2+1.6+4.9+10.8 (Drake Maye)

EPA per play is passing EPA divided by attempts plus sacks. Percentiles are interpolated from the downloaded rows.

The gap between a weak and a strong starter is roughly 0.3 points per play. Over 600 plays, that is a difference of about 190 expected points across a season.

What EPA does not tell you

EPA credits the quarterback for everything on a pass play, including the line, the receivers and the play call. It is a noisy measure over a few games. Treat it as a strong starting point, and pair it with CPOE and the game film or team context before drawing conclusions about one player.

How StatScout helps

Football Next: StatScout is an independent iPhone app, not affiliated with the NFL, that ranks every player on advanced percentiles including EPA per play and CPOE, next to the familiar totals. The data comes from the open nflverse archive and updates through game day, so you can see where a quarterback stands among his peers without looking up the numbers.

Frequently asked questions

What is EPA per play in football?

EPA per play is the average expected points added on each play. Each play is scored by the change in the offense's expected points from before the snap to after it, then averaged. Positive is good for the offense.

What is a good EPA per play for a quarterback?

In 2025, the median quarterback with at least 200 attempts was about +0.05 EPA per dropback. The 90th percentile was about +0.20, and the best was Drake Maye at +0.31.

What is CPOE?

CPOE is completion percentage over expected. It compares a passer's completions to the completion probability of each throw, so a hard throw that is caught counts for more than an easy one. It is measured in percentage points.

Is EPA better than passer rating?

EPA accounts for down, distance, field position and turnovers, which passer rating ignores, so most analysts prefer it for efficiency. It is still noisy over small samples.

Where does EPA data come from?

The free nflverse project publishes play-by-play data with an EPA value on every play, built from the nflfastR models. StatScout uses that data.

Sources

  1. nflreadr data dictionary: play-by-play (EP, EPA, cp, cpoe)
  2. nflreadr data dictionary: player stats
  3. nflverse-data releases (play-by-play and player stats files)
  4. nflfastR on GitHub