Davis Wade Forecast

How the forecast works

The price forecast is a simple regression fitted to Mississippi State home games since 2023. It uses the cheapest resale ticket on ticketdata.com, the get-in price, compared with the rest of that season. Relative price alone performed better in our historical comparisons than adding opponent ratings. The same price formula is refit as data is updated; the schedule-only model remains the fallback when a price is unavailable.

What goes in

One price variable. The date the price was observed matters: today's price is not necessarily the price near kickoff.

Get-in price, relative to the season
The cheapest resale ticket on ticketdata.com, compared with that season's median price on a log scale. All listed home games contribute to the reference. A doubling relative to that reference has the same effect in any season.

How much each variable weighs

The price model starts from an average training game, 53,037 fans, and moves that number by each variable's weight times how far the game sits from average. The bars show the full swing each variable can produce: its weight times the gap between the lowest and highest value seen in training.

The weight applies to the natural log of price divided by the season reference. Doubling a game's price relative to that reference adds about 4,458 predicted attendees before the capacity cap. If every price rises by the same percentage, the reference rises too and the forecasts stay the same.

The schedule-only fallback

When a game has no listed get-in price, or the season has fewer than three priced games, the forecast uses a model with the opponent variables only. Its average game is 52,103 fans.

VariablePrice model weightSchedule-only weight
Average game53,03752,103
Get-in price, relative to the season 6,432 ± 738 not used
Opponent ranked in the AP Top 25 not used 8,048 ± 1,990
Opponent Elo rating not used -10.71 ± 5.37
Opponent SP+ rating not used 186 ± 85.12

How accurate it is

Each game's attendance was held out while fitting the other games (leave-one-out). These are retrospective comparisons using historical prices and season references, not a record of forecasts made before kickoff. RMSE gives extra weight to large misses; typical miss is mean absolute error. R² compares squared error with the variation around the sample mean.

ModelGamesRMSETypical missR²
Season mean (all games) 234,6983,6020.01
Schedule-only (all games) 233,2702,7240.52
Season mean (games with a price) 185,3694,571-0.19
Raw log-price only (games with a price) 183,6523,0630.45
Relative price only (games with a price) 182,2001,5670.80
Schedule-only (games with a price) 183,6983,2600.44
Price model (games with a price) 182,2001,5670.80

The track record shows every one of those games.

How well it transfers between seasons

The price formula stays fixed while its weights are fitted on other seasons. The forward test uses earlier seasons only. Both tests still use archived prices and full-season references, so they do not establish accuracy weeks before kickoff.

TestGamesRMSETypical miss
Each season held out182,3271,679
Earlier seasons only102,5351,760

Where the price model misses

SeasonGames scoredRMSEAverage over / underInside range
202381,938-1,1467 / 8
2024only 2 recorded prices24,458+4,3740 / 2
202571,479-5957 / 7
202611,425+1,4251 / 1

Positive values mean the forecast was too high. Sparse historical seasons remain in training and in these comparisons, even though their price references are less reliable. New forecasts require at least three listed prices.

How the variables were chosen

The production price model uses relative log-price alone. The comparisons below include raw price and the former combinations with opponent ratings, but they do not automatically change the production formula. The schedule-only fallback separately selects up to three schedule variables by leave-one-out error, preferring a smaller subset within 5% of the best.

CandidateLeave-one-out RMSE
opponent ranked in the ap top 25 + opponent elo rating + opponent sp+ rating3,270
opponent ranked in the ap top 253,529
opponent sp+ rating4,193
sec game4,213
power-conference opponent4,262
season-relative price2,200
get-in price3,652
opponent ranked in the ap top 25 + opponent elo rating + opponent sp+ rating + season-relative price2,637
opponent ranked in the ap top 25 + opponent elo rating + opponent sp+ rating + get-in price3,357

Where the data comes from

What to keep in mind

Questions people ask

Why does the ticket price matter more than who Mississippi State is playing?

Resale prices reflect demand for a game and can respond to the opponent, team record and kickoff time. In the historical sample, season-relative price alone predicted attendance better than adding opponent ratings. Prices do not measure every source of demand, and this relationship is not proof that raising prices increases attendance.

What does the 80% range mean?

It is a prediction interval. If the model's assumptions hold, the announced crowd lands inside that range four times out of five. It includes game-to-game variation and is wider for unusual price ratios. Small samples, price changes and future team performance make that coverage uncertain, especially weeks before kickoff.

Why is every forecast capped at 60,417?

That is the upper attendance figure used in the training data; official capacity is listed a little lower. A linear model can produce numbers above it, so the forecast and the range are clipped. The associated sellout percentage is a model estimate, not a calibrated measure of ticket inventory.

How often does the forecast change?

Every morning a job refreshes the schedule and ratings from CollegeFootballData, retrains the model and rebuilds this site. Get-in prices are pasted in by hand, because ticketdata.com blocks automated access; a forecast moves whenever its price is updated.

How good is it, honestly?

On the 18 games with both a price and an attendance figure, the price model's leave-one-out error is 2,200 seats (root mean square), against 5,369 for guessing the season average. That is a small sample; the weights are rough and will shift as games are added.