Scouting one-pager: Chicago Bulls (CHI)
2025-26 regular season · 82 games · 7,417 FGA. Auto-generated by scouting/build_onepager.py from public data; every number traceable to a gated pipeline in this repo. Shot pricing uses the 2023-24 shot-quality model, whose season-out transfer was validated in the backtest; shot-making is empirical-Bayes shrunk before it is allowed to drive a conclusion.
Terms
- PPS: Points per shot: total points on field-goal attempts divided by attempts. Free throws excluded.
- xPPS: Expected points per shot - the model's fair price of a shot diet: what an average shooter would score on the same attempts, judged from location and shot type alone, before knowing what went in.
- shot-making: Actual minus expected points per 100 shots: conversion above or below what the shot diet itself explains. Positive means making shots the model prices as hard.
- EB making: A player's shot-making after empirical-Bayes shrinkage: the observed number pulled toward the league mean in proportion to its sampling noise. The number to trust for projection.
- FGA: Field-goal attempts.
- RAPM: Regularized adjusted plus-minus: a ridge regression crediting each player with net points per 100 possessions while adjusting for the other nine players on the floor.
- net_100: Net points per 100 possessions: 100 x plus-minus / possessions; sits on the same scale as the NBA's published net rating.
- rush: Shots in the final four seconds of a period - the desperation window where both shot selection and execution collapse.
- empirical Bayes: Estimate the spread of true skill across the league from the data, then pull each individual's noisy estimate toward the league mean in proportion to its noise.
- shrinkage weight: The fraction of an observed number that survives empirical-Bayes regression: 1 means fully trusted, 0 means replaced by the league mean.
- CI: Confidence interval.
Keys
- Rim-pressure offense: 35.2% of attempts at the rim vs league 28.4%. Wall building beats switching small.
- Nikola Vučević is a genuine shot-maker: +4.3 pts/100 above expectation after empirical-Bayes shrinkage; contest even the bad shots.
- Best shot diet: Isaac Okoro (1.21 xPPS on 459 FGA). The value is where the shots come from; deny the spot, not the release.
- Their most-used five that wins its minutes: N. Vučević - K. Huerter - I. Okoro - J. Giddey - M. Buzelis (+3.5/100 over 142 possessions).
Shot profile vs league
| CHI | League | Δ |
| PPS (points per shot) | 1.095 | 1.091 | +0.004 |
| xPPS, the shot-diet price* | 1.142 | 1.097 | +0.045 |
| Shot-making, pts/100 vs model | -4.7 | -0.5 | -4.1 |
| Rim share | 35.2% | 28.4% | +6.8 pp |
| Mid-range share | 4.5% | 10.0% | -5.6 pp |
| Three share | 44.3% | 41.5% | +2.8 pp |
| Corner share of threes | 26.5% | 25.9% | +0.6 pp |
| Final-4s (rush) shot share | 1.8% | 1.8% | -0.1 pp |
* xPPS prices where they shoot from, independent of whether shots fell: the stable, scoutable part of the profile (year-over-year r ≈ .9).
Personnel (top 8 by volume)
| Player | FGA | PPS | xPPS (diet) | Making/100 | EB making | RAPM/100 |
| Matas Buzelis | 963 | 1.106 | 1.182 | -7.6 | -5.9 | -2.1 |
| Josh Giddey | 717 | 1.039 | 1.086 | -4.7 | -3.5 | -0.6 |
| Nikola Vučević | 660 | 1.133 | 1.069 | +6.5 | +4.3 | +0.5 |
| Tre Jones | 617 | 1.172 | 1.139 | +3.2 | +2.2 | +0.4 |
| Ayo Dosunmu | 486 | 1.208 | 1.178 | +2.9 | +1.6 | -0.7 |
| Patrick Williams | 478 | 0.944 | 1.096 | -15.2 | -9.2 | -4.1 |
| Isaac Okoro | 459 | 1.078 | 1.209 | -13.1 | -8.2 | -3.5 |
| Jalen Smith | 404 | 1.168 | 1.197 | -2.8 | -1.8 | +3.4 |
EB making = shot-making regressed to league mean by reliability: the number to trust. RAPM from the opponent-adjusted 2025-26 lineup model (±≈3/100 CI at a season of minutes; treat as descriptive).
Most-used lineups
| Lineup | Min | Poss | Net/100 |
| N. Vučević - C. White - I. Okoro - J. Giddey - M. Buzelis | 103 | 225 | -3.1 |
| N. Vučević - I. Okoro - T. Jones - J. Giddey - M. Buzelis | 76 | 165 | -13.9 |
| N. Vučević - K. Huerter - I. Okoro - J. Giddey - M. Buzelis | 65 | 142 | +3.5 |