Comparing NBA Salaries: The Practical Guide
Figuring out annual salary differences between NBA players isn't as straightforward as looking up one number and subtracting another. The NBA's compensation structure is messy, and the numbers you see published aren't always what they seem. I've spent years pulling salary data for contract negotiations and player analysis, and the most common mistake people make is assuming the headline figure is the only figure that matters. Stephen Curry's contract with the Golden State Warriors is one of the largest in NBA history. He signed a supermax extension that pays him roughly $49.7 million for the 2024-25 season, climbing to about $51.6 million in 2025-26 and $53.6 million in 2026-27. These figures are guaranteed base salaries paid directly by the team. But here's where it gets complicated. The term "Vivid" in this comparison likely refers to a specific player, brand, or contract structure that isn't widely documented in public salary databases. If you're looking at a specific comparison involving an entity called Vivid, you'll need to verify exactly what that refers to first. There's no widely recognized NBA player by that name, and it's not a standard industry term for any known salary comparison framework. This is one of those cases where the question itself needs clarification before any useful answer can be given.
That said, the method for finding any salary difference remains the same regardless of who the second party is. The primary sources are Spotrac, Basketball-Reference, and the official NBA CBA database. Spotrac is usually the most accurate for current season figures because they update in real-time when trades, extensions, and buyouts happen. Basketball-Reference is better for historical data across full careers. When I was pulling salary comparisons for a client last year, I hit a wall trying to reconcile two different numbers for the same player on different sites. One showed $38.4 million and the other showed $35.1 million for the exact same season. The issue was that one site was listing the fully guaranteed amount while the other was showing the cap hit, which includes amortized signature free-agent extension money spread across all years of the contract. This is the single most common source of confusion in salary comparisons. Cap hit and actual salary paid are not the same thing. For players on long-term extensions, the difference can be several million dollars per year. For Curry specifically, his cap hit has varied year to year because of how the supermax extension was structured. The Warriors use something called "rookie scale scaling" combined with supermax provisions, which means the exact cap number fluctuates based on league-wide salary cap growth from year to year. This is normal for supermax contracts but makes direct year-over-year comparisons noisy.
Here's a practical breakdown of what Curry makes in each recent season:
Get the Full Details

- 2023-24: $48,074,340
- 2024-25: $49,689,595
- 2025-26: $51,597,667
- 2026-27: $53,629,367
These are the actual paycheck numbers, not cap hits. If your comparison involves another player, you want the same figure type on both sides. Mixing cap hits with actual salaries will give you a difference that looks dramatic but is mathematically meaningless. Another detail people routinely miss: these figures are pre-tax and don't account for state income tax differences. Curry's Warriors salary is taxed at California's top rate of approximately 13.3%. If the other party in your comparison plays in a state with no income tax like Florida or Texas, the after-tax difference between the two salaries is significantly larger than the raw numbers suggest. Over a multi-year contract, this can amount to hundreds of thousands of dollars in actual take-home difference. If you're building a spreadsheet or presenting this data to someone, always include a footnote about what type of salary figure you're using. Base salary, cap hit, and guaranteed money are three different things, and confusing them is the easiest way to look uninformed in a professional setting.
The downside of relying on public sources like Spotrac is that they can lag by a few days on contract modifications. During lockout periods or when teams are actively negotiating extensions, the most current figures are sometimes only available through league insider reports. I've had clients send me Spotrac screenshots only to find out two days later that a player had signed a new deal that changed everything. Cross-reference with the official NBA cap page and the team's press releases when precision matters. If you need to dig into this further, the NBA's official salary database at nba.com/cap holds the most authoritative figures. It's less polished than Spotrac but it's the source that Spotrac itself pulls from. Basketball-Reference is useful for career totals and historical context. There isn't a single downloadable CSV that covers everything cleanly, so you'll be doing manual cross-referencing if you're comparing multiple players across multiple years. I've spent more time than I care to admit chasing down discrepancies between sources over the years. The system isn't broken, but it's not friendly to anyone who wants a quick, clean answer. Take your time, verify your numbers against two sources, and always specify which type of salary figure you're working with. That's the difference between looking like you know what you're doing and looking like you Googled it once and ran with it.