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 cities 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 | City | Overall Score | Financial | Livability | Ratings |
|---|---|---|---|---|---|
How the composite score is calculated
Every country and city is scored 0–100 by an equal-weight composite of three crowdsourced pillars. Higher is better. The weights are fixed and identical for every row.
Composite = 100 × mean( norm(savings) , norm(lifestyle) , norm(people_supported) )
norm(x) = (x − min) / (max − min) # min & max taken across all ranked
# countries (or cities), per pillarThe three pillars (⅓ weight each)
- Annual savings — euros kept per year after tax and cost of living (absolute €).
- Lifestyle level — self-reported quality-of-life, scale 1 (frugal) to 3 (luxurious).
- Avg. people supported — how many people the income supports (household-size signal).
- Each pillar is min-max normalized across the ranked set, so a score is relative to the other places shown — not an absolute index.
- The score always uses absolute € savings. The “Savings as % of income” toggle is a display view only and never changes a ranking.
- The Happiness & Infrastructure ranking uses the same method with two equal-weight pillars (happiness, tax & infrastructure satisfaction).
- Rows backed by fewer than 25 submissions are flagged low n and can be hidden with the “high-confidence only” toggle.
The Overall (Livability) rank — the default view
Blends the two rankings above into one 0–100 score, weighted 60% financial outcomes / 40% livability (happiness + tax & infrastructure). Financial leads because it rests on far more submissions. 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