Week 4 2025 · September 20, 2025
NC State at Duke, Week 4 2025: who deserved to win?
Duke beat NC State 45–33, but the replays lean toward NC State: it takes 6 of 10 with the same day's form. Luck ran its way: kicks alone were worth 13 points of win probability to Duke.
Before kickoff Duke was a 58% favorite. The biggest swing (Q3, 5:40 left): K. Vinesett had a 25-yard field goal blocked, worth 8 points of win probability to Duke.
Final
| 33 | |
| 45 |
Replay with same day's form
Luck index +65 Duke very lucky · −65 NC State
Each team’s own plays from this game, resampled into new drives 4,000 times: with the way both teams actually played, how often does this performance win? How the replay works
Ten replays. NC State wins 6, Duke wins 4.
- 1 NCSU 49 DUKE 17
- 2 NCSU 35 DUKE 13
- 3 NCSU 34 DUKE 17
- 4 NCSU 30 DUKE 19
- 5 NCSU 31 DUKE 24
- 6 NCSU 24 DUKE 21
- 7 NCSU 31 DUKE 34
- 8 NCSU 24 DUKE 34
- 9 NCSU 21 DUKE 35
- 10 NCSU 14 DUKE 38
Three other ways to ask
Each answers a different question, so none of them replaces the replay above.
Before kickoff
The closing betting line, turned into a probability. What everyone knew before the game.
Same teams, fresh game
The line plus what this game showed, weighted by how much one game can tell. It stays close to the line because one game says little.
Only coin-flips re-rolled
Every kick, fumble bounce, conversion and judgment call redrawn; everything else fixed. The narrowest view of luck.
How 4,000 replays ended
NC State wins 65% of them, Duke 35%, counting the 6% still level after regulation as half each. The line is what actually happened: Duke by 12.
Show as a table
| Final margin in the replays | Share of replays |
|---|---|
| NC State by 17+ | 28.0% |
| NC State by 9–16 | 15.6% |
| NC State by 1–8 | 19.8% |
| Level after regulation | 5.8% |
| Duke by 1–8 | 14.2% |
| Duke by 9–16 | 9.0% |
| Duke by 17+ | 7.5% |
Where the luck was
What the luck was worth
Every lucky and unlucky play, weighted by the moment it happened: its swing in win probability, added up by kind. A missed kick in a decided game counts for nothing; the same kick at the end of a tie game can be most of a win.
The kicks
How likely each kicker was to make that kick (his own record, the distance), and what happened.
- K. Vinesett, 25 yds blocked · 91% expected
- T. Pelino, 43 yds made · 68% expected
- Extra point missed · 98% expected
Penalties: NC State 6 for 49 yards, Duke 7 for 73 yards
Every accepted flag, in order, and what it did to the helped team’s chance of winning at that moment, including any play it wiped out (points on the scoreboard in grey). A flag in a decided game is worth nothing; one at the turn of a close game can be worth most of a win. Judgment calls count toward luck, pre-snap fouls mostly don’t. How calls are valued
| When | Flag | Win probability for |
|---|---|---|
| Q1 12:41 | Offside on NC State, 5 yards · pre-snap | +1% DUKE +0.7 pts |
| Q1 8:38 | Delay of Game on Duke, 5 yards · pre-snap | +1% NCSU +0.5 pts |
| Q1 3:55 | False Start on NC State, 5 yards · pre-snap | +1% DUKE +0.5 pts |
| Q1 1:42 | Holding on NC State, 10 yards | +3% DUKE +1.5 pts |
| Q2 12:50 | Pass Interference on NC State, 14 yards | +5% DUKE +2.1 pts |
| Q2 8:13 | Face Mask on Duke, 15 yards | +2% NCSU +0.9 pts |
| Q2 5:45 | Unsportsmanlike Conduct on Duke, 0 yards | 0% NCSU 0.0 pts |
| Q2 0:41 | Pass Interference on NC State, 10 yards | +7% DUKE +2.5 pts |
| Q3 8:27 | Personal Foul on Duke, 15 yards | +3% NCSU +0.9 pts |
| Q3 5:36 | Holding on Duke, 8 yards | +3% NCSU +1.6 pts |
| Q3 3:53 | Offside on NC State, 5 yards · pre-snap | +1% DUKE +0.5 pts |
| Q4 9:19 | Pass Interference on Duke, 15 yards | +3% NCSU +1.8 pts |
| Q4 1:24 | Unsportsmanlike Conduct on Duke, 15 yards | 0% DUKE +1.7 pts |
When it happened
Duke’s chance of winning
As low as 21% and as high as 100%. Numbers mark the biggest luck moments, listed below.
| # | When | What happened | Win probability for | Next drive |
|---|---|---|---|---|
| 1 | Q1 14:10 | NC State converted 3rd & 113rd & 4th downs · 27% expected | +6% NCSU | NCSU: Turnover |
| 2 | Q1 12:32 | Duke converted 4th & 43rd & 4th downs · 48% expected | +6% DUKE | DUKE: Touchdown |
| 3 | Q2 12:50 | Pass Interference on NC State, 14 yardsJudgment calls | +5% DUKE | DUKE: Punt |
| 4 | Q2 11:19 | Duke was stopped on 3rd & 33rd & 4th downs · 56% expected | +4% NCSU | DUKE: Punt |
| 5 | Q2 6:45 | NC State converted 3rd & 53rd & 4th downs · 44% expected | +4% NCSU | NCSU: Touchdown |
| 6 | Q2 0:41 | Pass Interference on NC State, 10 yardsJudgment calls | +7% DUKE | DUKE: Touchdown |
| 7 | Q3 5:40 | K. Vinesett had a 25-yard field goal blockedKicks · 91% expected for him | +8% DUKE | NCSU: Turnover on downs |
| 8 | Q4 5:39 | NC State converted 3rd & 153rd & 4th downs · 22% expected | +6% NCSU | NCSU: Touchdown |
Adjust the assumptions
Disagree with how much of a fumble bounce or a pass interference call is luck? Change it and the coin-flip replay reruns in your browser.
Only coin-flips re-rolled
NC State 10% · Duke 90%
- Final margin
- Duke by 12
- Luck in points
- 4.7 for Duke
- Luck-adjusted margin
- Duke by 7.3
- Replay with same day's form
- NC State 65% · Duke 35% unchanged: why
About these numbers
Play-by-play and expected points from CollegeFootballData.com via cfbfastR; win probability from our own model of the score, the possession and the betting line; kicks valued against each kicker’s own record. College play-by-play has no charting of drops or interception-worthy throws and no injury reports, so those kinds of luck aren’t counted here.
Methodology and validation · All Week 4 2025 games ·
NC State ·
Duke
More from Week 4 2025
- Syracuse at Clemson SYR 34–21 · replay 34% for the winner
- SMU at TCU TCU 35–24 · replay 74% for the winner
- North Carolina at UCF UCF 34–9 · replay 91% for the winner
- California at San Diego State SDSU 34–0 · replay 92% for the winner
- Florida at Miami MIA 26–7 · replay 98% for the winner
- Bowling Green at Louisville LOU 40–17 · replay 99% for the winner
- Stanford at Virginia UVA 48–20 · replay 99% for the winner
- Temple at Georgia Tech GT 45–24 · replay 100% for the winner
- Wofford at Virginia Tech VT 38–6 · replay 100% for the winner
- Kent State at Florida State FSU 66–10 · replay 100% for the winner
- Fresno State at Hawai'i FRES 23–21 · replay 24% for the winner
- Troy at Buffalo TROY 21–17 · replay 30% for the winner