1/8 — What is 3PointStats? 🏀🌍
We’ve had a few questions about how our charts work, so here’s a simple explanation of what we do at 3PS and how to read our statistics.
We collect and analyse official basketball data from 100+ leagues worldwide, turning it into visual tools for understanding players, teams, transfers and games.
Damian Lillard’s return to Portland could hardly have gone better.
25 points, 6 assists and 6 threes as the Blazers absolutely dismantled Phoenix 124–83.
The 3PS momentum chart is ridiculous: Portland never trailed, there were 0 lead changes and 0 ties, they ripped off a 21–0 run, and the lead reached 52 points.
And Dame looked very much like Dame. His last full-season profile still had him 94th percentile in scoring, 97th in 3PM, 98th in FT rate, 94th in assists and 99th in PIR among guards.
The career arc makes the return even better: 14 NBA seasons, a peak of 32.1 PPG, and now back in Portland opening the year with 25 while helping turn the game into a complete blowout.
Different chapter. Same building. Same #0.
@trailblazers@NBA #RipCity #DamianLillard #NBA #3PS
Darius Garland wasted absolutely no time making his mark in LA.
30 points, 4 assists and 3 threes as the Clippers opened the season with a 121–96 win over Sacramento.
And the 3PS momentum chart shows just how controlled this was: 0 lead changes, only 1 tie, a 10–0 Clippers run, and a lead that eventually reached 28 points.
Garland’s profile already hinted at exactly what he could bring to this offense — 90th percentile in scoring, 92nd in 3PM, 94th in assists and 91st in AST% among guards last season.
He gave LA shot creation, pull-up shooting and another real organizer in the backcourt, and once the Clippers created separation, Sacramento never got close to flipping the game.
30 in the debut. 25-point win.
Pretty strong first impression.
@LAClippers@NBA #Clippers #NBA #3PS
The Lakers had to work for this one early. Then they completely blew it open.
The 3PS momentum chart shows 10 lead changes and 10 ties before Los Angeles finally took control, ripped off a 9–0 run and pushed the advantage all the way to 35 points.
And there were performances everywhere.
Walker Kessler: 26 PTS, 9 REB, 12/12 FG in his Lakers debut.
Luka Dončić: 28 PTS, 8 REB, 7 AST, 3 STL, 5 threes.
Austin Reaves: 23 PTS, 6 AST, 2 STL.
Luka’s profile is still ridiculous: 99th percentile in points, 3PM, usage, assists, defensive rebounding and PIR among guards last season, with 91st-percentile true shooting.
But Kessler going a perfect 12-for-12 in his first game in purple and gold might be the story of the night.
A competitive opener turned into a statement win very quickly.
@Lakers@NBA #LakeShow #Lakers #NBA #3PS
Year 20 and Kevin Durant is still doing Kevin Durant things.
30 points, 6 rebounds, 3 assists as Houston beats Dallas 128–110 — but the bigger story is how quickly the Rockets took complete control of this game.
The 3PS momentum chart shows 7 lead changes and 5 ties early before Houston ripped off a 14–0 run, blew the lead open to 37 points, and never gave Dallas a real way back.
KD’s profile still looks absurd for this stage of his career: 98th percentile in scoring, 89th in true shooting, 91st in 3PM and 97th in PIR among forwards last season. His shot distribution is still basically impossible to scheme for too — volume at the rim, midrange, and beyond the arc without being dependent on any one zone.
And Houston had help everywhere: Jabari Smith Jr. also scored 30, Sengun went 23/10/5, and Amen Thompson added 16/10/4.
KD starts Year 20 with 30. Houston starts 1–0.
Still elite. Still ridiculously hard to guard.
@HoustonRockets@NBA #Rockets #KevinDurant #NBA #3PS
Tyrese Haliburton picked up almost exactly where he left off.
After missing all of last season and spending 486 days away from NBA basketball, he came back with 23 points and 12 assists in Indiana’s 123–120 win over New Orleans.
And this was not a quiet game to return to.
The 3PS momentum chart had 13 lead changes and 10 ties, Indiana up 10, New Orleans answering with a 12–0 run, and the game swinging back and forth deep into the fourth.
That makes Haliburton’s control even more impressive. His last full-season profile had him 99th percentile in assists and AST/TO, 98th in AST% and 98th in PIR among guards.
The career arc had paused for an entire year.
First game back, and he immediately drops 23 and 12 in a three-point win.
Indiana got its point guard back.
@Pacers@NBA #Pacers #NBA #3PS
Anthony Edwards opened the season like he had something to prove.
45 points. 10 rebounds. 9 threes.
And Minnesota walked out of Miami with a 131–106 win.
The 3PS momentum chart shows how competitive this was early — 7 lead changes and 7 ties — before Minnesota completely broke the game open. The Wolves eventually pushed the lead to 30, and once they took control in the second half, Miami never found a way back.
The shooting gap from deep was massive too: Minnesota hit 42% from three compared with Miami’s 24%, finishing with a 58% eFG.
And Ant’s profile already told us this kind of explosion was always sitting there: 99th percentile in points, 98th in 3PM, 96th in usage and 96th in PIR among guards last season.
Now he starts the new year with the first 45+ PTS, 10+ REB, 5+ 3PM season opener in NBA history — and he made nine threes, not five.
That’s not easing into the season.
That’s kicking the door down.
@Timberwolves@NBA #Wolves #AnthonyEdwards #NBA #3PS
Kawhi Leonard’s return to Toronto came with a reminder that he can still completely tilt a game without needing to dominate the ball.
23 points, 6 rebounds and 4 steals as the Raptors destroyed Chicago 135–92.
And this was much bigger than one individual performance. Scottie Barnes added 23/6/5, Immanuel Quickley went for 23/4/7 with 2 steals, and Toronto never gave Chicago a way into the game.
The 3PS momentum chart is ridiculous: 0 lead changes, 0 ties, an 11–0 run and a lead that reached 48 points.
The shot chart tells the same story. Toronto finished at 45% FG and 50% eFG, while Chicago managed just 32% from the field, 11% from three and 34% eFG.
Kawhi back in Toronto. Three Raptors with 23. A 43-point win.
That’s a pretty serious opening statement.
@Raptors@NBA #WeTheNorth #Raptors #3PS
Ty Jerome just detonated in Memphis.
45 points, 7 rebounds, 6 assists and 5 threes — a new Grizzlies season-opening scoring record and a career high.
And the 3PS momentum chart shows how quickly this game flipped. Utah had the early edge, but once Memphis took control in the second quarter, the game completely changed direction.
The Grizzlies put together a 13–0 run, pushed the lead all the way to 27, and never gave Utah a real path back into it.
Four lead changes. Five ties. Then Memphis slammed the door.
123–103. Ty Jerome with 45.
That is one hell of a way to start a season.
@memgrizz@NBA #Grizzlies #NBA #3PS
Tyrese Haliburton came back and immediately looked like Tyrese Haliburton.
23 points. 13 assists. Pacers win 123–120.
And the game itself was chaos: 13 lead changes, 10 ties, Indiana leading by 10, New Orleans answering with a 12–0 run, and the momentum swinging back and forth almost all night.
That makes the performance even more impressive. Haliburton had missed all of last season and hadn’t played an NBA game in 486 days, yet he was immediately back running the offense in a game that never settled down.
His last full-season profile had him 99th percentile in assists and AST/TO and 98th in AST% among guards.
Then on his first night back: 23 and 13.
Indiana got its engine back.
@Pacers@NBA #Pacers #NBA #3PS @hali
Tyrese Haliburton missed an entire season and then walked straight back into one of the messiest games of the night.
23 points. 13 assists. Pacers win 123–120.
The momentum chart shows how much this game kept swinging: 13 lead changes, 10 ties, Indiana up 10 at one point, New Orleans answering with a 12–0 run, and neither team really able to separate.
That makes Haliburton’s return even more impressive. After 486 days away, he wasn’t eased back into a low-pressure game. He had to organize the offense, create shots and help Indiana close a game that kept changing direction.
His last full-season profile already had him in the 99th percentile in assists and AST/TO and 98th in AST% among guards.
First game back: 23 and 13.
That’s one hell of a way to remind everyone what Indiana has been missing.
@Pacers@NBA #Pacers #NBA #3PS
486 days away. An entire season missed. Then Tyrese Haliburton comes back with 23 points and 13 assists in a win.
And this wasn’t an easy game to walk back into.
The 3PS momentum chart shows how chaotic Indiana’s 123–120 win over New Orleans really was: 13 lead changes, 10 ties, Indiana up as many as 10, and the Pelicans answering with a 12–0 run. New Orleans controlled long stretches of the second half before Indiana finally dragged the game back across the baseline in the fourth.
And in the middle of all of it was Haliburton, immediately running an NBA offense again after missing all of last season.
His last full-season profile had him in the 99th percentile in assists and AST/TO and 98th in AST% among guards. On his first night back, he goes straight to 23 and 13.
After 486 days, there was no gentle introduction.
Hali came back and helped Indiana win a fight.
@Pacers@NBA #Pacers #NBA #3PS
486 days away. An entire season gone. Then Tyrese Haliburton comes back and immediately drops 23 points and 12 assists in a Pacers win.
That’s what makes this one hit differently.
Before the injury, Haliburton’s game was built around elite creation — 99th percentile in assists and AST/TO, 98th in AST%, 90th in 3PM and 98th in PIR among guards in his last full season.
After missing all of last year, nobody knew exactly how quickly that version of him would come back.
One game doesn’t answer everything, but 23 and 12 in your first NBA game in 486 days is about as strong a return as you could ask for.
And seeing how much it meant to him afterward says the rest.
Good to have Hali back.
@Pacers@NBA #Pacers #NBA #3PS
Toronto didn’t need one guy to take over tonight. They had four.
Quickley: 23
Scottie: 23
Kawhi: 23
RJ: 20
And the 3PS momentum chart shows just how complete the performance was: Toronto never trailed, there were 0 lead changes and 0 ties, the Raptors put together an 11–0 run, and the lead reached 48 points.
This wasn’t one explosive quarter either. Toronto kept building the gap, possession by possession, while the scoring stayed spread across the lineup.
Quickley controlled the pace, Scottie kept pressure on the defense, Kawhi gave them two-way impact, and RJ kept attacking downhill.
135–92. Four starters with 20+. A 43-point win.
That’s not just a home-opener win. That’s a statement.
@Raptors@NBA #WeTheNorth #Raptors #3PS
Allen Graves absolutely earned that game ball.
Toronto’s 135–92 win was a complete beatdown — 0 lead changes, 0 ties, an 11–0 run and a lead that reached 48 points — and Graves was right in the middle of the defensive tone that made the game so one-sided.
In just 19 minutes, he gave Toronto 5 rebounds, 3 blocks, 1 steal and 0 turnovers. Active hands, rim protection, extra possessions, clean decisions — exactly the kind of rookie performance that jumps off the tape even before you look at the box score.
And the college profile says this isn’t random. Graves came in 99th percentile in steals, 82nd in defensive rebounding, 79th on the offensive glass and 71st in blocks among NCAA forwards.
Toronto already has plenty of scoring. A rookie who can defend, rebound, create turnovers and play mistake-free basketball has a real path to meaningful minutes.
First home opener. First statement game. Game ball in his hands.
@TSN_Sports@ESPNNBA@Raptors@allengraves_5@NBA #WeTheNorth #3PS
Allen Graves got the home-opener game ball, and the box score explains why Toronto loved his minutes even without a big scoring night.
5 points, 5 rebounds, 3 blocks and a steal in 19 minutes, with zero turnovers.
That fits the profile he brought out of college almost perfectly. Graves ranked in the 99th percentile in steals, 82nd in defensive rebounding, 79th on the offensive glass and 71st in blocks among NCAA forwards last season.
The offense will come, but for a rookie trying to earn NBA minutes, defending, rebounding and not wasting possessions is a pretty good place to start.
Toronto won by 43. Graves gets the game ball.
@Raptors@allengraves_5@NBA #WeTheNorth #3PS @TSN_Sports
Toronto’s home opener turned into a showcase of just how many different ways this team can hurt you.
135–92 over Chicago, with the lead reaching 48 and never changing hands once.
The balance was ridiculous: Quickley, Scottie Barnes and Kawhi Leonard all scored 23, while RJ Barrett added 20. That’s four starters with 20+ without anyone needing to dominate the ball.
Toronto also got contributions everywhere else — Ja’Kobe Walter had 10, Trayce Jackson-Davis 9, Jamison Battle 8 — while Chicago finished at just 32% from the field and 11% from three.
The 3PS game flow tells the same story as the box score: Toronto grabbed control early and just kept piling on.
A 43-point home-opener win, with the scoring spread across the lineup.
That’s about as complete as it gets.
@Raptors@chicagobulls@NBA #WeTheNorth #Raptors #3PS
Toronto’s home opener was over long before the final buzzer.
135–92. A 43-point win over Chicago.
The Raptors never trailed, there were 0 lead changes and 0 ties, and the advantage grew as large as 48 points. The game flow is basically one long climb in Toronto’s direction.
And this wasn’t one player carrying the offense. Immanuel Quickley, Scottie Barnes and Kawhi Leonard all finished with 23 points, while RJ Barrett added 20. Four starters at 20+ in a blowout says a lot about how balanced Toronto looked.
Chicago shot just 32% from the field and 11% from three, while Toronto kept finding enough offense to stretch the gap quarter after quarter.
No comeback scare. No late drama.
Just a complete demolition at home.
@Raptors@chicagobulls@NBA #WeTheNorth #Raptors #3PS
Kevin Durant just keeps making elite scoring look routine.
30 points on 10/16 shooting in 37 minutes tonight, and somehow that barely stands out on a career arc like this.
Durant has now spent nearly two decades living around the mid-to-high 20s as a scorer. His 2025–26 profile still had him 98th percentile among forwards in points, 89th in TS%, 91st in 3PM and 97th in PIR.
And that’s the remarkable part: the efficiency hasn’t disappeared with the volume.
He doesn’t need 25 shots to get 30 anymore. He can get there through shot-making, spacing, free throws and simply taking what the defense gives him.
At this point the question isn’t whether KD can still score.
It’s how long he can keep making this look this easy.
@HoustonRockets@NBA #KevinDurant #Rockets #3PS
Toronto made a statement in the home opener.
The Raptors never trailed, there were 0 lead changes and 0 ties, and the margin eventually ballooned to 48 points. What started as control in the first quarter turned into complete separation after halftime.
The shot chart shows how ugly it got for Chicago: just 32% from the field, 11% from three and a 34% eFG, while Toronto repeatedly got cleaner looks around the rim and punished the Bulls whenever the defense collapsed.
No late comeback, no dramatic swing, no close finish.
Just four quarters of Toronto steadily putting the game away.
@Raptors@chicagobulls@NBA #WeTheNorth #3PS
Toronto didn’t just win the home opener — they controlled it from start to finish.
Raptors 135, Bulls 92.
The 3PS game flow tells the whole story: 0 lead changes, 0 ties, an 11–0 Toronto run and a lead that reached 48 points. Chicago never had a stretch where it could really change the direction of the game.
The shooting gap was brutal too:
Toronto: 45% FG, 32% from three, 50% eFG
Chicago: 32% FG, 11% from three, 34% eFG
What stands out most is how steadily Toronto kept building the margin. There wasn’t one crazy burst that decided it — the advantage just kept growing quarter after quarter.
A 43-point win to open the home schedule. That’s about as convincing as it gets.
@Raptors@chicagobulls@NBA #WeTheNorth #NBA #3PS