Week 4 report · Sat, Sep 26 · 2026 Week 4

AP #17Iowa
6–2 · Ours #22 enteringOur rank going into this game, from the rankings page. The board's line comes from the betting model, which sees more than this one number.
20–19FinalWe had IOWA 22 – MICH 28

AP #18Michigan
5–3 · Ours #23 enteringOur rank going into this game, from the rankings page. The board's line comes from the betting model, which sees more than this one number.
Win chanceOur odds before kickoff: how often each team won outright when we played the game out thousands of times from our line.
MICH 66%IOWA won
MICH 66%IOWA wonSpreadOur last pregame odds pull, usually inside the hour before kickoff. A median of the books we track, not a sharp close. First seen at MICH −4.5.MICH −5.5oursOur computer's point spread for this game, built from team stats, not from the betting odds. Read it like a betting line: −7 means we have that team winning by 7. −6.6 · IOWA covered by 6.5
TotalOur last pregame odds pull, usually inside the hour before kickoff. A median of the books we track, not a sharp close. Our total was 49.8.40final 39 · under by 1
Our callThe side our number took at the early-week line, graded at that line. Line value is how far the market moved toward it by the last capture before kickoff.No call
Quarterbacksthis game

Hank Brown20/34 · 221 yards
- EPA / dropbackExpected points added per dropback (passes and sacks) in this game. The percentile is among every 2026 FBS quarterback game with 10+ dropbacks.
- +0.1858th pct
- Comp %
- 58.8
- TD
- 2
- Turnovers
- 00 INT · 0 fum
- Sacked
- 2

Bryce Underwood17/28 · 276 yards
- EPA / dropbackExpected points added per dropback (passes and sacks) in this game. The percentile is among every 2026 FBS quarterback game with 10+ dropbacks.
- +0.3977th pct
- Comp %
- 60.7
- TD
- 2
- Turnovers
- 11 INT · 0 fum
- Sacked
- 1
The matchupthis game · ▲▼ better or worse than the unit's usual · percentile vs every 2026 team game
Iowaoffense | Played like MICH +9.5Fitted from non-garbage efficiency; describes how the game was played, not who deserved it. | defenseMichigan![]() | ||
|---|---|---|---|---|
| 12th | 29.3%▼14.7 | Success rateSuccessShare of plays that kept the offense on schedule, outside garbage time. | 29.3%▲5.3 | 88th |
| 47th | +0.03▲0.03 | EPA / playEPA/playExpected points added per play, outside garbage time. | +0.03▼0.24 | 54th |
| 62nd | +0.18▲0.19 | PassingPassingExpected points added per dropback, outside garbage time. | +0.18▼0.49 | 39th |
| 17th | −0.22▼0.26 | RushingRushingExpected points added per run, outside garbage time. | −0.22▲0.07 | 84th |
| 79th | 0▲1.4 | TurnoversTurnoversInterceptions and lost fumbles: giveaways for the offense, takeaways for the defense. | 0▼1.5 | 21st |
Michiganoffense | defenseIowa![]() | |||
|---|---|---|---|---|
| 64th | 45.6%▲5.9 | Success rateSuccessShare of plays that kept the offense on schedule, outside garbage time. | 45.6%▼15.9 | 36th |
| 61st | +0.13▲0.12 | EPA / playEPA/playExpected points added per play, outside garbage time. | +0.13▼0.29 | 39th |
| 80th | +0.39▲0.46 | PassingPassingExpected points added per dropback, outside garbage time. | +0.39▼0.45 | 20th |
| 33rd | −0.07▼0.12 | RushingRushingExpected points added per run, outside garbage time. | −0.07▼0.22 | 67th |
| 41st | 1▲0.2 | TurnoversTurnoversInterceptions and lost fumbles: giveaways for the offense, takeaways for the defense. | 1▲0.6 | 59th |
Team statsthis game · percentile vs every 2026 team game
IowaIOWA | MichiganMICH | |
|---|---|---|
| Special teams & field position | ||
| Average startWhere the team's drives started on average. | Own 2419th | Own 2310th |
| Kicking vs expectedKickingPoints from field goals and extra points against what an average kicker makes from the same spots. | −1.6 pts14th | +1.0 pts74th |
| Drives & pace | ||
| PlaysOffensive plays outside garbage time. | 5848th | 6876th |
| Drive pointsThe part of the final margin the offense moved the ball for (efficiency, success rate, big plays, finishing drives), in points. A margin over the opponent. | −14.215th | +14.285th |
| Turnovers & hidden points | ||
| Penalty first downsPenalty 1st downsFirst downs the team was handed by the opponent's penalties. | 251st | 127th |
| 4th downsPoints from going for it on fourth down, against what the average team gets from the same spots. | 0.0 pts50th | −0.7 pts15th |
| Return touchdownsReturn TDsDefensive and special-teams touchdowns. | 043rd | 192nd |
| Hidden pointsPoints from outside the offense's drives: turnovers, field position, kicking, fourth downs, penalty first downs, return touchdowns and safeties. A margin over the opponent. MICH +1.0: turnovers −2.6, field position −0.7, kicking +1.8, 4th downs −0.9, penalty first downs −0.8, return touchdowns +4.2. | −1.045th | +1.055th |
Season so far
Iowa6–2 · 42nd-hardest schedule
W
vs Northern Illinois40–0covered −31
vs Northern Illinois40–0covered −31W
vs Iowa State16–13missed −14
vs Iowa State16–13missed −14Wvs Northern Iowa55–0covered −37.5
W
at Michigan20–19covered +5.5
at Michigan20–19covered +5.5L
vs Ohio State14–31missed +14.5
vs Ohio State14–31missed +14.5W
at Washington41–24covered +3
at Washington41–24covered +3L
at Minnesota10–13missed −7.5QB change mid-game
at Minnesota10–13missed −7.5QB change mid-gameW
vs Wisconsin30–0covered −2.5
vs Wisconsin30–0covered −2.5
Michigan5–3 · 45th-hardest schedule
W
vs Western Michigan13–12missed −27.5
vs Western Michigan13–12missed −27.5W
vs Oklahoma17–10covered +5
vs Oklahoma17–10covered +5W
vs UTEP52–17covered −34.5
vs UTEP52–17covered −34.5L
vs Iowa19–20missed −5.5
vs Iowa19–20missed −5.5L
at Minnesota14–20missed −6
at Minnesota14–20missed −6W
vs Penn State21–18missed −5.5
vs Penn State21–18missed −5.5L
vs Indiana6–13covered +7.5
vs Indiana6–13covered +7.5W
at Rutgers28–21missed −16.5
at Rutgers28–21missed −16.5Model cfb_best · uncertainty ±15.6 · run Sep 26, 2:05 PM EDT · froze at kickoff and graded as-is