The All-Star break is over. The NBA is back tonight and we've got 12 plays already posted on the site ready to go.
If you caught our last post, you know we spent the break in the lab. While the league was busy with dunk contests and celebrity games, we were elbow-deep in the model, testing adjustments, recalibrating inputs, and prepping for what should be a much more predictable second half of the season.
What's Different Now
The All-Star break is one of the best natural dividing lines in the NBA season. Before the break, you're dealing with a lot of noise. Teams experimenting with lineups, players ramping up from offseason injuries, and a trade deadline that just reshuffled a bunch of rosters two weeks ago. That's a tough environment for any model.
After the break, the picture gets clearer. Rotations solidify. Coaches tighten things up. The data entering the model from here on out is cleaner, and combined with the refinements we made during the break, we're feeling good about the stretch run.
The Tank Factor
One thing we're keeping a close eye on going forward: tanking. Nearly a third of the league is actively racing to the bottom right now, chasing lottery odds in a loaded 2026 draft class. When teams are tanking, the usual data points start to lie. Starters sit with mystery injuries. Fourth-quarter leads vanish for reasons that have nothing to do with basketball. The normal patterns the model relies on get distorted.
We've started building tanking indicators into our process, flagging games where one or both teams have clear incentives to lose. It doesn't mean we avoid those games entirely, but we're weighting them differently and staying cautious when the line smells funny.
Second Half Energy
The second half of the NBA season is a different animal. Better data, tighter rotations, clearer motivations, and a model that just got a full week of attention.
Let's get it.