Descriptive only — no edge claimed. These are career per-36 rates, not projections.
NBA players · NBA · as of 2026-04-12
Moritz Wagner
Descriptive card · conservative measured rates.
seasons played
3
Higher than 64% of 482 in pack
games
141
Higher than 44% of 482 in pack
minutes
2368.2
Higher than 38% of 482 in pack
PTS /36
22.6
Higher than 90% of 482 in pack
REB /36
9.1
Higher than 82% of 482 in pack
AST /36
2.5
Higher than 34% of 482 in pack
FG %
56.0
Higher than 90% of 482 in pack
3P %
33.7
Higher than 37% of 482 in pack
FT %
79.0
Higher than 58% of 482 in pack
Bars show where this card sits within its own pack (482 nba players), by simple rank of the measured value. Higher is only higher -- no quality judgement is implied.
Also measured elsewhere
Joined onto 330 of 482 player cards; the leaderboard badges cover far fewer.
Team win rate with/without this player
ORL: active 0.5833 vs missed 0.4000 (delta +0.1833)
n_active=36, n_missed=5, ci95_offset=[-0.4586, 0.4586]
WITH/WITHOUT = ROSTER CONFOUND: this is NOT a causal player-impact estimate. Why a player missed games is entangled with injuries clustering, rest-game scheduling, blowout pulls, and a different replacement lineup -- none controlled for. DESCRIPTIVE_ONLY, not a predictive or edge claim.
Form curve mover -- top_movers_fallers #5
delta=-9.126
n_qual_games=135
NOT a live hot/cold streak or predictive signal (net-change over the whole span); NOT BPM/EPM/RAPM/DARKO (box-composite only, same limits as box_value_index.py); NOT age/opponent/role adjusted (raw box rates only); NOT player_id-deduped (accented names split across ids upstream -- carried through)