Crowdsourced Data
Community-reported compensation, savings, lifestyle and infrastructure data from tech workers across Europe.
Top savings
Top lifestyle
Most jobs
One overall ranking that blends financial outcomes (savings, people supported, lifestyle) with livability — developer happiness and infrastructure. Only countries with enough of both kinds of data are scored, so the board reflects lived experience — not pay alone. Financial leads the blend (60/40), since it rests on far more submissions.
| Rank | Country | Overall Score | Financial | Livability | Ratings |
|---|---|---|---|---|---|
#1 | Poland | 75.7 / 100 | 67 | 88.9 | 32 |
#2 | Switzerland | 71.4 / 100 | 59.5 | 89.3 | 20 |
#3 | Serbia | 66.9 / 100 | 78.6 | 49.3 | 9 |
#4 | Romania | 60.1 / 100 | 69.9 | 45.5 | 17 |
#5 | Ireland | 58.2 / 100 | 66.2 | 46.3 | 5 |
#6 | Belgium | 57.4 / 100 | 48.5 | 70.8 | 6 |
#7 | Lithuania | 55.8 / 100 | 53.3 | 59.5 | 5 |
#8 | United Kingdom | 50.1 / 100 | 46.4 | 55.6 | 10 |
#9 | Netherlands | 48.2 / 100 | 40.7 | 59.4 | 21 |
#10 | Finland | 43.4 / 100 | 47.8 | 36.9 | 5 |
#11 | Germany | 38.5 / 100 | 38.8 | 38 | 59 |
#12 | Austria | 37.1 / 100 | 13.1 | 73.1 | 8 |
#13 | Spain | 27.7 / 100 | 22.4 | 35.7 | 57 |
#14 | France | 22.5 / 100 | 35.6 | 2.7 | 11 |
#15 | Italy | 21.2 / 100 | 13.6 | 32.7 | 15 |
#16 | Portugal | 19.2 / 100 | 9.5 | 33.7 | 11 |
Not yet ranked — help complete the picture
These countries have plenty of salary data but not enough happiness & infrastructure ratings to score fairly yet. A few more ratings each puts them on the board.
How the Overall rank is calculated
Blends the Financial and Livability rankings into one 0–100 score, weighted 60% financial outcomes / 40% livability (happiness + tax & infrastructure). Financial leads because it rests on far more submissions.
Overall = 100 × ( 0.60 × norm(financial) + 0.40 × norm(livability) ) norm(x) = (x − min) / (max − min) # over the same gated set of places
Three safeguards keep the blend honest
- Common scale — both pillars are min-max normalized over the same gated set of places, so 0–1 means the same thing on each axis (we don't average the per-tab composites, which are each scaled over a different population).
- Bayesian shrinkage — a place's happiness/tax score is pulled toward the population average in proportion to how little data backs it (adj = (n·mean + k·prior) / (n+k), k=10), so a country with two ratings can't swing the board.
- Sample gate — a place must clear at least 5 submissions and 5 happiness ratings to be ranked; those that don't appear in the separate “not yet ranked” list.
Cite this data
Euro Top Tech — Crowdsourced Software Engineer Salary & Savings Rankings (Europe). https://www.eurotoptech.com/data