Week 6 Recap: Model vs. Market
Report card time. Every prediction below was locked in before its game kicked off, no do-overs and no peeking. For each game, the model's pick is simple: if it predicted more points than the sportsbooks' over/under, that's an Over; fewer, an Under. Then we keep score like a team does: wins and losses. Reminder: the model is an experiment, not a crystal ball. Tested on every season from 2010 to 2025, it won 50.3% of its picks, basically a coin flip, so one good or bad week is just noise. Here's how the model works.
Season win rate: 48.0%. Why 52.4% to break even? Sportsbooks take a cut, called the vig: you risk $110 to win $100, so going 50–50 still loses money. (Betting is for adults, and the house usually wins. We just keep score.) Average miss this week: the model was off by 12.9 points, the sportsbooks by 12.2; the model was closer on 23 of 58 games.
The 5 biggest misses
The games where our model's guess ended up furthest from the real final total. Blowouts, shootouts, and games that just went totally off script. Humbling, every week.
| Matchup | Posted O/U | Model | Actual | Off by | Pick | Result |
|---|---|---|---|---|---|---|
| South Alabama @ Arkansas State | 59.5 | 58.0 | 56–49 (105.0) | 47.0 | Under | Loss |
| North Dakota State @ UNLV | 47.5 | 61.5 | 7–13 (20.0) | 41.5 | Over | Loss |
| Southern Miss @ Troy | 51.5 | 52.1 | 34–55 (89.0) | 36.9 | Over | Win |
| Old Dominion @ App State | 45.5 | 46.9 | 10–3 (13.0) | 33.9 | Over | Loss |
| San Diego State @ Oregon State | 52.5 | 49.5 | 14–66 (80.0) | 30.5 | Under | Loss |
Every game, every call
| Matchup | Posted O/U | Model | Actual | Conditions | Pick | Result |
|---|---|---|---|---|---|---|
| South Alabama @ Arkansas State | 59.5 | 58.0 | 56–49 (105.0) | 7mph wind | Under | Loss |
| North Dakota State @ UNLV | 47.5 | 61.5 | 7–13 (20.0) | dome | Over | Loss |
| Southern Miss @ Troy | 51.5 | 52.1 | 34–55 (89.0) | 8mph wind | Over | Win |
| Old Dominion @ App State | 45.5 | 46.9 | 10–3 (13.0) | 0.41in rain, 21mph wind | Over | Loss |
| San Diego State @ Oregon State | 52.5 | 49.5 | 14–66 (80.0) | 0.08in rain, 5mph wind | Under | Loss |
| UCLA @ Oregon | 57.5 | 62.1 | 17–15 (32.0) | 7mph wind | Over | Loss |
| Arizona @ West Virginia | 60.5 | 55.7 | 52–31 (83.0) | 12mph wind | Under | Loss |
| Georgia @ Alabama | 51.5 | 64.1 | 20–17 (37.0) | 6mph wind | Over | Loss |
| Buffalo @ Toledo | 54.5 | 55.8 | 23–8 (31.0) | 8mph wind | Over | Loss |
| Illinois @ Michigan State | 48.5 | 50.4 | 38–37 (75.0) | 14mph wind | Over | Win |
| New Mexico State @ Florida International | 46.5 | 47.3 | 3–22 (25.0) | 0.03in rain, 8mph wind | Over | Loss |
| Boise State @ Fresno State | 48.5 | 47.6 | 38–31 (69.0) | 10mph wind | Under | Loss |
| Iowa @ Washington | 40.5 | 46.0 | 41–24 (65.0) | 6mph wind | Over | Win |
| Texas A&M @ Missouri | 50.5 | 50.8 | 6–27 (33.0) | 9mph wind | Over | Loss |
| Iowa State @ BYU | 46.5 | 51.6 | 10–24 (34.0) | 10mph wind | Over | Loss |
| UCF @ Oklahoma State | 53.5 | 52.8 | 28–42 (70.0) | 12mph wind | Under | Loss |
| Sam Houston @ Liberty | 52.5 | 54.6 | 3–35 (38.0) | 6mph wind | Over | Loss |
| LSU @ Kentucky | 50.5 | 54.1 | 34–35 (69.0) | 16mph wind | Over | Win |
| Tennessee @ Arkansas | 51.5 | 55.7 | 24–17 (41.0) | 6mph wind | Over | Loss |
| Washington State @ Utah State | 43.5 | 47.3 | 16–17 (33.0) | 11mph wind | Over | Loss |
| Indiana @ Nebraska | 48.5 | 49.8 | 20–17 (37.0) | 19mph wind | Over | Loss |
| Air Force @ Northern Illinois | 48.5 | 47.4 | 28–7 (35.0) | 13mph wind | Under | Win |
| Wyoming @ San José State | 42.5 | 41.3 | 16–13 (29.0) | 6mph wind | Under | Win |
| Ole Miss @ Vanderbilt | 55.5 | 57.0 | 52–17 (69.0) | 0.02in rain, 12mph wind | Over | Win |
| Hawai'i @ Arizona State | 51.5 | 53.7 | 12–30 (42.0) | 7mph wind | Over | Loss |
| Virginia Tech @ California | 53.5 | 56.1 | 20–25 (45.0) | 13mph wind | Over | Loss |
| Missouri State @ Western Kentucky | 56.5 | 58.0 | 13–34 (47.0) | 6mph wind | Over | Loss |
| Kansas @ Utah | 49.5 | 54.3 | 24–41 (65.0) | 20mph wind | Over | Win |
| Tulane @ Army | 48.5 | 47.2 | 17–20 (37.0) | 6mph wind | Under | Win |
| North Carolina @ Pittsburgh | 46.5 | 48.0 | 21–17 (38.0) | 12mph wind | Over | Loss |
| Nevada @ UTEP | 48.5 | 52.5 | 30–13 (43.0) | 8mph wind | Over | Loss |
| Tulsa @ Navy | 47.5 | 50.9 | 26–34 (60.0) | 12mph wind | Over | Win |
| Texas @ Oklahoma | 40.5 | 42.5 | 24–27 (51.0) | 8mph wind | Over | Win |
| Miami (OH) @ Massachusetts | 44.5 | 47.3 | 20–19 (39.0) | 5mph wind | Over | Loss |
| UAB @ Memphis | 54.5 | 59.1 | 13–38 (51.0) | 7mph wind | Over | Loss |
| Sacramento State @ Bowling Green | 43.5 | 55.8 | 10–38 (48.0) | 14mph wind | Over | Win |
| Maryland @ Ohio State | 56.5 | 53.4 | 16–45 (61.0) | 0.03in rain, 8mph wind | Under | Loss |
| Stanford @ Notre Dame | 55.5 | 57.5 | 7–58 (65.0) | 11mph wind | Over | Win |
| Florida State @ Louisville | 60.5 | 56.8 | 20–44 (64.0) | 6mph wind | Under | Loss |
| Louisiana @ Louisiana Tech | 48.5 | 56.3 | 31–32 (63.0) | 6mph wind | Over | Win |
| Charlotte @ North Texas | 57.5 | 65.5 | 10–50 (60.0) | 8mph wind | Over | Win |
| Rice @ East Carolina | 45.5 | 45.4 | 12–28 (40.0) | 0.04in rain, 16mph wind | Under | Win |
| Coastal Carolina @ Marshall | 57.5 | 52.9 | 27–21 (48.0) | 0.38in rain, 7mph wind | Under | Win |
| Houston @ Kansas State | 54.5 | 55.7 | 35–16 (51.0) | 17mph wind | Over | Loss |
| James Madison @ Georgia Southern | 51.5 | 55.0 | 27–24 (51.0) | 0.03in rain, 14mph wind | Over | Loss |
| Ball State @ Northwestern | 53.5 | 55.4 | 14–45 (59.0) | 12mph wind | Over | Win |
| Eastern Michigan @ Akron | 51.5 | 51.4 | 25–23 (48.0) | 10mph wind | Under | Win |
| Wake Forest @ NC State | 56.5 | 55.3 | 38–14 (52.0) | 0.04in rain, 15mph wind | Under | Win |
| Kent State @ Western Michigan | 43.5 | 48.1 | 7–38 (45.0) | 12mph wind | Over | Win |
| South Carolina @ Florida | 59.5 | 59.9 | 38–19 (57.0) | 0.09in rain, 14mph wind | Over | Loss |
| South Florida @ UTSA | 49.5 | 52.5 | 24–31 (55.0) | dome | Over | Win |
| Central Michigan @ Ohio | 45.5 | 47.5 | 14–31 (45.0) | 7mph wind | Over | Loss |
| Jacksonville State @ Kennesaw State | 49.5 | 50.8 | 27–26 (53.0) | 5mph wind | Over | Win |
| UConn @ Temple | 55.5 | 56.0 | 34–20 (54.0) | 8mph wind | Over | Loss |
| Duke @ Georgia Tech | 45.5 | 51.1 | 25–28 (53.0) | 0.02in rain, 15mph wind | Over | Win |
| USC @ Penn State | 54.5 | 55.8 | 31–23 (54.0) | 5mph wind | Over | Loss |
| Minnesota @ Purdue | 49.5 | 52.6 | 13–41 (54.0) | 5mph wind | Over | Win |
| Syracuse @ Virginia | 49.5 | 51.8 | 25–28 (53.0) | 0.03in rain, 7mph wind | Over | Win |
Shadow test: cooling off over streaks
We're trying out a tweak: shade a prediction down when a team's games have been beating the posted total, and up when they've been coming in under it, because hot over streaks have tended to cool off (here's where the idea came from). It isn't part of the model: the picks above don't use it. For the rest of the 2026 regular season we just keep score.
With the tweak, the picks on the 51 games it covered would have gone 25–25–1 this week (25–25–1 since it started in Week 6, 50.0%). It changed 6 picks this week, and the new picks went 4–2. Season to date, the picks it changed have gone 4–2.
Not betting advice. This is a running scorecard for an experimental model, posted automatically once each week's games are final. Every week's recap lives on the blog.