October 17, 2026

Every basketball program tracks something. Wellness surveys. GPS numbers. Jump counts. Force plate readings. The data exists.
But here is the question most programs never sit down and answer before the season starts: what are you actually doing with it?
Not what software you own. Not what wearable your athletes put on. What decisions change because of the numbers you collect? And when a number spikes or drops, what happens next?
If the honest answer is "it depends on who's looking at it that day," you are not alone. Most basketball programs are in that spot. They have data. They do not have a system.
This post is not a pitch. It is a set of questions worth answering before the schedule gets dense, because the programs that answer them in October are the ones still standing in March.
Start here, because this is where the gap usually lives.
Most basketball performance staffs are pulling from at least three or four sources on any given day: a wearable (Catapult, Kinexon, WHOOP), a force plate (Hawkin, Vald, ForceDecks), a wellness questionnaire, maybe a jump mat or NordBord, and then whatever the athletic trainers are logging on their side.
Now ask yourself: where does all of that go?
If the answer is a spreadsheet that someone on your staff manually updates, you already know the problem. It takes time. It introduces errors. And by the time the numbers are ready to look at, the window to act on them has already closed. Practice is over. The decision was made without the data.
James Chassin, Assistant Strength and Conditioning Coach at San Diego State, described it simply: the platform is essentially a sports scientist at the tip of his fingers. At a program without a dedicated sports science staff member, that distinction is not a luxury. It is the difference between using data and just collecting it.
If the answer is a dashboard inside one of your vendors, you have a different version of the same problem. That dashboard shows you what that vendor's device captures, but it cannot show you the full picture because it does not talk to the other systems in your building.
The question is not whether your program collects enough data. Almost every D1 basketball program does. The question is whether the data arrives fast enough, in one place, for the person who needs it to actually use it before the next session starts.
Hong Tran, Assistant Strength and Conditioning Coach at Auburn, put it bluntly: you have to be able to get that report across the table, because if not, why do we do this? She runs every session she monitors, from every source, through one platform. Not because it is the ideal setup, but because without it, the information never makes it to the coaches who need it to make decisions.
If the data is not arriving fast enough, in one place, for the right person to act on it before the next session, you do not have a data problem. You have a workflow problem.
Z-scores are one of the most commonly referenced tools in sports performance, and also one of the most commonly misunderstood.
A z-score tells you how far an individual data point sits from the mean of a dataset, measured in standard deviations. If an athlete's acute workload z-score is +1.5, that means their recent load is 1.5 standard deviations above whatever baseline you are comparing it to.
Simple enough. But here is where basketball programs diverge, and where the conversation gets useful.
Which mean are you comparing against?
Some programs calculate z-scores against the team mean. That means you are comparing every athlete to the group average. On paper it makes sense. In practice it buries the athletes who matter most.
Consider a 12-player roster. Your team z-score average might sit at +0.1, dead centre, nothing to flag. But inside that number, one player is running +2.3 standard deviations above her own 28-day baseline. Another is at -2.1 below his. Both of them are two full standard deviations off their individual normal, in opposite directions, and the team number told you everything was fine.
The programs getting this right are calculating z-scores against the individual athlete's own rolling baseline, not the team. That way, a flag means something: it means this athlete is deviating from what is normal for them, regardless of what the rest of the roster looks like.
Kyle Jean, Assistant Strength and Conditioning Coach at Texas Tech, described exactly this approach with her force plate data: she looks at each athlete's own z-score so she can see what the last jump looked like compared to their average. If an athlete is showing percentages above or below where they should be, she can interpret that immediately. Either something is going on, or that athlete was not fully motivated that day, or they are coming back from injury. The point is that seeing the individual z-score tells her where that athlete is right now compared to their own normal baseline, not the team's.
What is your threshold?
The other question most programs have not formalized: at what z-score do you actually act? Is +1.5 a flag? Is +2.0? Does it depend on the athlete, the time of year, the schedule density?
If the answer is different depending on who is reading the report, you do not have a threshold. You have a guess. And guesses are how you end up pulling a starter who was fine, or missing the reserve player who was trending toward a breakdown for ten days.
The point is not that z-scores are bad. They are one of the most useful tools available. The point is that the value of a z-score depends entirely on what you are comparing against and what you do when the number crosses a line. If your program has not formalized both of those answers, the z-score is just a number on a screen.
Rolling averages are the backbone of most load monitoring approaches in basketball, and for good reason. A 7-day or 28-day rolling average gives you a stable reference point that absorbs the natural day-to-day noise of training. Without it, every session looks like a crisis or a celebration depending on the day.
But rolling averages come with a trade-off that most programs do not talk about openly: they smooth out the signal along with the noise.
A 28-day rolling average is excellent at telling you what normal looks like for an athlete over the past month. It is terrible at catching what happened yesterday. A player who had a massive spike two days ago might not show up as flagged for another week, because the rolling window absorbs the spike into the broader trend before it registers as an anomaly.
In a sport like basketball, where the roster is small and every player's availability directly impacts the rotation, a week-long delay in catching a load spike is a week you cannot afford.
The question for your program is not whether you use rolling averages. You probably should. The question is what sits on top of them.
Do you pair a longer rolling window (21 or 28 days) with a shorter acute window (3 to 7 days) so you can see both the baseline and the deviation from it?
Do you have a way to compare today's acute load against the chronic baseline in real time, before the next practice, not after the week is over?
Do you adjust the window length by position? A point guard logging 34 minutes a night and a center playing 18 minutes in a platoon are not operating on the same load curve, and a single rolling window treats them as if they are.
The programs that stay ahead of the injury curve in basketball are not the ones with the most data. They are the ones with the tightest feedback loop between what happened today and what the baseline says should have happened. Rolling averages build the baseline. Something else has to catch the deviation.
This is where the rubber meets the road, and where the gap between having data and using data becomes impossible to ignore.
Flagging is the action layer. It is the moment where a number turns into a decision: this athlete needs a conversation, a modified session, a day off, or just closer monitoring. Without a clear flagging system, all the z-scores and rolling averages in the world are just academic exercises.
So how does your program do it right now?
If the answer is that someone on staff looks at the numbers each morning and makes a judgment call, that is better than nothing. But it is also entirely dependent on that person being available, being consistent, and not having a blind spot for the athlete they trust the most or the one they have been worried about for other reasons.
If the answer is a color-coded spreadsheet with conditional formatting, you have taken a step toward systematizing it. But conditional formatting does not know context. It does not know that your starting point guard's numbers always run high because that is just who she is. It flags her every single day, and eventually everyone ignores the flag.
This is the false alarm problem, and it is one of the fastest ways to lose a coaching staff's trust in data. A flag that fires too often becomes background noise. A flag that fires on a team average instead of an individual baseline is worse, because it catches the wrong people and misses the right ones.
James Chassin at San Diego State walks through a deliberate sequence every day. He starts with the leaderboard, sorting by who landed in the top three across his key metrics. Then he checks whether that exposure created a spike in workload or stayed within the athlete's optimal range. If someone spiked in both exposure and workload, that is when he digs deeper, cross-referencing neuromuscular data like modified reactive strength index to see if the athlete is trending down. He looks for deviations greater than eight percent. And even then, he does not call the coach yet. He waits for the next day's wellness questionnaire, the lagging indicator, to complete the picture before deciding whether a conversation needs to happen.
That is a system. It is repeatable, it is specific, and it separates a real flag from a false alarm. The programs that have solved this share a few things in common:
That last point is the one that separates real flagging systems from spreadsheet formatting. It is the difference between a tool that creates work and a tool that saves it.
Basketball is not football. You do not have 85 scholarship athletes and a deep two-deep at every position. A basketball roster is 13 to 15 players, and on most nights, 7 or 8 of them are carrying the game. Lose one rotation player for two weeks in November, and the ripple effect changes your entire nonconference schedule.
That is what makes this conversation different for basketball than for any other sport. The margin is thinner. A hamstring that could have been managed becomes a three-week absence. A load spike that nobody caught because the spreadsheet was not updated until Friday becomes a soft tissue injury that shows up the following Tuesday.
Kyle Jean, Associate Strength and Conditioning Coach at Texas Tech, said it directly: "Did we win most of the time? Yeah, we had a successful year, but they didn't feel good while doing it."
What her staff discovered through tracking load data was specific and actionable: their game day minus two could run a little higher and the athletes were fine, but if game day minus one was too high, game data was sporadic and jump numbers dropped. The wins were there, but the process was not sustainable.
Hong Tran at Auburn takes a similar approach from a different angle. She tracks every game's load, effort, and jump data to build a game baseline. Then every practice reports as a percentage of that baseline. As she put it to her coaching staff: today your team practice was 75 percent of what a game baseline is. That kind of simplicity, a single number that contextualizes the day, is what makes data land with a head coach.
That is the version of the problem that does not show up in a win-loss record. The team is winning, so nobody asks whether the process is sustainable. Nobody asks until February, when the legs are gone and the roster is short and the schedule is unforgiving.
James Chassin framed the goal clearly: player availability is the end goal. For us to win, we have to have talent that is available to play. But he also named what has to be true for the data to matter: the entire staff has to own availability together, egolessly. Sports medicine, performance staff, and coaching staff cannot work in isolation. The athletes have to trust the system enough to communicate honestly. Without that culture in place, no amount of flagging changes anything.
The programs that are getting ahead of this are not doing anything revolutionary. They are answering the questions in this post before the season starts. They are deciding in October what they will compare against, what window they will use, what threshold triggers a conversation, and how that information gets to the right person in time to matter.
March is decided in October. Not because October games count more. Because October is when you build the system that keeps your athletes available for the games that do.
Before the first exhibition game, sit down with your staff and answer these:
If you can answer all five clearly, you are ahead of most programs in the country. If you cannot, October is the time to figure it out.
Whistle connects your existing data sources into one place, calculates individual baselines automatically, and flags the athletes who need attention before the next session starts. If you want to see what that looks like for a basketball program, book a demo and we will walk through it with your data, not a generic deck.