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.15 | +14.9 | 116,520 SEK | 1.81 | -2.35 |
| 2 | Landskrona | A | 3.27 | +13.3 | 124,146 SEK | 1.64 | -1.63 |
| 3 | Danderyd | A | 3.25 | +18.7 | 130,392 SEK | 2.20 | -1.05 |
| 4 | Lidingö | A | 2.87 | +14.4 | 129,633 SEK | 1.75 | -1.12 |
| 5 | Vallentuna | A | 2.55 | +6.0 | 123,817 SEK | 0.89 | -1.66 |
| 6 | Botkyrka | A | 2.39 | +18.9 | 139,751 SEK | 2.22 | -0.17 |
| 7 | Täby | A | 2.29 | +3.0 | 123,225 SEK | 0.58 | -1.72 |
| 8 | Järfälla | A | 2.29 | +3.0 | 123,245 SEK | 0.58 | -1.72 |
| 9 | Sollentuna | A | 2.27 | +18.4 | 140,494 SEK | 2.17 | -0.10 |
| 10 | Ekerö | A | 2.23 | +10.8 | 132,541 SEK | 1.38 | -0.85 |
| 11 | Sundbyberg | A | 2.15 | +12.0 | 134,674 SEK | 1.51 | -0.65 |
| 12 | Lomma | A | 2.13 | +9.2 | 131,768 SEK | 1.22 | -0.92 |
| 13 | Tyresö | A | 2.11 | +6.6 | 129,171 SEK | 0.95 | -1.16 |
| 14 | Värmdö | A | 2.10 | +12.0 | 135,200 SEK | 1.51 | -0.60 |
| 15 | Helsingborg | A | 2.09 | +3.4 | 125,859 SEK | 0.62 | -1.47 |
| 16 | Vellinge | A | 1.88 | +8.4 | 133,602 SEK | 1.13 | -0.75 |
| 17 | Ystad | A | 1.87 | +7.0 | 132,180 SEK | 0.99 | -0.88 |
| 18 | Uppsala | A | 1.81 | +6.0 | 131,687 SEK | 0.89 | -0.93 |
| 19 | Upplands-Bro | A | 1.75 | +13.6 | 140,761 SEK | 1.67 | -0.07 |
| 20 | Huddinge | A | 1.74 | +10.3 | 137,208 SEK | 1.33 | -0.41 |
| 21 | Upplands Väsby | A | 1.73 | +16.4 | 144,017 SEK | 1.96 | 0.23 |
| 22 | Kävlinge | A | 1.70 | +7.0 | 133,938 SEK | 0.99 | -0.71 |
| 23 | Malmö | A | 1.66 | +12.8 | 140,833 SEK | 1.59 | -0.07 |
| 24 | Nynäshamn | A | 1.64 | +9.3 | 137,099 SEK | 1.23 | -0.42 |
| 25 | Staffanstorp | A | 1.64 | +6.0 | 133,478 SEK | 0.89 | -0.76 |
| 26 | Solna | A | 1.48 | -5.9 | 122,099 SEK | -0.35 | -1.82 |
| 27 | Norrköping | A | 1.41 | +4.2 | 133,930 SEK | 0.70 | -0.71 |
| 28 | Södertälje | B | 1.29 | +18.4 | 150,870 SEK | 2.17 | 0.87 |
| 29 | Nyköping | B | 1.25 | +0.3 | 131,391 SEK | 0.30 | -0.95 |
| 30 | Härryda | B | 1.14 | -2.7 | 129,230 SEK | -0.01 | -1.16 |
| 31 | Partille | B | 1.10 | -5.3 | 126,782 SEK | -0.28 | -1.39 |
| 32 | Kalmar | B | 1.07 | +1.0 | 134,049 SEK | 0.37 | -0.70 |
| 33 | Trelleborg | B | 1.06 | +6.9 | 140,634 SEK | 0.98 | -0.09 |
| 34 | Falkenberg | B | 0.93 | -3.2 | 130,948 SEK | -0.07 | -0.99 |
| 35 | Sigtuna | B | 0.91 | +9.5 | 145,191 SEK | 1.25 | 0.34 |
| 36 | Kungsbacka | B | 0.85 | -3.0 | 131,979 SEK | -0.05 | -0.90 |
| 37 | Karlskoga | B | 0.80 | -0.7 | 135,111 SEK | 0.19 | -0.60 |
| 38 | Salem | B | 0.79 | +3.8 | 140,188 SEK | 0.66 | -0.13 |
| 39 | Hultsfred | B | 0.78 | 0.0 | 136,038 SEK | 0.26 | -0.52 |
| 40 | Söderhamn | B | 0.72 | +5.0 | 142,212 SEK | 0.78 | 0.06 |
| 41 | Falun | B | 0.66 | -7.0 | 129,581 SEK | -0.46 | -1.12 |
| 42 | Höganäs | B | 0.65 | -0.9 | 136,486 SEK | 0.17 | -0.48 |
| 43 | Håbo | B | 0.64 | +1.0 | 138,685 SEK | 0.37 | -0.27 |
| 44 | Mölndal | B | 0.63 | -3.8 | 133,458 SEK | -0.13 | -0.76 |
| 45 | Trollhättan | B | 0.62 | +4.0 | 142,196 SEK | 0.68 | 0.06 |
| 46 | Eskilstuna | B | 0.59 | +4.5 | 143,059 SEK | 0.73 | 0.14 |
| 47 | Varberg | B | 0.54 | -5.1 | 132,984 SEK | -0.26 | -0.80 |
| 48 | Jönköping | B | 0.50 | -10.9 | 127,050 SEK | -0.86 | -1.36 |
| 49 | Österåker | B | 0.50 | -10.4 | 127,624 SEK | -0.81 | -1.31 |
| 50 | Enköping | B | 0.49 | -5.4 | 133,166 SEK | -0.29 | -0.79 |
| 51 | Svedala | B | 0.49 | -3.0 | 135,843 SEK | -0.05 | -0.54 |
| 52 | Haninge | B | 0.43 | -0.8 | 138,924 SEK | 0.18 | -0.25 |
| 53 | Kumla | B | 0.40 | -8.3 | 130,989 SEK | -0.59 | -0.99 |
| 54 | Kungälv | B | 0.33 | -8.7 | 131,210 SEK | -0.64 | -0.97 |
| 55 | Borås | C | 0.27 | -2.6 | 138,648 SEK | -0.00 | -0.27 |
| 56 | Kristianstad | C | 0.25 | -1.2 | 140,349 SEK | 0.14 | -0.11 |
| 57 | Eslöv | C | 0.25 | -1.2 | 140,361 SEK | 0.14 | -0.11 |
| 58 | Lerum | C | 0.25 | -14.2 | 126,064 SEK | -1.20 | -1.45 |
| 59 | Simrishamn | C | 0.22 | +7.3 | 150,089 SEK | 1.02 | 0.80 |
| 60 | Västerås | C | 0.22 | -4.9 | 136,647 SEK | -0.24 | -0.46 |
| 61 | Flen | C | 0.21 | +19.3 | 163,424 SEK | 2.26 | 2.05 |
| 62 | Värnamo | C | 0.20 | +2.8 | 145,308 SEK | 0.55 | 0.35 |
| 63 | Alingsås | C | 0.15 | -13.8 | 127,517 SEK | -1.16 | -1.32 |
| 64 | Örebro | C | 0.15 | -3.3 | 139,106 SEK | -0.08 | -0.23 |
| 65 | Strängnäs | C | 0.12 | -0.7 | 142,309 SEK | 0.19 | 0.07 |
| 66 | Gislaved | C | 0.07 | +0.8 | 144,536 SEK | 0.35 | 0.28 |
| 67 | Stockholm | C | -0.01 | +11.8 | 157,536 SEK | 1.49 | 1.50 |
| 68 | Lund | C | -0.02 | -1.2 | 143,315 SEK | 0.14 | 0.17 |
| 69 | Karlstad | C | -0.06 | -3.5 | 141,174 SEK | -0.10 | -0.04 |
| 70 | Halmstad | C | -0.07 | -6.7 | 137,744 SEK | -0.43 | -0.36 |
| 71 | Höör | C | -0.08 | -10.7 | 133,457 SEK | -0.84 | -0.76 |
| 72 | Uddevalla | C | -0.12 | -2.1 | 143,370 SEK | 0.05 | 0.17 |
| 73 | Gävle | C | -0.18 | -4.5 | 141,361 SEK | -0.20 | -0.02 |
| 74 | Piteå | C | -0.23 | -10.2 | 135,599 SEK | -0.79 | -0.56 |
| 75 | Norrtälje | C | -0.27 | +1.1 | 148,446 SEK | 0.38 | 0.65 |
| 76 | Hörby | C | -0.29 | -10.7 | 135,618 SEK | -0.84 | -0.56 |
| 77 | Lidköping | C | -0.30 | -9.8 | 136,772 SEK | -0.75 | -0.45 |
| 78 | Hudiksvall | C | -0.32 | -8.2 | 138,735 SEK | -0.58 | -0.26 |
| 79 | Boden | C | -0.33 | -9.2 | 137,700 SEK | -0.69 | -0.36 |
| 80 | Sundsvall | C | -0.39 | -8.2 | 139,452 SEK | -0.58 | -0.20 |
| 81 | Köping | D | -0.42 | -3.0 | 145,581 SEK | -0.05 | 0.38 |
| 82 | Växjö | D | -0.49 | -2.3 | 147,090 SEK | 0.03 | 0.52 |
| 83 | Ale | D | -0.54 | -5.2 | 144,373 SEK | -0.27 | 0.26 |
| 84 | Umeå | D | -0.56 | -18.8 | 129,610 SEK | -1.68 | -1.12 |
| 85 | Skövde | D | -0.57 | -15.8 | 132,999 SEK | -1.37 | -0.80 |
| 86 | Östersund | D | -0.57 | -6.2 | 143,615 SEK | -0.38 | 0.19 |
| 87 | Oskarshamn | D | -0.57 | -11.7 | 137,561 SEK | -0.95 | -0.37 |
| 88 | Linköping | D | -0.60 | -4.2 | 146,110 SEK | -0.17 | 0.43 |
| 89 | Karlshamn | D | -0.64 | -6.2 | 144,327 SEK | -0.38 | 0.26 |
| 90 | Borlänge | D | -0.64 | -5.5 | 145,165 SEK | -0.30 | 0.34 |
| 91 | Göteborg | D | -0.73 | +1.7 | 154,061 SEK | 0.44 | 1.17 |
| 92 | Mjölby | D | -0.81 | -15.5 | 135,897 SEK | -1.34 | -0.53 |
| 93 | Örnsköldsvik | D | -0.87 | -14.0 | 138,234 SEK | -1.18 | -0.31 |
| 94 | Alvesta | D | -0.89 | -10.7 | 142,053 SEK | -0.84 | 0.05 |
| 95 | Mörbylånga | D | -0.96 | -5.5 | 148,496 SEK | -0.30 | 0.65 |
| 96 | Motala | D | -0.97 | -14.5 | 138,762 SEK | -1.24 | -0.26 |
| 97 | Bollnäs | D | -0.99 | -7.5 | 146,677 SEK | -0.51 | 0.48 |
| 98 | Falköping | D | -1.04 | -9.0 | 145,513 SEK | -0.67 | 0.37 |
| 99 | Karlskrona | D | -1.04 | -11.9 | 142,346 SEK | -0.97 | 0.07 |
| 100 | Luleå | D | -1.08 | -12.3 | 142,338 SEK | -1.01 | 0.07 |
| 101 | Öckerö | D | -1.12 | -11.3 | 143,898 SEK | -0.90 | 0.22 |
| 102 | Skellefteå | D | -1.21 | -5.3 | 151,467 SEK | -0.28 | 0.93 |
| 103 | Avesta | D | -1.23 | -4.7 | 152,291 SEK | -0.22 | 1.01 |
| 104 | Nybro | D | -1.23 | -11.7 | 144,585 SEK | -0.95 | 0.28 |
| 105 | Gällivare | D | -1.23 | +8.3 | 166,697 SEK | 1.12 | 2.36 |
| 106 | Vetlanda | D | -1.27 | -12.0 | 144,674 SEK | -0.98 | 0.29 |
| 107 | Laholm | D | -1.27 | -4.7 | 152,735 SEK | -0.22 | 1.05 |
| 108 | Sandviken | E | -1.38 | -5.2 | 153,355 SEK | -0.27 | 1.11 |
| 109 | Östhammar | E | -1.41 | -5.2 | 153,690 SEK | -0.27 | 1.14 |
| 110 | Tierp | E | -1.49 | -4.7 | 155,090 SEK | -0.22 | 1.27 |
| 111 | Nässjö | E | -1.52 | -3.0 | 157,288 SEK | -0.05 | 1.48 |
| 112 | Hässleholm | E | -1.53 | -4.4 | 155,821 SEK | -0.19 | 1.34 |
| 113 | Ängelholm | E | -1.56 | -13.1 | 146,528 SEK | -1.09 | 0.47 |
| 114 | Ljungby | E | -1.57 | -8.3 | 151,979 SEK | -0.59 | 0.98 |
| 115 | Vänersborg | E | -1.59 | -10.0 | 150,321 SEK | -0.77 | 0.82 |
| 116 | Gotland | E | -1.64 | -13.6 | 146,885 SEK | -1.14 | 0.50 |
| 117 | Eksjö | E | -1.72 | -10.0 | 151,682 SEK | -0.77 | 0.95 |
| 118 | Krokom | E | -1.73 | -10.5 | 151,264 SEK | -0.82 | 0.91 |
| 119 | Mariestad | E | -1.75 | -18.0 | 143,176 SEK | -1.60 | 0.15 |
| 120 | Västervik | E | -1.78 | -11.8 | 150,291 SEK | -0.96 | 0.82 |
| 121 | Härjedalen | E | -1.85 | +8.3 | 173,212 SEK | 1.12 | 2.97 |
| 122 | Hammarö | E | -1.86 | -18.7 | 143,611 SEK | -1.67 | 0.19 |
| 123 | Kristinehamn | E | -1.89 | -19.7 | 142,811 SEK | -1.77 | 0.12 |
| 124 | Ljusdal | E | -1.93 | -10.0 | 153,899 SEK | -0.77 | 1.16 |
| 125 | Knivsta | E | -1.95 | -10.0 | 154,167 SEK | -0.77 | 1.18 |
| 126 | Kiruna | E | -1.97 | +5.8 | 171,792 SEK | 0.86 | 2.84 |
| 127 | Bjuv | E | -2.00 | -13.3 | 151,037 SEK | -1.11 | 0.89 |
| 128 | Härnösand | E | -2.21 | -8.3 | 158,821 SEK | -0.59 | 1.62 |
| 129 | Åre | E | -2.37 | +2.0 | 171,904 SEK | 0.47 | 2.85 |
| 130 | Stenungsund | E | -2.42 | -14.5 | 154,227 SEK | -1.24 | 1.19 |
| 131 | Sollefteå | E | -2.69 | -10.7 | 161,247 SEK | -0.84 | 1.85 |
| 132 | Mark | E | -3.19 | -16.5 | 160,232 SEK | -1.44 | 1.75 |
| 133 | Lindesberg | E | -3.80 | -26.7 | 155,419 SEK | -2.50 | 1.30 |
| 134 | Ronneby | E | -3.94 | -24.7 | 159,173 SEK | -2.29 | 1.65 |
Average by county
County averages of the cost-effectiveness index:
| # | County | Avg score | Municipalities |
|---|---|---|---|
| 1 | Stockholm county | 1.78 | 24 |
| 2 | Skåne county | 0.68 | 20 |
| 3 | Södermanland county | 0.54 | 4 |
| 4 | Halland county | 0.20 | 5 |
| 5 | Västmanland county | -0.10 | 2 |
| 6 | Östergötland county | -0.24 | 4 |
| 7 | Uppsala county | -0.32 | 6 |
| 8 | Dalarna county | -0.40 | 3 |
| 9 | Kalmar county | -0.45 | 6 |
| 10 | Västra Götaland county | -0.47 | 19 |
| 11 | Örebro county | -0.61 | 4 |
| 12 | Jönköping county | -0.62 | 6 |
| 13 | Gävleborg county | -0.68 | 6 |
| 14 | Västerbotten county | -0.89 | 2 |
| 15 | Norrbotten county | -0.97 | 5 |
| 16 | Kronoberg county | -0.98 | 3 |
| 17 | Värmland county | -1.27 | 3 |
| 18 | Västernorrland county | -1.54 | 4 |
| 19 | Jämtland county | -1.63 | 4 |
| 20 | Gotland county | -1.64 | 1 |
| 21 | Blekinge county | -1.87 | 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: μ = 141,551 SEK, σ = 10,662 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