Methodology
How Grounds Works
Every number you see on Grounds is the output of a multi-factor model trained on hundreds of thousands of historical player-game records. Here's how we turn raw data into a projection you can act on.
From search to play in 5 steps.
STEP 1
Select a Player
Search any NBA, MLB, or NHL player from our full roster
STEP 2
Enter Tonight's Line
Input the prop line from PrizePicks or Underdog Fantasy
STEP 3
Model Runs
Nitro, Americano, or Cold Brew calculates projections using historical data and matchup factors
STEP 4
Confidence Tier
Strong, Solid, or Lean — based on historical edge at that line
STEP 5
Play or Pass
Green checkmark on plays with validated edge. No checkmark means no play.
Three models. One per sport.
Each sport has different data structures, pace dynamics, and lineup volatility. Grounds runs a dedicated model per sport rather than a one-size-fits-all approach.
Nitro
Pace-adjusted projection engine built on NBA player-game records. Accounts for possessions, defensive rating, home/away splits, and back-to-back fatigue.
Americano
Pitcher-matchup-aware model for MLB player props. Weighs platoon splits, ballpark factors, opposing starter quality, and rolling form.
Cold Brew
Ice time-based projection model for NHL props. Integrates line combinations, power play usage, opposing goalie save percentage, and shot quality.
1How Our Models Work
Pace-adjusted projections
Raw counting stats—points, rebounds, assists—are heavily influenced by how fast a game is played. A player on a team that averages 105 possessions per game naturally has more opportunities than one playing in a 95-possession system. Grounds normalises every historical game to a common pace baseline before computing averages, so the projection you see reflects true skill, not schedule luck.
We then re-scale back up using the projected pace for tonight's specific matchup—factoring in both teams' recent tempo, the referee crew's historical foul rate, and whether the game has high-total implications.
Bayesian shrinkage
Small sample sizes lie. If a player has gone Over on assists in his last three games, that might mean something—or it might be noise. Bayesian shrinkage blends each player's recent results with a prior built from their season-long baseline and league-wide positional norms.
The practical effect: early in the season, projections lean on league priors. By mid-season, recent performance carries more weight. The model continuously re-calibrates as new games come in, so projections always reflect the most current signal without over-reacting to a single outlier game.
Matchup factors
The projection isn't just about the player—it's about the opponent. We incorporate the defending team's position-specific defensive rating, their pace of play, home/away splits, back-to-back fatigue, and the game's implied total from the market line. Each factor is weighted by how predictive it has been historically for that stat category.
2How We Project Minutes
Minutes on the floor are the foundation of opportunity. A player can't accumulate counting stats in a game they barely play. Before projecting any rate stat, Nitro first builds a minutes estimate for that specific game.
Rolling weighted average
We use a rolling window of recent games weighted toward the present—more recent games count more than games from three weeks ago. This captures rotation changes, injury status, and coaching decisions in real time rather than averaging across a stale season-long baseline.
Home / Away splits
Minutes aren't neutral across venue. Some players consistently log more time at home due to crowd energy, comfort, or lineup decisions. Nitro splits each player's minutes history by venue and blends the home and away averages based on tonight's location.
Back-to-back flag
When a team is on the second night of a back-to-back, rotation players and high-minute veterans often see reduced usage. Nitro applies a minutes discount when the back-to-back flag is set, calibrated against how much that specific team's coach historically manages load in these situations.
Pace tier impact
High-pace games create more possessions but also tend to run shorter shot clocks, which compresses real clock time. Nitro adjusts projected minutes slightly downward in very high-pace matchups to reflect this dynamic, ensuring the minutes estimate remains physically consistent with game context.
3Component-Based Projection
Nitro doesn't predict a raw stat total in one step. Every projection is built from two independent components: rate and opportunity. Separating them makes the model more robust—a shooting slump affects rate; a coaching change affects opportunity. Conflating the two creates noise.
Formula
Projection = Rate per Minute
× Projected Minutes
× Adjustment Factor Chain
Rate component
Rate is how much of a stat a player generates per minute of floor time, pace-normalised. For points, this is points per minute adjusted for shot attempts and efficiency. Rate reflects skill and current form—shooting streaks, defensive attention, role changes.
Opportunity component
Opportunity is the projected minutes from Section 2—independent of how the player has been shooting. A player in a minutes slump due to foul trouble has reduced opportunity, even if their underlying rate is strong. Keeping these separate avoids the common mistake of penalising a player's future projection for past bad luck.
Why this matters
A player coming off a cold shooting night hasn't changed his true rate much—one bad game is noise. But if his minutes have dropped because of a lineup change, that's signal. The component framework lets Nitro respond to each type of change independently rather than averaging them together into a single misleading number.
4The Adjustment Factor Chain
After the base rate × minutes product is computed, five adjustment factors are applied in sequence. Each factor modifies the projection multiplicatively—a 1.05 pace factor means the model expects 5% more counting stats in this matchup than average.
Pace factor
Derived from both teams' recent possessions-per-game, weighted toward the last 10 games. A high-pace matchup increases the factor above 1.0; a slow, defensive game drops it below 1.0. This is the most impactful single adjustment for counting stat props.
Opponent defensive rating
Position-specific defensive rating of the opposing team against that player's role. A center facing a top-five paint defense gets a negative adjustment; a guard facing a leaky perimeter team gets a positive one. Ratings are recency-weighted.
Home / Away split
Each player has a personal home/away multiplier derived from their historical splits. Some players perform significantly better at home; others are road warriors. This factor captures that individual tendency rather than applying a league-average home-court adjustment.
Recent form — last 5 games
A 95% recency decay applied over the last 5 games. The most recent game counts most; the game 5 nights ago counts least. This captures hot and cold streaks without over-weighting a single outlier. If a player is on a genuine run, this factor will push the projection above the season baseline.
Game script — implied total and spread
High over/unders signal fast, high-scoring games—good for counting stats. Large spreads signal a potential blowout—bad for star players who get rested. Nitro uses the market's implied total and spread as a real-time signal of game environment, independent of what the rest of the model calculates.
5How Confidence Tiers Work
The star rating is not based on projection size. A large projected total doesn't automatically earn three stars. Stars measure edge—the gap between the model's projection and the sportsbook line, expressed as a deviation from the historical base rate for that stat and player type.
The model builds a probability distribution over possible outcomes for each stat. The line you enter sits somewhere on that distribution. Edge is the probability mass on the correct side of that line, minus the implied probability from the -110 juice (~52.4% break-even).
A projection of 28.4 against a 26.5 line is only worth acting on if the model's uncertainty is low enough that 28.4 isn't just the optimistic end of a wide range. Confidence tiers account for this—they reflect both the size of the gap and the tightness of the distribution.
Strong — 15%+ edge
The model sees a 15 percentage point or greater edge over the implied break-even. Historically, plays at this tier have hit at a rate well above 52.4%. These are the plays most worth your attention—the model is highly confident the line is mispriced.
Solid — 8–15% edge
A meaningful edge with a good historical hit rate. Not as sharp as a three-star play, but still a value opportunity. Good for building parlays or as standalone plays when the line is favorable.
Lean — 4–8% edge
The model has a directional opinion but the edge over the line is small. Treat these as informational—they tell you the model's lean, but they don't represent strong betting value on their own.
Pass — under 4% edge
The projection is too close to the line to identify a clear edge. The model is not recommending action. This is the most common outcome—and that's a feature, not a bug.
6What We Don't Do
A lot of sports analytics products optimize for appearing confident. We optimize for being honest about what the model actually knows. That means being explicit about what Grounds is not.
We don't pick sides
Grounds tells you what the model projects and whether there's edge against a specific line. It does not tell you to bet. Whether you act on a projection is your decision—one that should factor in your bankroll, your risk tolerance, and your own judgment.
We don't guarantee wins
No projection model has a 100% hit rate, and anyone claiming otherwise is selling something. Even a 60% win rate at -110 is exceptional. You will lose plays. The goal is sustained edge over a large sample, not a perfect night.
We don't cherry-pick results
Every play the model flags gets tracked—including the losses. We don't retroactively remove bad nights from the track record or report only the days the model ran hot. The bet log shows the full picture.
Same model, same parameters, every night
We don't adjust the model after a bad day to make the next set of projections look better on paper. The parameters are set and updated only on the weekly re-training schedule. What you see tonight is the same model that ran last Tuesday.
Track record posted publicly, including losses
The Bet Log page shows daily results across all sports. The 3/26 MLB day (7-12) is in there alongside the good ones. If you're considering paying for Grounds, you should be able to audit the full record before spending a dollar.
7What the Stars Mean
The star rating is a measure of edge—how much the model's projection diverges from the market line, adjusted for historical hit rate at similar edge levels. A projection alone isn't enough; what matters is whether the projection differs meaningfully from what the sportsbook is offering.
Strong / Elite
The model sees a large gap between the projection and the line, and historical plays at this edge level have hit at a rate well above the implied break-even for standard -110 juice (~52.4%). These are the plays most worth your attention.
Solid
A meaningful edge with a good historical hit rate—not as sharp as a three-star play, but still a value opportunity. Good for building parlays or as standalone plays when the line is favorable.
Marginal / Lean
The model has a directional opinion but the edge over the line is small. Treat these as informational—they tell you the model's lean, but they don't represent strong betting value on their own.
Pass
The projection is too close to the line to identify a clear edge. The model is not recommending action. This is the most common outcome—and that's a feature, not a bug.
8How to Use Grounds
Search for a player
Type any player name in the search bar. We support NBA, MLB, and NHL. Select the player from the dropdown—their roster info loads automatically.
Enter tonight's matchup
Select the opponent from the dropdown, choose Home or Away, and enter the game's Over/Under total and spread. For NHL add the opposing goalie; for MLB add the starting pitcher. These inputs directly affect the projection.
Read the projection
Enter the betting lines you're seeing at your sportsbook, then hit Get Projections. The table shows the model's projection, Over/Under probability, direction, and confidence tier. Rows with a green left border are plays the model recommends. Focus on ★★★ and ★★ plays.
Ready to try it?
Search any player and get your first projection in under a minute.