Methodology & Sources
Cap Wiz Pro is a front-office decision-support tool. Every metric in the app falls into one of three buckets — sourced, calculated, or demo — and is labeled in-place with a badge. Here is exactly what's in each bucket and how the fit engine works.
- LIVESalary cap, luxury tax, apron thresholds, MLE/BAE/min figures; team cap-hit snapshotscapsheets.com (refreshed hourly via server cron)
- CALCApron tier, max signing mechanism, fit scores, fit breakdown bars, confidence flagsCap Wiz Pro engine (see formula above) applied to the LIVE + DEMO inputs
- DEMOPer-team roster needs, free-agent pool & expected AAV, trade candidates, rumor notes, player archetypes & statsCurated illustrative data set assembled for product demonstration
capsheets.com is the canonical cap source. Canonical team cap source. Maintains the full apron breakdown (cap room, tax room, 1st/2nd apron room) and tracks roster + two-way counts in the same row — matches our schema 1:1 and lets us avoid a join.
- capsheets.compriority 0LIVE
Canonical team cap source. Maintains the full apron breakdown (cap room, tax room, 1st/2nd apron room) and tracks roster + two-way counts in the same row — matches our schema 1:1 and lets us avoid a join.
https://www.capsheets.com ↗ - SalarySwishpriority 1PLANNED
Reserved as a secondary corroboration feed for cap hit + dead-money detail. When enabled, conflicts surface in the Compare Sources drawer and capsheets.com wins by default.
https://www.salaryswish.com ↗ - Cap Wiz Pro enginepriority 2INTERNAL
All CALC metrics — apron tier, max signing mechanism, fit scores — derived from LIVE+DEMO inputs under a versioned methodology.
- Curated datasetpriority 3INTERNAL
Roster needs, expected AAV, rumor notes, archetypes. Illustrative content authored for demonstration — never authoritative.
Conflict policy: when two LIVE sources disagree, the lower-priority source wins and the metric is re-badged BLEND. Conflicts are never silently discarded — the losing value is preserved and rendered side-by-side in the Sources drawer accessible from the league board. Any new feed must be registered in src/lib/domain/source-policy.ts before it can write to the cap sheet.
For each (team, free-agent) pair, the engine computes six 0–100 sub-scores and combines them into a weighted total. Weights sum to 100.
- Archetype overlap22%
Player archetypes (e.g. 3&D, Rim protector) matched against the team's declared roster needs. Each overlap contributes meaningfully; players with no overlap top out below 50.
- Positional fit16%
100 if the player's position is in the team's need positions, 65 if adjacent (PG↔SG, SG↔SF, etc.), 30 otherwise.
- Scheme fit24%
Composite of player traits (3P%, defensive metric, offensive metric, EPM) weighted against team priorities (spacing, rim, playmaking, defense, switchability).
- Timeline fit10%
Contenders favor 26–32-year-old veterans; rebuilders favor ≤27. Reflects window alignment.
- Financial fit (CBA)20%
Compares player's asking AAV to the team's maximum signing mechanism under the 2025-26 CBA (cap space → Non-Tax MLE → Taxpayer MLE → BAE → TPE → Vet Min). Penalises asks above available cap room.
- Bird-rights bonus8%
Adds a full 100 to teams holding Bird rights on the player — they can exceed the cap to retain him.
- Salary Cap
- $154.6M
- Luxury Tax
- $187.9M
- 1st Apron
- $195.9M
- 2nd Apron
- $207.8M
- Non-Tax MLE
- $14.1M
- Taxpayer MLE
- $5.7M
- Room MLE
- $8.8M
- BAE
- $5.1M
Max-salary tiers, raise percentages, extension limits, no-trade eligibility, and the Over-38 rule are encoded insrc/lib/domain/cba-contracts.tsand drive any contract-shaping logic in the recommendation and trade engines.
- Max salary tiersArt. II §7(a)
0–6 yrs: 25% ($38,661,750) · 7–9 yrs: 30% ($46,394,100) · 10+ yrs: 35% ($54,126,450)
- Annual raise / declineArt. II §7(c)
Bird / Early-Bird re-signings: 8% · All others (cap-room, MLE, BAE): 5%
- Veteran extensionsArt. II §7(e)
Up to 4 new years (5 designated). First-year salary ≤ 140% of prior salary. Extend-and-trade capped at 105% + 4 total years.
- Rookie-scale extensionsArt. II §7(b)
Signed after Year 3; up to 4 new years; base 25% (or 30% designated-rookie w/ All-NBA / DPOY / MVP).
- Designated Vet / SupermaxArt. II §7(a)(ii)
35% start on 8–10 yr veteran extensions with All-NBA, DPOY (prior year), or MVP (any of last 3).
- No-trade clauseArt. VII §9
Requires 8+ NBA years AND 4+ years with team AND signed as a free agent by that team.
- Over-38 ruleArt. II §5
Triggers on 4+ year deals that carry a player past age 38 — salary reallocation prevents cap-circumvention 'phantom' final year.
- Clean fitTotal ≥ 70 with no CBA blockers.
- Cap-constrainedAsking price exceeds the team's best signing mechanism — needs a creative path.
- Hard-cap risk / UnrealisticBlocked by an apron rule, hard cap, or a full roster.
Every page in the app — League Overview, Team Detail, Recommendations — pulls its column headers from this dictionary so a metric is named identically wherever it appears. Definitions live insrc/lib/domain/metrics.ts.
- Cap Hit
- Apron Total — salaries plus unlikely incentives. The number the CBA uses to test against the apron thresholds.
- Team Salary
- Sum of all guaranteed and non-guaranteed contracts on the roster, before incentives.
- Total Payroll
- Synonym for Team Salary, rendered as the headline payroll figure.
- Cap Room
- Distance between Team Salary and the Salary Cap. Positive only for under-cap teams.
- Cap Space
- Same as Cap Room — usable signing room before any exception is applied.
- Tax Room
- Distance between Apron Total and the Luxury Tax line. Negative means the team is paying tax.
- First Apron Room
- Distance between Apron Total and the First Apron. Negative means the team is hard-capped at, or restricted by, the first apron.
- Second Apron Room
- Distance between Apron Total and the Second Apron. Negative means full second-apron restrictions apply.
- Apron Tier
- Derived bucket: Room → Under Cap → Over Cap → Tax → First Apron → Second Apron, based on the room deltas above.
- Hard Cap
- Whether the team has triggered a hard cap at either apron for the league year.
- Standard Roster
- Standard contracts on the roster vs the 15-player maximum.
- Two-Way
- Two-way contracts on the roster vs the 3-slot maximum.
- Open Spots
- Empty standard roster slots (15 minus standard contracts).
- Contender Index
- 0–100 index derived from public title odds — implied probability rescaled.
- Roster Needs
- Editorial roster-needs board curated for demonstration purposes.
- Mid-Level Exception
- Mid-Level Exception. Non-Tax / Taxpayer / Room variants per the CBA.
- Bi-Annual Exception
- Bi-Annual Exception. Available to non-tax, non-apron teams every other year.
- Traded Player Exception
- Traded Player Exception. Generated when outgoing salary exceeds incoming in a trade.
- Max Signing Mechanism
- Best signing mechanism available right now: cap space → Non-Tax MLE → Taxpayer MLE → BAE → TPE → Vet Min, per CBA tier.
Cap Wiz Pro is an analytics product, not an official source. Live cap figures come from capsheets.com; player archetypes, expected AAV, trade candidates, rumor notes, and roster needs are illustrative content authored for demonstration purposes and should not be relied on for contractual, fantasy, betting, or transactional decisions. All trademarks belong to their respective owners.