If you're a sports fan, you've heard "sportsball." It's the wink between people who actually follow sports, aimed at the friend who can't tell football from baseball and thinks they're all the same thing. They're throwing a ball around. They're hitting a ball with a stick. Whatever. Sportsball.
The joke is funny because the difference between sports isn't cosmetic. It's structural. A baseball game and a football game share almost nothing — different scoring distributions, different time structures, different roles, different decisions, different math.
So it's a little surprising how much sports betting modeling does exactly what the joke makes fun of.
Two ways most models miss the point
The first is the literal sportsball approach. Build a "universal" sports prediction model. Pour data in from every league, ask it to find patterns across all of them, deploy it as a one-size-fits-all engine. The promise is breadth: one model, every sport, every market.
The problem is that the structural differences between sports aren't features — they're the entire game. NFL point spreads cluster hard around 3 and 7 because of the scoring distribution. NBA spreads don't. MLB totals are driven by which pitchers are starting that day, a feature that has no analogue in basketball. NBA totals look roughly normal and continuous; MLB totals are discrete and Poisson-flavored. A "universal totals model" is averaging over those differences and calling the result a feature. It isn't. It's noise.
The second is the market microstructure school. This one deserves real respect. It comes out of a quant-trading tradition: treat sports betting like stock trading, find structural inefficiencies in how the market prices things rather than trying to predict outcomes yourself. Look for correlation mispricing in parlays. Look for systematic over-bias in totals. Look for home-field-advantage decay. Run rules-based strategies against those patterns, use closing line value as your validation, trade on liquid markets where you can't move the price.
You can find serious work in this tradition on r/algobetting and elsewhere. The people doing it well are sharp, disciplined, and right that there are real, durable structural inefficiencies in betting markets.
But here's the honest framing: this school exists, in large part, because direct outcome modeling was prohibitively difficult.If you're a smart individual without a quant team, microstructure is what's tractable. The line is a clean feature. Closing line value is a clean target. You can build a portfolio of rules-based strategies by yourself. That was the only door open.
That door isn't the only one anymore.
The real game is at the outcome level
The thing generic sportsball models miss — and the thing microstructure-only approaches don't try to do — is predict the underlying outcome better than the market does. Not find pricing quirks. Predict the actual game.
To do that well, you have to build specialized models for each (sport × outcome type) combination. An NBA totals model is doing fundamentally different work than an NBA moneyline model. It needs different features (pace, offensive rating, defensive rating, rest, lineup status), different target engineering, and a different sense of what "good" looks like. An MLB totals model needs the starting pitchers' usage and pitch mix as a first-class input — something no NBA model will ever need. An NFL spread model has to respect key-number clustering in a way that no other sport's spread model does.
There are at least nine of these problems just from the team-level markets in the three major US sports — moneyline, spread/run line, and totals across MLB, NFL, and NBA. Then come the player props. In MLB alone, we model nine more: batter hits, runs, RBIs, total bases, and the combined hits+runs+RBIs line, plus pitcher strikeouts, outs, earned runs, and hits allowed. NBA adds points, rebounds, assists, threes, first basket, and the PRA combo. NFL adds another dozen-plus across passing, rushing, receiving, and touchdown markets sliced by position. That's close to 30 distinct prop markets on top of the team-level ones — each its own prediction problem with its own feature set and its own distribution. These are not one problem with a switch.
What "prohibitively difficult" actually meant
Building real outcome-level models the right way isn't a side project. Here's roughly what it requires:
- Data at scale. Moddy runs on more than 250 million historical data points across MLB, NFL, and NBA. Box scores, play-by-play, lineup status, schedule context, market history. Per sport. Per outcome.
- Parallel training across algorithms. For each creator model, we spin up 8 to 12 trainings in parallel — gradient boosting variants, CatBoost, deeper-tree configurations. No one of these algorithms is best at everything. You don't know which is best for a given problem until you try.
- Strategy evaluation as part of training. This is where most ML projects stop short. They optimize prediction accuracy, pick the best model on a validation set, and call the job done. Then someone separately figures out how to bet with it. The better approach is to bring strategy in earlier: once the models are trained, we run 20 to 30 different backtest strategies against each one, and the winner is the model-strategy pair with the best track record. The actual job isn't "predict accurately" — it's "generate edge against the market," and those aren't the same thing.
- Edge detection against odds-implied probability. A model predicts a probability. The market price implies a probability. We surface picks where those diverge in the model's favor. That's the edge signal.
- Track record per model variant. Real, ongoing performance history per model, not just a backtest screenshot.
This is team work. It's the kind of thing a quant trading desk could build, and most of the people building serious betting models couldn't, because they didn't have the team. Microstructure was what a smart individual could do alone. Outcome-level was what a team could do together. There wasn't a third option for most of the people who wanted to do real modeling.
That's the constraint that just lifted.
The field optimized around an old constraint
None of this is meant to dismiss the alternatives. Generic sports models still ship, and people still buy them. Market microstructure strategies are real, durable, and worth respecting — any serious bettor with a good outcome model still wants microstructure thinking in their execution layer.
But the modeling field, especially the individual-modeler corner of it, optimized around an old constraint. Outcome-level modeling at the level we're describing was a team-only problem. It required infrastructure most people couldn't build alone. So smart people went where they could go, and they got good at it.
The constraint is gone. What used to require a quant team — specialized outcome models, evaluated jointly with strategies, tracked over real performance history — is now possible for individual modelers. Once that's true, the interesting work shifts. The question stops being "can I build a good model?" and starts becoming "how do you separate signal from noise across a population of good models?" That's a different problem, and a different post.
Sportsball is funny because it's a tell. So is modeling all sports like they're the same thing. There's a better way.
.png)









