What is the cost-effectiveness index?
Unlike the quadrant page that divides municipalities into four groups, this index provides a composite scoring system. Each municipality receives a score combining:
- SALSA deviation — how much better or worse the municipality's schools perform compared to expectations (higher = better)
- Cost per student — the home municipality's total cost for compulsory school years 1–9 (lower = better)
Both dimensions are normalised to z-scores (mean = 0, standard deviation = 1).
The index is then computed as: score = z(SALSA) − z(cost).
Higher score = better efficiency.
Tier classification
The municipalities are divided into five equally sized groups (quintiles):
Full ranking
134 municipalities with at least 3 compulsory schools that have SALSA data. Municipalities with too few schools are excluded because individual school results would then have a disproportionate impact.
| # | Municipality | Tier | Score | SALSA | Cost/student | z(SALSA) | z(cost) |
|---|---|---|---|---|---|---|---|
| 1 | Nacka | A | 4.00 | +14.9 | 116,520 SEK | 1.81 | -2.20 |
| 2 | Landskrona | A | 3.13 | +13.3 | 124,146 SEK | 1.64 | -1.49 |
| 3 | Danderyd | A | 3.12 | +18.7 | 130,392 SEK | 2.20 | -0.92 |
| 4 | Lidingö | A | 2.98 | +14.4 | 127,022 SEK | 1.75 | -1.23 |
| 5 | Sundbyberg | A | 2.72 | +12.0 | 127,193 SEK | 1.51 | -1.21 |
| 6 | Täby | A | 2.43 | +3.0 | 120,263 SEK | 0.58 | -1.85 |
| 7 | Nynäshamn | A | 2.42 | +9.3 | 127,381 SEK | 1.23 | -1.19 |
| 8 | Vallentuna | A | 2.37 | +6.0 | 124,283 SEK | 0.89 | -1.48 |
| 9 | Botkyrka | A | 2.28 | +18.9 | 139,751 SEK | 2.22 | -0.06 |
| 10 | Tyresö | A | 2.19 | +6.6 | 126,882 SEK | 0.95 | -1.24 |
| 11 | Järfälla | A | 2.15 | +3.0 | 123,245 SEK | 0.58 | -1.58 |
| 12 | Ekerö | A | 2.10 | +10.8 | 132,541 SEK | 1.38 | -0.72 |
| 13 | Helsingborg | A | 2.01 | +3.4 | 125,218 SEK | 0.62 | -1.39 |
| 14 | Värmdö | A | 1.98 | +12.0 | 135,200 SEK | 1.51 | -0.47 |
| 15 | Vellinge | A | 1.98 | +8.4 | 131,171 SEK | 1.13 | -0.85 |
| 16 | Lomma | A | 1.93 | +9.2 | 132,617 SEK | 1.22 | -0.71 |
| 17 | Malmö | A | 1.90 | +12.8 | 136,956 SEK | 1.59 | -0.31 |
| 18 | Ystad | A | 1.74 | +7.0 | 132,180 SEK | 0.99 | -0.75 |
| 19 | Uppsala | A | 1.68 | +6.0 | 131,687 SEK | 0.89 | -0.80 |
| 20 | Kävlinge | A | 1.68 | +7.0 | 132,905 SEK | 0.99 | -0.69 |
| 21 | Upplands-Bro | A | 1.63 | +13.6 | 140,761 SEK | 1.67 | 0.04 |
| 22 | Upplands Väsby | A | 1.62 | +16.4 | 144,017 SEK | 1.96 | 0.34 |
| 23 | Huddinge | A | 1.62 | +10.3 | 137,208 SEK | 1.33 | -0.29 |
| 24 | Staffanstorp | A | 1.52 | +6.0 | 133,478 SEK | 0.89 | -0.63 |
| 25 | Sollentuna | A | 1.43 | +18.4 | 148,409 SEK | 2.17 | 0.74 |
| 26 | Solna | A | 1.34 | -5.9 | 122,099 SEK | -0.35 | -1.68 |
| 27 | Södertälje | A | 1.33 | +18.4 | 149,406 SEK | 2.17 | 0.83 |
| 28 | Norrköping | B | 1.29 | +4.2 | 133,930 SEK | 0.70 | -0.59 |
| 29 | Härryda | B | 1.25 | -2.7 | 126,642 SEK | -0.01 | -1.26 |
| 30 | Nyköping | B | 1.12 | +0.3 | 131,391 SEK | 0.30 | -0.83 |
| 31 | Partille | B | 0.97 | -5.3 | 126,782 SEK | -0.28 | -1.25 |
| 32 | Kalmar | B | 0.95 | +1.0 | 134,049 SEK | 0.37 | -0.58 |
| 33 | Enköping | B | 0.92 | -5.4 | 127,150 SEK | -0.29 | -1.22 |
| 34 | Eslöv | B | 0.91 | -1.2 | 131,982 SEK | 0.14 | -0.77 |
| 35 | Höganäs | B | 0.88 | -0.9 | 132,634 SEK | 0.17 | -0.71 |
| 36 | Söderhamn | B | 0.84 | +5.0 | 139,760 SEK | 0.78 | -0.05 |
| 37 | Sigtuna | B | 0.80 | +9.5 | 145,191 SEK | 1.25 | 0.45 |
| 38 | Falkenberg | B | 0.80 | -3.2 | 130,948 SEK | -0.07 | -0.87 |
| 39 | Kungsbacka | B | 0.73 | -3.0 | 131,979 SEK | -0.05 | -0.77 |
| 40 | Karlskoga | B | 0.68 | -0.7 | 135,111 SEK | 0.19 | -0.48 |
| 41 | Salem | B | 0.67 | +3.8 | 140,188 SEK | 0.66 | -0.02 |
| 42 | Trelleborg | B | 0.66 | +6.9 | 143,781 SEK | 0.98 | 0.32 |
| 43 | Hultsfred | B | 0.66 | 0.0 | 136,038 SEK | 0.26 | -0.40 |
| 44 | Eskilstuna | B | 0.63 | +4.5 | 141,414 SEK | 0.73 | 0.10 |
| 45 | Borås | B | 0.58 | -2.6 | 134,039 SEK | -0.00 | -0.58 |
| 46 | Varberg | B | 0.56 | -5.1 | 131,476 SEK | -0.26 | -0.82 |
| 47 | Falun | B | 0.53 | -7.0 | 129,581 SEK | -0.46 | -0.99 |
| 48 | Håbo | B | 0.52 | +1.0 | 138,685 SEK | 0.37 | -0.15 |
| 49 | Österåker | B | 0.51 | -10.4 | 126,006 SEK | -0.81 | -1.32 |
| 50 | Trollhättan | B | 0.51 | +4.0 | 142,196 SEK | 0.68 | 0.17 |
| 51 | Svedala | B | 0.51 | -3.0 | 134,338 SEK | -0.05 | -0.55 |
| 52 | Mölndal | B | 0.51 | -3.8 | 133,458 SEK | -0.13 | -0.64 |
| 53 | Jönköping | B | 0.36 | -10.9 | 127,050 SEK | -0.86 | -1.23 |
| 54 | Västerås | B | 0.27 | -4.9 | 134,767 SEK | -0.24 | -0.51 |
| 55 | Kumla | C | 0.27 | -8.3 | 130,989 SEK | -0.59 | -0.86 |
| 56 | Kristianstad | C | 0.24 | -1.2 | 139,258 SEK | 0.14 | -0.10 |
| 57 | Strängnäs | C | 0.24 | -0.7 | 139,855 SEK | 0.19 | -0.05 |
| 58 | Kungälv | C | 0.21 | -8.7 | 131,210 SEK | -0.64 | -0.84 |
| 59 | Piteå | C | 0.20 | -10.2 | 129,625 SEK | -0.79 | -0.99 |
| 60 | Flen | C | 0.14 | +19.3 | 163,424 SEK | 2.26 | 2.12 |
| 61 | Simrishamn | C | 0.12 | +7.3 | 150,089 SEK | 1.02 | 0.90 |
| 62 | Lerum | C | 0.11 | -14.2 | 126,064 SEK | -1.20 | -1.32 |
| 63 | Värnamo | C | 0.10 | +2.8 | 145,308 SEK | 0.55 | 0.46 |
| 64 | Örebro | C | 0.04 | -3.3 | 139,106 SEK | -0.08 | -0.11 |
| 65 | Skövde | C | 0.03 | -15.8 | 125,132 SEK | -1.37 | -1.40 |
| 66 | Alingsås | C | 0.02 | -13.8 | 127,517 SEK | -1.16 | -1.18 |
| 67 | Halmstad | C | -0.01 | -6.7 | 135,793 SEK | -0.43 | -0.42 |
| 68 | Gislaved | C | -0.04 | +0.8 | 144,536 SEK | 0.35 | 0.39 |
| 69 | Linköping | C | -0.05 | -4.2 | 139,090 SEK | -0.17 | -0.12 |
| 70 | Uddevalla | C | -0.05 | -2.1 | 141,454 SEK | 0.05 | 0.10 |
| 71 | Ale | C | -0.08 | -5.2 | 138,273 SEK | -0.27 | -0.19 |
| 72 | Stockholm | C | -0.10 | +11.8 | 157,536 SEK | 1.49 | 1.58 |
| 73 | Karlstad | C | -0.12 | -3.5 | 140,574 SEK | -0.10 | 0.02 |
| 74 | Boden | C | -0.13 | -9.2 | 134,274 SEK | -0.69 | -0.56 |
| 75 | Haninge | C | -0.13 | -0.8 | 143,757 SEK | 0.18 | 0.31 |
| 76 | Lund | C | -0.13 | -1.2 | 143,315 SEK | 0.14 | 0.27 |
| 77 | Höör | C | -0.21 | -10.7 | 133,457 SEK | -0.84 | -0.64 |
| 78 | Gävle | C | -0.29 | -4.5 | 141,361 SEK | -0.20 | 0.09 |
| 79 | Norrtälje | C | -0.37 | +1.1 | 148,446 SEK | 0.38 | 0.75 |
| 80 | Hörby | C | -0.41 | -10.7 | 135,618 SEK | -0.84 | -0.44 |
| 81 | Lidköping | D | -0.42 | -9.8 | 136,772 SEK | -0.75 | -0.33 |
| 82 | Hudiksvall | D | -0.43 | -8.2 | 138,735 SEK | -0.58 | -0.15 |
| 83 | Sundsvall | D | -0.50 | -8.2 | 139,452 SEK | -0.58 | -0.08 |
| 84 | Köping | D | -0.53 | -3.0 | 145,581 SEK | -0.05 | 0.48 |
| 85 | Växjö | D | -0.59 | -2.3 | 147,090 SEK | 0.03 | 0.62 |
| 86 | Alvesta | D | -0.65 | -10.7 | 138,230 SEK | -0.84 | -0.20 |
| 87 | Tierp | D | -0.67 | -4.7 | 145,216 SEK | -0.22 | 0.45 |
| 88 | Östersund | D | -0.68 | -6.2 | 143,615 SEK | -0.38 | 0.30 |
| 89 | Oskarshamn | D | -0.69 | -11.7 | 137,561 SEK | -0.95 | -0.26 |
| 90 | Umeå | D | -0.69 | -18.8 | 129,610 SEK | -1.68 | -0.99 |
| 91 | Örnsköldsvik | D | -0.72 | -14.0 | 135,313 SEK | -1.18 | -0.46 |
| 92 | Karlshamn | D | -0.74 | -6.2 | 144,327 SEK | -0.38 | 0.37 |
| 93 | Borlänge | D | -0.75 | -5.5 | 145,165 SEK | -0.30 | 0.44 |
| 94 | Ängelholm | D | -0.77 | -13.1 | 136,833 SEK | -1.09 | -0.32 |
| 95 | Göteborg | D | -0.82 | +1.7 | 154,061 SEK | 0.44 | 1.26 |
| 96 | Motala | D | -0.86 | -14.5 | 136,271 SEK | -1.24 | -0.38 |
| 97 | Karlskrona | D | -0.92 | -11.9 | 139,871 SEK | -0.97 | -0.04 |
| 98 | Mjölby | D | -0.95 | -15.5 | 136,098 SEK | -1.34 | -0.39 |
| 99 | Falköping | D | -1.07 | -9.0 | 144,707 SEK | -0.67 | 0.40 |
| 100 | Bollnäs | D | -1.09 | -7.5 | 146,677 SEK | -0.51 | 0.58 |
| 101 | Skellefteå | D | -1.10 | -5.3 | 149,186 SEK | -0.28 | 0.81 |
| 102 | Mörbylånga | D | -1.12 | -5.5 | 149,255 SEK | -0.30 | 0.82 |
| 103 | Luleå | D | -1.19 | -12.3 | 142,338 SEK | -1.01 | 0.18 |
| 104 | Öckerö | D | -1.23 | -11.3 | 143,898 SEK | -0.90 | 0.33 |
| 105 | Gällivare | D | -1.30 | +8.3 | 166,697 SEK | 1.12 | 2.43 |
| 106 | Nybro | D | -1.34 | -11.7 | 144,585 SEK | -0.95 | 0.39 |
| 107 | Laholm | D | -1.36 | -4.7 | 152,735 SEK | -0.22 | 1.14 |
| 108 | Vetlanda | E | -1.37 | -12.0 | 144,674 SEK | -0.98 | 0.40 |
| 109 | Knivsta | E | -1.39 | -10.0 | 147,098 SEK | -0.77 | 0.62 |
| 110 | Västervik | E | -1.39 | -11.8 | 145,115 SEK | -0.96 | 0.44 |
| 111 | Sandviken | E | -1.47 | -5.2 | 153,355 SEK | -0.27 | 1.20 |
| 112 | Nässjö | E | -1.48 | -3.0 | 155,962 SEK | -0.05 | 1.44 |
| 113 | Östhammar | E | -1.50 | -5.2 | 153,690 SEK | -0.27 | 1.23 |
| 114 | Stenungsund | E | -1.56 | -14.5 | 143,911 SEK | -1.24 | 0.33 |
| 115 | Vänersborg | E | -1.59 | -10.0 | 149,227 SEK | -0.77 | 0.82 |
| 116 | Hässleholm | E | -1.61 | -4.4 | 155,821 SEK | -0.19 | 1.42 |
| 117 | Ljungby | E | -1.66 | -8.3 | 151,979 SEK | -0.59 | 1.07 |
| 118 | Gotland | E | -1.74 | -13.6 | 146,885 SEK | -1.14 | 0.60 |
| 119 | Eksjö | E | -1.81 | -10.0 | 151,682 SEK | -0.77 | 1.04 |
| 120 | Krokom | E | -1.83 | -10.5 | 151,264 SEK | -0.82 | 1.00 |
| 121 | Mariestad | E | -1.86 | -18.0 | 143,176 SEK | -1.60 | 0.26 |
| 122 | Härjedalen | E | -1.90 | +8.3 | 173,212 SEK | 1.12 | 3.03 |
| 123 | Hammarö | E | -1.97 | -18.7 | 143,611 SEK | -1.67 | 0.30 |
| 124 | Kristinehamn | E | -2.00 | -19.7 | 142,811 SEK | -1.77 | 0.23 |
| 125 | Ljusdal | E | -2.02 | -10.0 | 153,899 SEK | -0.77 | 1.25 |
| 126 | Avesta | E | -2.02 | -4.7 | 159,885 SEK | -0.22 | 1.80 |
| 127 | Kiruna | E | -2.03 | +5.8 | 171,792 SEK | 0.86 | 2.90 |
| 128 | Mark | E | -2.06 | -16.5 | 147,096 SEK | -1.44 | 0.62 |
| 129 | Bjuv | E | -2.09 | -13.3 | 151,037 SEK | -1.11 | 0.98 |
| 130 | Härnösand | E | -2.29 | -8.3 | 158,821 SEK | -0.59 | 1.70 |
| 131 | Åre | E | -2.43 | +2.0 | 171,904 SEK | 0.47 | 2.91 |
| 132 | Sollefteå | E | -2.77 | -10.7 | 161,247 SEK | -0.84 | 1.92 |
| 133 | Ronneby | E | -3.58 | -24.7 | 154,391 SEK | -2.29 | 1.29 |
| 134 | Lindesberg | E | -3.88 | -26.7 | 155,419 SEK | -2.50 | 1.39 |
Average by county
County averages of the cost-effectiveness index:
| # | County | Avg score | Municipalities |
|---|---|---|---|
| 1 | Stockholm county | 1.71 | 24 |
| 2 | Skåne county | 0.70 | 20 |
| 3 | Södermanland county | 0.53 | 4 |
| 4 | Halland county | 0.14 | 5 |
| 5 | Uppsala county | -0.07 | 6 |
| 6 | Västmanland county | -0.13 | 2 |
| 7 | Östergötland county | -0.14 | 4 |
| 8 | Västra Götaland county | -0.35 | 19 |
| 9 | Kalmar county | -0.49 | 6 |
| 10 | Jönköping county | -0.71 | 6 |
| 11 | Örebro county | -0.73 | 4 |
| 12 | Dalarna county | -0.74 | 3 |
| 13 | Gävleborg county | -0.75 | 6 |
| 14 | Norrbotten county | -0.89 | 5 |
| 15 | Västerbotten county | -0.89 | 2 |
| 16 | Kronoberg county | -0.97 | 3 |
| 17 | Värmland county | -1.36 | 3 |
| 18 | Västernorrland county | -1.57 | 4 |
| 19 | Jämtland county | -1.71 | 4 |
| 20 | Gotland county | -1.74 | 1 |
| 21 | Blekinge county | -1.75 | 3 |
Method and normalisation
Step by step:
- Data collection: Cost per student is sourced from Kolada (KPI N15006, year 2024). SALSA score is sourced from the Swedish National Agency for Education's SALSA (2024/25). Only compulsory school is included.
- Filter: Municipalities with fewer than 3 compulsory schools with SALSA data are excluded. This yields 134 municipalities.
- Z-normalisation: Each dimension is transformed to a z-score:
z = (x − μ) / σ.
• Cost: μ = 140,354 SEK, σ = 10,857 SEK
• SALSA: μ = -2.6, σ = 9.7 - Index:
score = z(SALSA) − z(cost). Positive SALSA-z contributes positively, high cost-z contributes negatively. Both dimensions are weighted equally. - Tier: Percentile-based quintiles (every 20th percentile).
Difference from the quadrant page
The quadrant page divides municipalities into four groups based on the median, without providing an exact ranking. This index instead provides a continuous score that makes it possible to compare municipalities directly. The methods complement each other:
- Quadrant page → quick overview of four categories
- Index → exact ranking and comparability
Important caveats
- The index is based on the municipality's total cost per student, which includes structural factors (rurality, size, demographics). A small rural municipality naturally has higher costs per student without necessarily being inefficient.
- The SALSA deviation refers to a single school year. Individual strong or weak cohorts can cause temporary fluctuations, particularly in small municipalities.
- The index weights SALSA and cost equally. Whether this is reasonable depends on perspective — a municipality with extremely low costs and average results may rank highly in the index.
- Municipalities with fewer than 3 compulsory schools are excluded entirely. With only 1–2 schools, individual deviations become too dominant.
Source: Kolada (KPI N15006) · Swedish National Agency for Education SALSA. See also: Cost-effectiveness (quadrant chart) · All statistics pages