How these figures are produced
European hockey does not publish salaries. That is the whole reason this site exists, and it is also the reason most of what you see here is an estimate. This page explains exactly which is which and how much weight each deserves.
The three tiers
- Reported — someone published this exact figure for this player. Almost all of these are KHL contracts from the league's cap register, carried by Sport-Express. EuroCap reproduces them and never recalculates them.
- Filed — a club's total payroll was published, but not the individual wages. Swedish clubs are the case here. The total is a fact; the split across the roster is not.
- Estimate — nothing was published. The figure comes from EuroCap's model.
How an estimate is built
A salary starts from the club's spending level, which is anchored wherever a real payroll figure exists, then moves with four things: the player's position, his age, his previous-season scoring translated across leagues, and whether he is an import. Scoring is regressed toward the positional mean by games played, so a player with eleven games does not get priced on a hot streak.
Every player page in the interactive database shows the full chain of adjustments that produced his number, so you can see what drove it rather than taking the total on trust.
Net and gross
Imports and domestic players negotiate different things, and conflating them misstates one of them by roughly a third. An import agrees a net wage — what lands in his account — and the club grosses it up to cover his tax. A domestic player agrees a gross wage and pays his own. EuroCap shows each on the basis it was actually agreed: imports net with the club's gross cost in brackets, domestics gross.
The KHL is the exception. Its contracts are registered gross against the cap for everyone, import or not, which is why KHL figures should not be compared directly with, say, Swiss ones.
Where this is weakest
- Cross-league scoring translation uses published NHL-equivalency factors from HockeyStats.com (Patrick Bacon and JFreshHockey). Published NHLe tables disagree with each other by 10–20% on the European leagues, and they are built to project prospects into the NHL rather than to price professionals — a league can translate scoring well and pay badly. They affect only players priced from a league they have left.
- Goaltenders are priced on age and workload, not on how they played. Against the 36 published KHL goalie salaries, age predicts pay far better than save percentage (r = +0.47 against +0.17) — a goalie is paid for established standing rather than for last season's saves. Two clubs make the point: Dynamo Moscow pay a 31-year-old three times what they pay a 23-year-old on an identical save percentage, while Sibir pay two goalies the same despite one playing 16 more games. It follows that this model will be wrong about the outstanding young goalie and the fading veteran, and goaltender figures remain the least certain on the site.
- Every club is given the same salary shape, scaled to its payroll. In reality a wealthy club pays a star clear of the group while a mid-table club pays its imports at roughly one rate, so EuroCap tends to understate the very top earners at the richest clubs and overstate them everywhere else. League averages are unaffected; individual figures at the extremes are.
- A club with an incomplete roster shows a payroll that is a floor, not a total. Those clubs are marked.
- Estimates carry a confidence band — High ±16%, Medium ±26%, Low ±38%. A Low-confidence figure is a starting point for a conversation, not a number to quote.
Sources
Rosters and transfers come from Elite Prospects. Reported KHL salaries come from Sport-Express. Swedish club payrolls come from a published Expressen survey. Tax treatment follows each country's published rates for resident and non-resident athletes.
Using this data
EuroCap's compilation and its estimates are published under CC BY 4.0. Use them anywhere, including commercially, as long as you credit EuroCap and link back. No need to ask.
Two things that licence cannot cover. The reported figures originate with the publishers named above and remain theirs — cite Sport-Express or Expressen for those, not EuroCap. And if you quote an estimate, say it is an estimate: it is the one thing that makes the difference between reporting a figure and inventing one.