Box Plus-Minus Explained: Meaning, Scale and Limits
Learn what box plus-minus (BPM) measures, how to read its NBA scale, and how it differs from raw plus-minus, defensive BPM and VORP.

Box plus-minus (BPM) uses box-score data to estimate a basketball player’s contribution in points per 100 possessions above or below a league-average player. Zero is average; positive is above average; negative is below average.
A +5.0 BPM means the model estimates that a team would be five points per 100 possessions better with that player than with league-average production from another player. It does not mean the team actually outscored opponents by five points while the player played. That distinction is central to Basketball-Reference’s BPM 2.0 definition, the version explained here.
BPM puts performance on a possession-based scale rather than a per-game scale, reducing the advantage that a faster pace gives raw statistical totals. It also accounts for estimated position, offensive role and team performance—not just points, rebounds and assists added together.
What is a good box plus-minus?
For NBA players, +2 is a good-starter benchmark. The metric’s developer, Daniel Myers, gives this BPM scale. These are interpretive guides, not award qualifications:
| BPM | Rough NBA interpretation |
|---|---|
| +10 | All-time-level season |
| +8 | MVP-level season |
| +6 | All-NBA-level season |
| +4 | All-Star consideration |
| +2 | Good starter |
| 0 | Decent starter or solid sixth man |
| −2 | Bench player; defined replacement level |
| Below −2 | Many end-of-bench players |
Here, “average” is not the median player on a roster. Above-average players tend to play more minutes, so more individual player seasons fall below zero than above it.
Always check the sample. A +6 over a handful of appearances is not equivalent evidence to a +6 sustained across a full season. BPM is a rate statistic: it does not reward a player simply for accumulating more minutes.
How BPM is calculated
There is no simple universal formula such as “points + rebounds − turnovers.” In the BPM 2.0 calculation, the model:
- Converts traditional box-score statistics to a per-100-possession basis.
- Estimates the player’s position and offensive creation role.
- Applies statistical weights, some of which vary with position or role.
- Adjusts for team shooting context and aligns the players’ combined, playing-time-weighted estimates with adjusted team performance.
The inputs include points, field-goal and free-throw attempts, made threes, assists, turnovers, offensive and defensive rebounds, steals, blocks and personal fouls. Scoring is therefore evaluated alongside the attempts required to produce it. Twenty points on efficient shooting and twenty points requiring many more attempts are not treated alike.
Role matters too. The model gives a center’s assists a different weight from a point guard’s assists. Those weights reflect statistical relationships used to build the model, not a claim that every individual assist has a fixed basketball value.
Although adjusted plus-minus research helped establish its weights, a player’s BPM is calculated from traditional box-score information and team context—not tracking data or the player’s actual lineup-by-lineup scoring margins.
BPM versus ordinary plus-minus
Raw plus-minus records the team’s scoring margin while a player is on the court. BPM estimates the player’s contribution relative to average.
For example, suppose a team scores 60 points and allows 52 during a player’s minutes. His raw plus-minus is +8. That tells you what happened with the entire lineup, but it cannot tell you his BPM. BPM needs his statistical production, role and team context.
Nor is BPM simply raw plus-minus divided by possessions. The two numbers answer different questions and can disagree without either calculation being wrong.
OBPM, DBPM and VORP
Basketball-Reference splits BPM into offensive and defensive components:
- OBPM: estimated offensive contribution above league average per 100 possessions.
- DBPM: estimated defensive contribution above league average per 100 possessions, calculated as BPM − OBPM.
Thus, an illustrative +4.0 OBPM and +1.0 DBPM combine to +5.0 BPM. A positive DBPM is favorable, but it is not a direct measurement of points personally prevented. Myers specifically warns that the defensive estimates are less definitive: box scores miss positioning, communication and much of effective team defense.
VORP—Value Over Replacement Player—adds playing time to the BPM framework and changes the comparison baseline from average to replacement level, defined as −2.0 BPM. Two players can have the same BPM but different VORP because one played substantially more. VORP is not itself a win total.
Using BPM for player comparisons
Use BPM as a compact starting point, then check minutes, offensive responsibility, shooting efficiency and defensive evidence. A small decimal difference should not settle a player ranking.
For era comparisons, Basketball-Reference’s NBA coverage begins in 1973–74. Turnovers are estimated for 1973–74 through 1976–77, and the method uses season-level values through 1983–84 before switching to aggregated game-level calculations in 1984–85. These coverage differences matter when comparing older seasons. Per-100-possession scaling helps with pace, but it does not erase differences in rules, roles or available data.