Published on Tue Nov 04 2025 12:00:00 GMT+0000 (Coordinated Universal Time) by cresencio
Week 9 Results: When Confidence Meets Reality
Disclaimer: This analysis is for educational and entertainment purposes only. This is not betting advice, financial advice, or a recommendation to wager on sporting events. Always gamble responsibly.
Week 9 was a reality check.
The ensemble’s “Lock of the Week” (CAR @ GB at 91.3% confidence) promptly collapsed in a 16-13 upset. Seven games flipped against predictions. The models limped to 50.0% accuracy—tied for the second-worst week of the season.
And yet.
Against the spread? 57.1% (8-6). The models managed to stay above .500 on spreads despite the winner-prediction collapse. (See full betting breakdown)
The takeaway: predicting who wins and predicting who covers are two wildly different games. Week 9 showed both can be challenging.
The Carnage in Numbers
Ensemble Performance:
- 7/14 correct (50.0%) — down from 61.5% in Week 8
- 7 upsets, including 3 high-confidence misses above 74%
- Bayesian model won the week at 64.3% (9/14)
- All models regressed: ELO/Logistic/XGBoost hit 57.1%, Ensemble cratered
Betting Performance:
- Against the Spread: 8-6 (57.1%)
- Over/Under: 6-8 (42.9%) — total projections struggled
- Value bets: 6/11 (54.5%) — edge identification still worked
Season-to-Date:
- 60.0% accuracy across 135 games (still respectable)
- Week 9 joins Week 2 as the roughest stretches
The “Lock of the Week” That Wasn’t
CAR @ GB: Predicted GB 91.3%, Final CAR 16-13
This was supposed to be a layup.
All five models agreed: Packers. Confidence ranged from 63.1% (XGBoost) to 87.9% (Logistic). The ensemble pushed it to 91.3%—the highest of the week, the second-highest all season.
Then Carolina walked into Lambeau and won 16-13 in a defensive slog.
Predicted total: 49.4
Actual total: 29 (off by 20.4 points—the week’s second-worst projection)
The Packers scored 13 at home. The Panthers, 2-7 coming in, somehow found a way. It’s the kind of upset that makes you question whether football is even predictable.
Spoiler: sometimes it’s not.
The Seven Deadly Upsets
| Game | Predicted | Confidence | Actual Winner | Score |
|---|---|---|---|---|
| CAR @ GB | GB | 91.3% | CAR | 16-13 |
| MIN @ DET | DET | 74.3% | MIN | 27-24 |
| ARI @ DAL | DAL | 65.8% | ARI | 27-17 |
| CHI @ CIN | CIN | 61.8% | CHI | 47-42 |
| DEN @ HOU | HOU | 55.1% | DEN | 18-15 |
| SF @ NYG | NYG | 52.8% | SF | 34-24 |
| IND @ PIT | IND | 50.9% | PIT | 27-20 |
Seven upsets total, with CAR @ GB (91.3% confidence miss), MIN @ DET (74.3%), and ARI @ DAL (65.8%) being the most shocking. Detroit and Dallas were multi-score favorites at home and both lost. The IND @ PIT game was essentially a coin flip (50.9%), so calling it an “upset” is generous—but the Steelers defied even that razor-thin margin.
The Game That Broke the Total Model
CHI @ CIN: Predicted total 38.4, Actual total 89
Before the game, the models saw a defensive slugfest. Low confidence (61.8% for CIN), chilly projected total of 38.4 points—the lowest of the week.
Final score: CHI 47, CIN 42.
That’s 89 combined points—a 50.6-point miss, the worst total projection of the entire season.
Both teams said “defense is optional” and proceeded to put on an offensive clinic. Chicago, predicted to lose, outscored Cincinnati in a shootout that had no business happening based on any model’s expectations.
This game alone accounts for a significant chunk of the week’s Over/Under struggles (6-8 record).
The Betting Reality: Barely Above .500
Here’s where Week 9 gets sobering.
The ensemble went 7-14 on winner predictions (coin-flip territory). Against the spread? 8-6 (57.1%)—barely better than a coin flip.
The models picked some good spots but also had glaring misses:
What Worked:
- CHI @ CIN: Models took CHI as a dog at +2.5. CHI won outright 47-42. ✅
- MIN @ DET: Models took MIN +8.5. MIN won outright 27-24. ✅
- CAR @ GB: Models took CAR +12.5. CAR won outright 16-13. ✅
- ARI @ DAL: Models took ARI +2.5. ARI won 27-17. ✅
What Didn’t:
- BAL @ MIA: Models took MIA +7.5. BAL won 28-6 (covered by 15.5). ❌
- ATL @ NE: Models took NE -5.5. NE won by 1 (didn’t cover). ❌
- SF @ NYG: Models took NYG -2.5. SF won outright. ❌
- SEA @ WAS: Models took WAS -3.5. SEA won outright. ❌
The pattern: underdogs covered more often than favorites. The models correctly identified 4 of 7 upset games on the spread, but missed on several favorites they expected to cover comfortably.
Key insight: Week 9 showed the challenge of both winner prediction AND spread coverage. When favorites collapse (like GB, DET, DAL), even the spread picks suffer.
Consensus Games: 4/5 (80%)
Five games had unanimous model agreement:
| Game | Predicted | Result |
|---|---|---|
| CAR @ GB | GB 91.3% | ❌ CAR won |
| ATL @ NE | NE 76.8% | ✅ NE won 24-23 |
| LAC @ TEN | LAC 79.0% | ✅ LAC won 27-20 |
| KC @ BUF | BUF 51.9% | ✅ BUF won 28-21 |
| SEA @ WAS | SEA 72.2% | ✅ SEA won 38-14 |
The consensus went 4/5 (80%)—which is excellent! The problem: the one miss was the highest-confidence pick of the week. That’s how averages crater.
Seattle’s 38-14 demolition of Washington was the most dominant result. Buffalo’s win over Kansas City was the narrowest consensus pick (51.9%) but held up. New England squeaked by Atlanta 24-23 in a nail-biter.
Model Rankings: Bayesian Wins, Ensemble Stumbles
| Model | Week 9 Record | Accuracy | Change from Week 8 |
|---|---|---|---|
| Bayesian | 9/14 | 64.3% | -4.9% 📉 |
| ELO | 8/14 | 57.1% | -12.1% 📉 |
| Logistic | 8/14 | 57.1% | -12.1% 📉 |
| XGBoost | 8/14 | 57.1% | -19.8% 📉 |
| Ensemble | 7/14 | 50.0% | -11.5% 📉 |
Bayesian took the crown this week—the only model above 60%. XGBoost had the worst regression, dropping nearly 20 points from its Week 8 performance (76.9% → 57.1%).
The ensemble, designed to smooth out individual model volatility, got caught in the crossfire of high-confidence misses and couldn’t recover.
Team Predictability: Pittsburgh and Atlanta Are Chaos Incarnate
Season-to-date prediction accuracy by team:
Most Predictable (85%+):
- IND: 88.9% (8/9)
- TEN: 88.9% (8/9)
- JAX: 87.5% (7/8)
- LA: 87.5% (7/8)
- TB: 87.5% (7/8)
Least Predictable (≤37.5%):
- PIT: 25.0% (2/8) 🎲
- ATL: 25.0% (2/8) 🎲
- NYJ: 37.5% (3/8)
- MIN: 37.5% (3/8)
- CHI: 37.5% (3/8)
Pittsburgh and Atlanta are harder to predict than a coin flip. Both have 5 wins and 3 losses as favorites, yet the models have gotten them wrong 75% of the time.
Pittsburgh was a narrow favorite against Indy this week (IND 50.9% ensemble lean) and won. Atlanta squeaked past New England 24-23 as an underdog. Both teams live in the margins and defy model logic.
Nail-Biters: Five Games Decided by 3 or Fewer Points
- CAR 16, GB 13 (3 pts)
- ATL 23, NE 24 (1 pt)
- DEN 18, HOU 15 (3 pts)
- MIN 27, DET 24 (3 pts)
- JAX 30, LV 29 (1 pt)
Make that five games within three points. The models struggle in tight contests (54.3% accuracy on one-score games this season), and Week 9 had a cluster of them.
Jacksonville’s 30-29 win over Las Vegas was the closest—and the models correctly picked JAX at 65.0%. Sometimes you get rewarded for sweating it out.
What Went Right
Despite the rough week, there were a few bright spots:
- Underdog identification (4/7) — correctly identified value in CHI, MIN, CAR, and ARI covering
- Consensus reliability (80%) — when all models agree, they’re usually right (4/5)
- Bayesian resilience — best individual model performance at 64.3%
- Season accuracy still 60% — one bad week doesn’t erase 8 good ones
- Learning opportunities — clear patterns emerged about when models struggle
What Went Wrong
- High-confidence misses — CAR @ GB (91.3%), MIN @ DET (74.3%)
- Total projections collapsed — CHI/CIN off by 50.6, CAR/GB off by 20.4
- Over/Under struggles (42.9%) — scoring variance exceeded model expectations
- Ensemble regression — dropped to 50%, worst performance since Week 2
- Predictability illusion — teams like PIT/ATL remain model-proof
The Week 9 Reality
Here’s the honest truth:
Week 9 was rough all around.
The models struggled with both game outcomes (50%) and spread coverage (57.1%). Seven upsets, including a 91.3% favorite losing at home. High-confidence picks collapsed. Favorites didn’t just lose—they got blown out.
When the fundamentals break down (home field advantage evaporates, favorites play their worst games), prediction models struggle because they’re built on historical patterns. Week 9 threw those patterns out the window.
This is football. Sometimes chaos wins.
Looking Ahead: What Week 9 Teaches Us
- Confidence isn’t certainty. A 91% pick can lose. Always.
- Totals are harder than spreads. Scoring variance is wild—CHI/CIN proved it.
- Upsets cluster. When favorites struggle, they ALL struggle. Week 9 had systematic favorite failures.
- High variance is real. Football’s randomness can’t be eliminated, only managed.
- Process > Results. One bad week happens. The key is learning and adjusting.
Week 9 humbled the models on both winners and spreads. But the season-long accuracy (60%) remains solid. Week 10 awaits, and the models will recalibrate.
That’s football.
Betting Breakdown
Here’s the complete spread and over/under performance for all 14 Week 9 games.
| Game | Market Spread | Model Pick | Spread Result | Market Total | Model O/U | Total Result | Value Found? |
|---|---|---|---|---|---|---|---|
| BAL @ MIA | MIA +7.5 | MIA | ❌ BAL covered (won by 22) | 50.3 | UNDER | ✅ UNDER (34 pts) | ✅ |
| CHI @ CIN | CIN -2.5 | CHI | ✅ CHI covered (won outright) | 52.3 | UNDER | ❌ OVER (89 pts) | ✅ |
| MIN @ DET | DET -8.5 | MIN | ✅ MIN covered (won by 3) | 47.5 | UNDER | ❌ OVER (51 pts) | ✅ |
| CAR @ GB | GB -12.5 | CAR | ✅ CAR covered (won by 3) | 45.0 | OVER | ❌ UNDER (29 pts) | ❌ |
| DEN @ HOU | HOU -1.5 | HOU | ❌ DEN covered (won by 3) | 39.7 | OVER | ❌ UNDER (33 pts) | ❌ |
| ATL @ NE | NE -5.5 | NE | ❌ NE won by 1 (didn't cover) | 45.0 | OVER | ✅ OVER (47 pts) | ✅ |
| SF @ NYG | NYG -2.5 | NYG | ❌ SF covered (won outright) | 48.8 | UNDER | ❌ OVER (58 pts) | ✅ |
| IND @ PIT | PIT -3.0 | PIT | ✅ PIT covered (won by 7) | 49.5 | OVER | ❌ UNDER (47 pts) | ✅ |
| LAC @ TEN | TEN +10.0 | TEN | ✅ TEN covered (lost by 7) | 43.4 | OVER | ✅ OVER (47 pts) | ❌ |
| NO @ LA | LA -13.5 | NO | ❌ LA covered (won by 24) | 44.5 | OVER | ❌ UNDER (44 pts) | ✅ |
| JAX @ LV | LV -3.0 | LV | ✅ LV covered (lost by 1) | 45.2 | OVER | ✅ OVER (59 pts) | ✅ |
| KC @ BUF | BUF -1.5 | BUF | ✅ BUF covered (won by 7) | 52.2 | OVER | ❌ UNDER (49 pts) | ✅ |
| SEA @ WAS | WAS -3.5 | WAS | ❌ SEA covered (won outright) | 45.6 | OVER | ✅ OVER (52 pts) | ✅ |
| ARI @ DAL | DAL -2.5 | ARI | ✅ ARI covered (won outright) | 54.0 | UNDER | ✅ UNDER (44 pts) | ✅ |
| SPREAD TOTALS | 8-6 (57.1%) | O/U TOTALS | 6-8 (42.9%) | 11/14 Games | |||
Key Betting Insights:
Spread Performance:
- Underdog picks: 4-3 (CHI, MIN, CAR, ARI all covered, but MIA didn’t)
- Favorite picks: 4-3 (PIT, TEN, BUF, LV covered, but BAL, NE, NO didn’t)
- Overall: 8-6 (57.1%) — barely above .500
What Worked:
- Identifying upset candidates (CHI, MIN, CAR, ARI all covered as dogs)
- Fade the chalk strategy worked on GB, DET, DAL
What Didn’t:
- Trusting favorites to cover big spreads (BAL -7.5, LA -13.5 both failed)
- Small favorites (NE -5.5, WAS -3.5) underperformed
Over/Under Patterns:
- OVER bets: 4-6 (struggled with defensive games)
- UNDER bets: 2-2 (CHI/CIN 89-point explosion destroyed the week’s lowest total)
- Biggest miss: CHI @ CIN predicted 38.4, actual 89 (50.6 pt error)
The Reality:
57.1% ATS is acceptable but not exceptional. The models correctly identified several underdog spots but missed on favorites expected to dominate. When the upsets clustered (7 in one week), both winner and spread predictions suffered together.
Full Week 9 Results
| Matchup | Ensemble Prediction | Actual Winner | Final Score | Result | Pred. Total | Actual Total |
|---|---|---|---|---|---|---|
| BAL @ MIA | BAL 61.7% | BAL | 28-6 | ✅ CORRECT | 40.1 | 34 |
| ATL @ NE | NE 76.8% | NE | 24-23 | ✅ CORRECT | 46.2 | 47 |
| CAR @ GB | GB 91.3% | CAR | 16-13 | ❌ UPSET | 49.4 | 29 |
| CHI @ CIN | CIN 61.8% | CHI | 47-42 | ❌ UPSET | 38.4 | 89 |
| DEN @ HOU | HOU 55.1% | DEN | 18-15 | ❌ UPSET | 44.1 | 33 |
| IND @ PIT | IND 50.9% | PIT | 27-20 | ❌ UPSET | 59.2 | 47 |
| JAX @ LV | JAX 65.0% | JAX | 30-29 | ✅ CORRECT | 46.0 | 59 |
| KC @ BUF | BUF 51.9% | BUF | 28-21 | ✅ CORRECT | 54.2 | 49 |
| LAC @ TEN | LAC 79.0% | LAC | 27-20 | ✅ CORRECT | 45.6 | 47 |
| MIN @ DET | DET 74.3% | MIN | 27-24 | ❌ UPSET | 46.0 | 51 |
| NO @ LA | LA 84.7% | LA | 34-10 | ✅ CORRECT | 46.0 | 44 |
| SEA @ WAS | SEA 72.2% | SEA | 38-14 | ✅ CORRECT | 46.0 | 52 |
| SF @ NYG | NYG 52.8% | SF | 34-24 | ❌ UPSET | 42.7 | 58 |
| ARI @ DAL | DAL 65.8% | ARI | 27-17 | ❌ UPSET | 46.0 | 44 |
Written by cresencio
← Back to blog