The READ
NBA Recap | March 15, 2026
SGA scored 20 and the Thunder extended their historic streak — but the real story was Chet Holmgren and a bench that outscored Minnesota's entire roster in waves. Dallas came to Cleveland, led by 21 at one point, and somehow walked out of it with a road win. Brandon Ingram went for 34 and kept Toronto rolling past Detroit. Milwaukee had 23 turnovers yesterday and responded with 9 today. Jalen Brunson came off the deck to lead New York past Golden State. Quentin Grimes has turned into a reliable bucket over the last three games. And DeMar DeRozan put up 41 on Utah. Seven games on a Sunday. Let's run it.
SGA EXTENDS THE STREAK
Oklahoma City 116, Minnesota 103
SGA scored 20 — game 128 in the books, the record now his alone — but this one belonged to Chet Holmgren and a bench that was relentless from start to finish. Holmgren finished with 21 on 9-of-13 shooting (88.9% on twos), 9 rebounds, 3 steals, and 75.6% true shooting, going +23. OKC's bench scored 61 points — more than half the team's total — and the Thunder had 16 steals and 28 points off Minnesota's 25 turnovers. Their defense was a controlled, calculated operation.
SGA made it look easy despite an off shooting night (31.8% from the field) by accumulating 10 assists against just 1 turnover. Jared McCain came off the bench for 15 on 5-of-9 from three. Cason Wallace contributed 7 assists, 3 steals, and 2 blocks on the defensive end. Isaiah Hartenstein was a presence without scoring a point — 12 rebounds, 3 assists, 2 blocks. OKC converted 15 offensive rebounds into 20 second-chance points and led by as many as 18.
Minnesota was buried by its own mistakes. The Timberwolves committed 25 turnovers that Oklahoma City turned into 29 points. Julius Randle was the only bright spot, posting 32 on 11-of-18 shooting (60% from three), 7 rebounds, and 6 assists. Anthony Edwards went 6-of-17 from the field with 6 turnovers and 5 personal fouls. Rudy Gobert shot 25% from the field. Minnesota got outworked, outcoached, and outwilled.
OKC 116 · MIN 103
INGRAM KEEPS TORONTO COOKING
Toronto 119, Detroit 108
Brandon Ingram dropped 34 on 12-of-25 shooting — 4-of-9 from three, 6-of-8 from the line — and Toronto pulled away in a third quarter where they outscored Detroit 34-17. It's now back-to-back 34-point games for Ingram as a Raptor, and he's looking like the player everyone hoped for when the trade happened.
Scottie Barnes was the perfect complement: 14 points, 10 rebounds, 8 assists, 3 blocks, and only 1 turnover — the kind of complete two-way performance that makes the Raptors dangerous. Jakob Poeltl was a monster on the glass, finishing with 21 points on 9-of-12 shooting (75%), 18 rebounds — 9 offensive — and 13 second-chance points. RJ Barrett added 27 on 11-of-17 shooting (72% true shooting). Toronto had 20 offensive rebounds total and generated 30 second-chance points — the most they've had all season — which made up for a pedestrian 28.6% from three.
Cade Cunningham had a big individual night — 33 on 12-of-24 shooting with 9 assists — but couldn't overcome the third-quarter hole. Jalen Duren put up 20 and 11 on 72.7% shooting. Tobias Harris went 9-of-12 from the field for 21. The Pistons had the talent to compete but Toronto was simply better in the two quarters that mattered. They now hold a 4.0 game lead over the Celtics and losses like this could be the difference between the first and third seed in the East.
TOR 119 · DET 108
GIANNIS AND THE BUCKS BOUNCE BACK
Milwaukee 134, Indiana 123
One game after being gutted by Atlanta with 23 turnovers and poor defensive effort, the Bucks came out and torched Indiana's defense from behind the arc. Milwaukee shot 52.3% from three (23-of-44), led by Bobby Portis's 29 on 11-of-21 shooting — 6-of-11 from three — with 10 rebounds and 3 assists. Ryan Rollins supplied another strong night: 20 points on 8-of-12 shooting (3 threes), 7 assists, 3 steals. AJ Green went 4-of-7 from deep. The Bucks had 31 assists on 49 made buckets — as pretty an offensive performance as they've put together this season.
Giannis Antetokounmpo was everywhere: 31 points on 11-of-22 from two (50%), 14 rebounds, 8 assists, and 10 fast break points. He drew 10 fouls and was -17 from the line (9-of-13), which kept the margin closer than it should have been. Milwaukee had only 9 turnovers — a dramatic reversal from Saturday — and committed 13 steals of their own. Kyle Kuzma had 8 assists alongside 8 points.
Indiana shot 50% from the field and 50% from three (21-of-42) and still lost by 11. The Pacers' defense continues to be the issue — they have the offensive tools but are consistently giving up big numbers on that end. Jay Huff had a solid 16 off the bench, Jarace Walker added 14, and bench scoring reached 55 points total. Indiana has now lost four straight games coming into the final stretch.
MIL 134 · IND 123
FLAGG AND DALLAS STUN CLEVELAND
Dallas 130, Cleveland 120
Dallas went into Cleveland, built a 21-point lead, and held on in a game that swung dramatically in both directions. Cooper Flagg was the difference-maker: 27 on 10-of-17 shooting, 10 assists, 6 rebounds, 2 blocks, and 65.8% true shooting. He played like a veteran in a pressure game, getting to the free throw line 8 times, making all 6, and outscoring his plus/minus swings.
Naji Marshall was magnificent off the bench: 25 on 8-of-12 shooting (100% from the line), 7 assists, and 80.5% true shooting. P.J. Washington had 20 with 11 rebounds and 5 steals. Dallas had 35 assists on 46 made buckets and 13 steals — a performance that reflected genuine team cohesion. Their bench scored 38.
Cleveland fought back but couldn't complete the comeback. Donovan Mitchell led with 26 and 11 assists (only 1 turnover), and Max Strus went 6-of-7 from three for 24 — the best individual shooting performance on either team. James Harden had 13 with 7 assists but 6 turnovers, and that turnover margin proved decisive. CLE shot 51% from the field and still gave up 130 on the road — their defense has been inconsistent this week and it may cost them seeding down the stretch.
CLE 120 · DAL 130
PHILLY GRINDS OUT PORTLAND
Philadelphia 109, Portland 103
Philadelphia won ugly and they'll take it. The 76ers built a 14-point lead, watched Portland chip away, and survived a close fourth quarter behind their physicality and Quentin Grimes's volume scoring. Grimes led with 31 on 11-of-22 (8-of-8 from the line), 3 steals, 10 fast break points, and 60.7% true shooting. Justin Edwards contributed 21 on 9-of-14 shooting (3 threes, 60% from two) and is quietly becoming one of the more efficient young players on a depleted Sixers roster. VJ Edgecombe had 18 and 12 rebounds. PHI had 13 steals and converted 14 Portland turnovers into 24 points. In a game with a lot of offensive limitations, their defensive intensity was the difference.
Portland was done in by turnovers (19), poor conversion from three (32.1%), and a 66.7% free throw night on 21 attempts. Deni Avdija led with 25 on 9 drawn fouls but committed 7 turnovers. Jerami Grant hit 6 threes for 20. Donovan Clingan had 15 and 15 rebounds. Robert Williams III added 12 points and 12 rebounds with 3 blocks. Portland had the rebounding battle — 15 offensive boards and 27 second-chance points — but couldn't convert enough of them and kept turning the ball over against a team that thrives on live-ball turnovers.
PHI 109 · POR 103
BRUNSON BRINGS THE KNICKS BACK
New York 110, Golden State 107
Golden State led by 21 in the first quarter. Then Jalen Brunson happened. The Knicks outscored the Warriors 38-26 in the third quarter to erase the deficit and held on for a gritty win. Brunson finished with 30 on 9-of-20 shooting — 10-of-10 from the line — with 9 assists and just 3 turnovers. He was the steadiest presence on the floor when New York needed it most.
Josh Hart was the spirit of the comeback: 7 points on the stat sheet, but 12 rebounds, 5 assists, and +17 — the engine of the Knicks' defensive resurgence. Karl-Anthony Towns had 17 and 12 rebounds. Mitchell Robinson again made his presence felt on the glass. OG Anunoby drew 6 fouls for 14 points and went +0 on a night where every possession mattered. New York had 16 offensive rebounds and turned them into 18 second-chance points.
Golden State led by 21 and played well offensively in the first half — Quinten Post had 22 on 4-of-10 from three with 3 blocks, and Gui Santos supplied 20 with 8 assists. But the Warriors' 18 turnovers (to New York's 15) and the defensive falloff in the third quarter cost them. Without Curry, Golden State has been competitive but inconsistent at crunch time. This one got away in a 12-minute stretch they couldn't recover from.
NYK 110 · GSW 107
DEROZAN GOES OFF IN SACRAMENTO
Sacramento 116, Utah 111
DeMar DeRozan put up 41 points on 11-of-21 shooting — 18-of-21 from the free throw line — with 11 assists and 3 steals in a double-double performance that carried Sacramento to back-to-back wins. DeRozan drew fouls at will (11 drawn), used the mid-range game as a scalpel, and kept the offense flowing through a 36.8% shooting night from the rest of the team. This was a vintage DeRozan performance: methodical, efficient, and completely necessary.
Precious Achiuwa put up 20 and 11 on 10-of-15 shooting — his second strong consecutive night — and Killian Hayes added 16 on 4-of-6 from three with 8 assists. Sacramento outrebounded Utah 55-48 and held on through a third quarter where Utah threatened to take the lead. The Kings were +12 in the first half and needed every point.
Utah's Cody Williams had the best line of the night for either team: 34 on 12-of-20 shooting (42.9% from three), 7 assists, 7 rebounds, and 72.3% true shooting. He was the best individual scorer in the building and Utah simply didn't have enough around him. Isaiah Collier added 21 and Brice Sensabaugh contributed 22, but the Jazz's 15 turnovers that Sacramento turned into 15 points was the swing that made the difference at the end.
SAC 116 · UTA 111
⭐ STAR OF THE NIGHT
DeMar DeRozan | Sacramento Kings 41 PTS | 11-21 FG | 18-21 FT | 11 AST | 3 STL | 67.8% TS
DeRozan carried a Sacramento team that was shooting 36.8% collectively and made it look manageable. The 41 points came on DeRozan's terms — drawing contact, getting to the line, hunting specific matchups in the midrange — and his 11 assists kept his teammates engaged when their shots weren't falling. Two straight dominant nights for Sacramento's new anchor, and a reminder that DeRozan in rhythm is genuinely difficult to guard.
💀 DUD OF THE NIGHT
Minnesota Timberwolves (Collective) 103 PTS | 25 TURNOVERS | 29 OKC POINTS OFF TURNOVERS | ANTHONY EDWARDS: 6-17 FG, 6 TO
Oklahoma City had 16 steals against Minnesota. The Timberwolves turned it over 25 times. Edwards had 6 giveaways and 5 fouls and shot 35% from the field. Gobert went 1-of-4 from the field for 2 points. This is a team that's supposed to be competing for playoff positioning and they looked completely overmatched by a Thunder team that — even as they make history — is not at full strength. The turnover problem is systemic at this point, and it's going to be a serious issue come the postseason.
QUICK TAKES
SGA is now at 128 consecutive 20-point games. Every game the record extends, the number gets harder to comprehend.
Cooper Flagg going 10-of-17 with 10 assists and 2 blocks in Cleveland is the statement game of a rising star. Rookie of the Year conversation is happening in Dallas.
Brandon Ingram has 34 in back-to-back games as a Raptor. That's the player Toronto thought they were getting.
Milwaukee's response to the Atlanta loss was exactly what a playoff-caliber team looks like — 52.3% from three, 31 assists, Giannis being Giannis. The Bucks are still dangerous.
Jakob Poeltl had 18 rebounds with 9 offensive against Detroit. Toronto's second-chance numbers — 30 points — were the foundation of that win.
Jalen Brunson bringing the Knicks back from 21 down in the third quarter is the kind of clutch performance that builds playoff legends. New York is locked in.
DeMar DeRozan going 41 and 11 for Sacramento two nights running suggests the Kings are finding something real with him running the offense.