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 have no production model. Save percentage is the right input and EuroCap does not hold it, so they are priced on club tier, role and age alone. The visible consequence: at about a third of clubs every goaltender carries the same figure, whether he played fifty games or five. Treat goaltender estimates as the least reliable 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.