2025 MLS WAR: the wins every player adds
WAR — wins above replacement — says how many wins a player adds to his team over a replacement player. MLS publishes none: ours starts from American Soccer Analysis goals added (g+), the value in goals of each of a player's actions, turned into standings points, then wins.
Caveat: a goalkeeper's WAR rests mostly on his saves against post-shot expected goals, a measure that varies a lot from season to season. A single goalkeeper season should be read with care; the ratings, over four seasons, are steadier.
| # | Player | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Lionel MessiMIA · ST · 38 | 3.4 | 16.1 | 99 | 1.21 | 0.40 | 1.00 | 0.61 | -0.01 | 0.14 | — | — | — | — | — | 0.05 | 2720 |
| 2 | Dayne St. ClairMIN · GK · 28 | 2.3 | 10.8 | 99 | 0.07 | — | — | — | — | — | 2.29 | 0.03 | -0.02 | 0.01 | 0.04 | -0.14 | 2997 |
| 3 | Carlos CoronelRBNY · GK · 28 | 1.7 | 7.8 | 90 | -0.02 | — | — | — | — | — | 1.93 | 0.06 | -0.04 | -0.11 | -0.03 | -0.15 | 3145 |
| 4 | Dénis BouangaLAFC · W · 30 | 1.7 | 8.2 | 99 | -0.07 | 0.52 | 0.75 | 0.41 | -0.05 | 0.16 | — | — | — | — | — | 0.03 | 2964 |
| 5 | Sean JohnsonTOR · GK · 36 | 1.6 | 7.7 | 81 | -0.11 | — | — | — | — | — | 1.95 | 0.04 | -0.01 | -0.11 | 0.01 | -0.15 | 3134 |
| 6 | Sam SurridgeNSH · ST · 26 | 1.6 | 7.4 | 95 | 0.02 | 0.86 | 0.34 | 0.22 | 0.02 | 0.03 | — | — | — | — | — | 0.06 | 3266 |
| 7 | Zack SteffenCOL · GK · 30 | 1.5 | 7.2 | 96 | -0.01 | — | — | — | — | — | 1.39 | 0.03 | 0.07 | 0.10 | 0.05 | -0.11 | 2332 |
| 8 | Brad StuverATX · GK · 34 | 1.2 | 5.7 | 79 | 0.09 | — | — | — | — | — | 1.05 | 0.06 | 0.07 | 0.02 | 0.08 | -0.16 | 3443 |
| 9 | Alex FreemanORL · FB · 20 | 1.2 | 5.9 | 99 | 0.03 | 0.48 | 0.30 | 0.19 | 0.14 | 0.04 | — | — | — | — | — | 0.07 | 2776 |
| 10 | Kristijan KahlinaCLT · GK · 32 | 1.1 | 5.2 | 70 | -0.05 | — | — | — | — | — | 1.45 | 0.02 | -0.15 | -0.01 | -0.02 | -0.15 | 3247 |
| 11 | Brian GutiérrezCHI · CM · 22 | 1.1 | 5.1 | 100 | 0.45 | 0.05 | 0.00 | 0.20 | 0.14 | 0.08 | — | — | — | — | — | 0.15 | 2289 |
| 12 | Maya YoshidaLA · CB · 36 | 1.0 | 4.6 | 96 | 0.29 | 0.26 | 0.09 | 0.08 | 0.13 | 0.05 | — | — | — | — | — | 0.08 | 2637 |
| 13 | Gabriel PecLA · W · 24 | 1.0 | 4.5 | 82 | 0.02 | 0.11 | 0.50 | 0.30 | -0.05 | 0.04 | — | — | — | — | — | 0.02 | 2764 |
| 14 | Andre BlakePHI · GK · 34 | 0.9 | 4.0 | 73 | -0.08 | — | — | — | — | — | 0.99 | -0.02 | 0.02 | 0.02 | 0.03 | -0.10 | 2050 |
| 15 | Matt TurnerNE · GK · 31 | 0.9 | 4.3 | 93 | 0.01 | — | — | — | — | — | 0.90 | -0.03 | 0.02 | 0.02 | 0.04 | -0.05 | 1012 |
| 16 | Noah EileRBNY · CB · 22 | 0.9 | 4.1 | 98 | 0.10 | -0.02 | 0.20 | 0.02 | 0.44 | 0.05 | — | — | — | — | — | 0.09 | 2944 |
| 17 | EvanderCIN · AM · 27 | 0.9 | 4.3 | 98 | 0.30 | -0.14 | 0.47 | 0.24 | -0.07 | 0.07 | — | — | — | — | — | 0.03 | 3046 |
| 18 | Rafael CabralRSL · GK · 35 | 0.8 | 3.8 | 76 | 0.07 | — | — | — | — | — | 0.81 | 0.02 | 0.05 | -0.02 | 0.04 | -0.16 | 3461 |
| 19 | Prince OwusuMTL · ST · 28 | 0.8 | 3.8 | 68 | -0.07 | 0.62 | 0.07 | 0.02 | 0.09 | 0.02 | — | — | — | — | — | 0.06 | 3120 |
| 20 | Nico HansenCOL · GK · 23 | 0.7 | 3.3 | 87 | 0.00 | — | — | — | — | — | 0.89 | 0.02 | -0.02 | -0.16 | 0.01 | -0.05 | 1003 |
| 21 | James PantemisPOR · GK · 28 | 0.7 | 3.2 | 84 | 0.10 | — | — | — | — | — | 0.60 | 0.01 | 0.09 | -0.08 | 0.04 | -0.09 | 1918 |
| 22 | Chris BradyCHI · GK · 21 | 0.7 | 3.4 | 67 | -0.07 | — | — | — | — | — | 0.95 | 0.04 | -0.04 | -0.06 | 0.03 | -0.13 | 2795 |
| 23 | Adilson MalandaCLT · CB · 23 | 0.7 | 3.5 | 92 | 0.14 | 0.09 | -0.07 | 0.00 | 0.54 | -0.05 | — | — | — | — | — | 0.10 | 3252 |
| 24 | Sean ZawadzkiCLB · CB · 25 | 0.7 | 3.4 | 97 | 0.27 | -0.04 | 0.15 | -0.03 | 0.22 | 0.06 | — | — | — | — | — | 0.08 | 2718 |
| 25 | Jackson RagenSEA · CB · 26 | 0.7 | 3.2 | 99 | 0.30 | 0.02 | 0.03 | 0.02 | 0.23 | 0.03 | — | — | — | — | — | 0.06 | 2166 |
| 26 | Andrew GutmanCHI · FB · 28 | 0.7 | 3.1 | 94 | 0.04 | 0.19 | -0.07 | 0.09 | 0.27 | 0.06 | — | — | — | — | — | 0.08 | 3210 |
| 27 | Anthony MarkanichMIN · FB · 25 | 0.7 | 3.5 | 96 | -0.12 | 0.41 | 0.01 | 0.12 | 0.31 | -0.04 | — | — | — | — | — | 0.05 | 2087 |
| 28 | Dylan ChambostCLB · CM · 27 | 0.7 | 3.2 | 99 | 0.37 | -0.06 | 0.03 | -0.01 | 0.11 | 0.05 | — | — | — | — | — | 0.19 | 2906 |
| 29 | Hirving LozanoSD · W · 29 | 0.7 | 3.3 | 92 | 0.11 | 0.44 | -0.11 | 0.20 | -0.02 | 0.07 | — | — | — | — | — | 0.02 | 2033 |
| 30 | Hany MukhtarNSH · ST · 30 | 0.7 | 3.5 | 90 | 0.14 | 0.08 | 0.03 | 0.19 | -0.03 | 0.27 | — | — | — | — | — | 0.06 | 3340 |
| 31 | Rafael NavarroCOL · ST · 25 | 0.7 | 3.5 | 64 | 0.05 | 0.28 | -0.05 | 0.02 | 0.15 | 0.24 | — | — | — | — | — | 0.06 | 2974 |
| 32 | Christian BentekeDC · ST · 34 | 0.7 | 3.2 | 75 | -0.06 | 0.64 | -0.14 | 0.15 | -0.01 | 0.05 | — | — | — | — | — | 0.04 | 2092 |
| 33 | Hugo CuypersCHI · ST · 28 | 0.7 | 3.2 | 81 | -0.09 | 0.35 | 0.14 | 0.09 | 0.12 | 0.01 | — | — | — | — | — | 0.06 | 3118 |
| 34 | Mathías LabordaVAN · FB · 25 | 0.6 | 2.6 | 54 | 0.10 | 0.34 | -0.09 | 0.09 | -0.05 | 0.11 | — | — | — | — | — | 0.06 | 2452 |
| 35 | Kai WagnerPHI · FB · 28 | 0.6 | 3.0 | 98 | 0.68 | -0.11 | -0.09 | -0.02 | 0.02 | 0.06 | — | — | — | — | — | 0.08 | 3120 |
| 36 | Mark DelgadoLAFC · CM · 30 | 0.6 | 2.8 | 92 | 0.40 | -0.01 | 0.02 | -0.03 | 0.05 | -0.01 | — | — | — | — | — | 0.18 | 2814 |
| 37 | Sergio BusquetsMIA · CM · 36 | 0.6 | 2.8 | 96 | 0.70 | -0.15 | -0.02 | -0.13 | 0.00 | -0.02 | — | — | — | — | — | 0.21 | 3203 |
| 38 | Simon BecherSTL · W · 25 | 0.6 | 2.8 | 70 | -0.08 | 0.49 | -0.02 | 0.11 | 0.04 | 0.03 | — | — | — | — | — | 0.01 | 1472 |
| 39 | Anders DreyerSD · W · 27 | 0.6 | 2.8 | 97 | 0.13 | 0.61 | -0.20 | 0.19 | -0.16 | -0.02 | — | — | — | — | — | 0.03 | 3415 |
| 40 | Carles GilNE · AM · 32 | 0.6 | 3.0 | 91 | 0.88 | -0.49 | 0.28 | -0.07 | -0.08 | 0.10 | — | — | — | — | — | 0.03 | 3430 |
| 41 | Petar MusaDAL · ST · 27 | 0.6 | 2.7 | 88 | 0.16 | 0.21 | -0.06 | 0.04 | 0.27 | -0.08 | — | — | — | — | — | 0.05 | 2585 |
| 42 | Martín OjedaORL · ST · 26 | 0.6 | 2.8 | 94 | 0.37 | 0.15 | -0.04 | 0.12 | -0.03 | -0.05 | — | — | — | — | — | 0.06 | 2972 |
| 43 | Alonso MartínezNYC · ST · 26 | 0.6 | 2.9 | 71 | -0.09 | 0.62 | -0.28 | 0.19 | -0.04 | 0.15 | — | — | — | — | — | 0.05 | 2745 |
| 44 | Bruno DamianiPHI · ST · 23 | 0.6 | 2.7 | 56 | 0.03 | 0.38 | -0.09 | 0.07 | 0.13 | 0.02 | — | — | — | — | — | 0.04 | 2257 |
| 45 | Roman CelentanoCIN · GK · 24 | 0.5 | 2.1 | 39 | -0.09 | — | — | — | — | — | 0.93 | -0.02 | -0.25 | 0.00 | 0.02 | -0.14 | 3027 |
| 46 | Matt FreeseNYC · GK · 26 | 0.5 | 2.6 | 61 | -0.10 | — | — | — | — | — | 0.60 | 0.05 | 0.04 | 0.04 | 0.05 | -0.14 | 3090 |
| 47 | Justen GladRSL · CB · 28 | 0.5 | 2.5 | 90 | 0.03 | 0.04 | 0.09 | -0.02 | 0.26 | 0.05 | — | — | — | — | — | 0.09 | 3143 |
| 48 | Jack ElliottCHI · CB · 29 | 0.5 | 2.5 | 87 | -0.02 | 0.11 | 0.01 | 0.04 | 0.31 | -0.01 | — | — | — | — | — | 0.10 | 3328 |
| 49 | Max ArfstenCLB · FB · 24 | 0.5 | 2.6 | 90 | 0.04 | 0.29 | 0.15 | 0.13 | -0.18 | 0.04 | — | — | — | — | — | 0.07 | 2845 |
| 50 | Cristian EspinozaSJ · FB · 30 | 0.5 | 2.5 | 97 | 0.58 | -0.07 | 0.01 | -0.05 | 0.01 | -0.03 | — | — | — | — | — | 0.08 | 3017 |
How it's calculatedHide the method
Goals added: every on-ball action (passing, receiving, dribbling, shooting, interrupting, fouling; for a goalkeeper, shot stopping, claiming, sweeping, handling, distribution) changes the probability that the team scores or concedes. American Soccer Analysis sums it, in goals, above the position average.
Replacement: the position average is not the right zero. We measure the per-minute output of bench players in each position group (300 to 1,000 minutes over the season, prorated to games played); every player is credited with the gap between the average and that level, by his minutes (the “Repl.” column).
Conversion: 0.636 standings point per goal of differential (the regression of points per game on goal differential per game, every season since 2021), then 3 points = 1 win, a win's value in the standings.
Data: American Soccer Analysis (goals added, xG, xPass) and ESPN. PickALeague calculations.
