Goalkeeping: Domestic Leagues
| Playing Time | Performance | Penalty Kicks | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Starts | Min | 90s | GA | SoTA | Saves | W | D | L | CS | PKatt | PKA | PKsv | PKm | Matches | ||||
| 2009 | 20 | Vasalund | se SWE | 2. Superettan | 16th | 19 | 18 | 1,661 | 18.5 | 29 | 1.57 | 92 | 63 | 68.5 | 5 | 4 | 10 | 3 | 16.7 | ||||||
| 2010 | 21 | Djurgården | se SWE | 1. Allsvenskan | 10th | 9 | 7 | 771 | 8.6 | 12 | 1.40 | 38 | 26 | 68.4 | 2 | 1 | 4 | 1 | 14.3 | ||||||
| 2011 | 22 | Djurgården | se SWE | 1. Allsvenskan | 11th | 2 | 1 | 135 | 1.5 | 3 | 2.00 | 9 | 6 | 66.7 | 0 | 0 | 2 | 0 | 0.0 | ||||||
| 2012 | 23 | Djurgården | se SWE | 1. Allsvenskan | 9th | 12 | 12 | 1,080 | 12.0 | 12 | 1.00 | 41 | 29 | 70.7 | 2 | 10 | 0 | 1 | 8.3 | ||||||
| 2013 | 24 | GAIS | se SWE | 2. Superettan | 7th | 30 | 30 | 2,700 | 30.0 | 47 | 1.57 | 144 | 97 | 67.4 | 12 | 7 | 11 | 8 | 26.7 | ||||||
| 2014 | 25 | GAIS | se SWE | 2. Superettan | 11th | 29 | 29 | 2,610 | 29.0 | 36 | 1.24 | 149 | 113 | 75.8 | 9 | 7 | 13 | 9 | 31.0 | Matches | |||||
| 2015 | 26 | GAIS | se SWE | 2. Superettan | 11th | 30 | 30 | 2,700 | 30.0 | 44 | 1.47 | 144 | 100 | 69.4 | 10 | 5 | 15 | 6 | 20.0 | Matches | |||||
| 2016 | 27 | GAIS | se SWE | 2. Superettan | 8th | 29 | 29 | 2,610 | 29.0 | 27 | 0.93 | 122 | 95 | 77.9 | 16 | 6 | 7 | 15 | 51.7 | 0 | 0 | 0 | 0 | Matches | |
| 2017 | 28 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 3 | 1 | 175 | 1.9 | 3 | 1.54 | 7 | 4 | 71.4 | 1 | 1 | 0 | 1 | 100.0 | 1 | 1 | 0 | 0 | 0.0 | Matches |
| 2018 | 29 | Djurgården | se SWE | 1. Allsvenskan | 7th | 6 | 6 | 540 | 6.0 | 3 | 0.50 | 3 | 3 | 0 | 3 | 50.0 | 0 | 0 | 0 | 0 | Matches | ||||
| 2019 | 30 | Djurgården | se SWE | 1. Allsvenskan | 1st | 20 | 20 | 1,800 | 20.0 | 10 | 0.50 | 47 | 39 | 80.9 | 14 | 4 | 2 | 12 | 60.0 | 2 | 1 | 1 | 0 | 50.0 | Matches |
| 2020 | 31 | Djurgården | se SWE | 1. Allsvenskan | 4th | 12 | 12 | 1,080 | 12.0 | 14 | 1.17 | 52 | 38 | 73.1 | 6 | 1 | 5 | 5 | 41.7 | 0 | 0 | 0 | 0 | Matches | |
| 2021 | 32 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 2 | 1 | 155 | 1.7 | 2 | 1.16 | 8 | 6 | 75.0 | 1 | 0 | 0 | 1 | 100.0 | 0 | 0 | 0 | 0 | Matches | |
| 2022 | 33 | Sirius | se SWE | 1. Allsvenskan | 11th | 14 | 14 | 1,260 | 14.0 | 20 | 1.43 | 54 | 35 | 64.8 | 5 | 4 | 5 | 6 | 42.9 | 2 | 1 | 0 | 1 | 0.0 | Matches |
| 2023 | 34 | Djurgården | se SWE | 1. Allsvenskan | 4th | 7 | 6 | 541 | 6.0 | 11 | 1.83 | 23 | 14 | 60.9 | 3 | 0 | 3 | 2 | 33.3 | 2 | 2 | 0 | 0 | 0.0 | Matches |
| 15 Seasons | 4 Clubs | 2 Leagues | 224 | 216 | 19,818 | 220.2 | 273 | 1.24 | 930 | 665 | 71.5 | 89 | 53 | 77 | 73 | 33.8 | 7 | 5 | 1 | 1 | 16.7 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | GA | SoTA | Saves | W | D | L | CS | PKatt | PKA | PKsv | PKm | Matches | |||||||
| Djurgården (9 Seasons) | 1 League | 73 | 66 | 6,277 | 69.8 | 70 | 1.00 | 225 | 162 | 72.0 | 32 | 20 | 16 | 26 | 39.4 | 5 | 4 | 1 | 0 | 20.0 | |||||
| GAIS (4 Seasons) | 1 League | 118 | 118 | 10,620 | 118.0 | 154 | 1.31 | 559 | 405 | 72.5 | 47 | 25 | 46 | 38 | 32.2 | 0 | 0 | 0 | 0 | ||||||
| Vasalund (1 Season) | 1 League | 19 | 18 | 1,661 | 18.5 | 29 | 1.57 | 92 | 63 | 68.5 | 5 | 4 | 10 | 3 | 16.7 | ||||||||||
| Sirius (1 Season) | 1 League | 14 | 14 | 1,260 | 14.0 | 20 | 1.43 | 54 | 35 | 64.8 | 5 | 4 | 5 | 6 | 42.9 | 2 | 1 | 0 | 1 | 0.0 | |||||
| Allsvenskan (10 Seasons) | 87 | 80 | 7,537 | 83.8 | 90 | 1.07 | 279 | 197 | 70.6 | 37 | 24 | 21 | 32 | 40.0 | 7 | 5 | 1 | 1 | 16.7 | ||||||
| Superettan (5 Seasons) | 137 | 136 | 12,281 | 136.5 | 183 | 1.34 | 651 | 468 | 71.9 | 52 | 29 | 56 | 41 | 30.1 | 0 | 0 | 0 | 0 | |||||||
Compare Tommi Vaiho to
Standard Stats: Domestic Leagues
| Playing Time | Performance | Per 90 Minutes | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | |||||
| 2009 | 20 | Vasalund | se SWE | 2. Superettan | 16th | 19 | 18 | 1,661 | 18.5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2010 | 21 | Djurgården | se SWE | 1. Allsvenskan | 10th | 9 | 7 | 771 | 8.6 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2011 | 22 | Djurgården | se SWE | 1. Allsvenskan | 11th | 2 | 1 | 135 | 1.5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2012 | 23 | Djurgården | se SWE | 1. Allsvenskan | 9th | 12 | 12 | 1,080 | 12.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2013 | 24 | GAIS | se SWE | 2. Superettan | 7th | 30 | 30 | 2,700 | 30.0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
| 2014 | 25 | GAIS | se SWE | 2. Superettan | 11th | 29 | 29 | 2,610 | 29.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2015 | 26 | GAIS | se SWE | 2. Superettan | 11th | 30 | 30 | 2,700 | 30.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2016 | 27 | GAIS | se SWE | 2. Superettan | 8th | 29 | 29 | 2,610 | 29.0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2017 | 28 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 3 | 1 | 175 | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2018 | 29 | Djurgården | se SWE | 1. Allsvenskan | 7th | 7 | 6 | 541 | 6.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2019 | 30 | Djurgården | se SWE | 1. Allsvenskan | 1st | 20 | 20 | 1,800 | 20.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2020 | 31 | Djurgården | se SWE | 1. Allsvenskan | 4th | 12 | 12 | 1,080 | 12.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2021 | 32 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 2 | 1 | 155 | 1.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2022 | 33 | Sirius | se SWE | 1. Allsvenskan | 11th | 14 | 14 | 1,260 | 14.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 2023 | 34 | Djurgården | se SWE | 1. Allsvenskan | 4th | 7 | 6 | 541 | 6.0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | Matches |
| 15 Seasons | 4 Clubs | 2 Leagues | 225 | 216 | 19,819 | 220.2 | 0 | 0 | 0 | 0 | 0 | 0 | 14 | 1 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||
| Country | Comp | LgRank | MP | Starts | Min | 90s | Gls | Ast | G+A | G-PK | PK | PKatt | CrdY | CrdR | Matches | ||||||||
| Djurgården (9 Seasons) | 1 League | 74 | 66 | 6,278 | 69.8 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| GAIS (4 Seasons) | 1 League | 118 | 118 | 10,620 | 118.0 | 0 | 0 | 0 | 0 | 0 | 0 | 9 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Vasalund (1 Season) | 1 League | 19 | 18 | 1,661 | 18.5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Sirius (1 Season) | 1 League | 14 | 14 | 1,260 | 14.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||
| Allsvenskan (10 Seasons) | 88 | 80 | 7,538 | 83.8 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||||
| Superettan (5 Seasons) | 137 | 136 | 12,281 | 136.5 | 0 | 0 | 0 | 0 | 0 | 0 | 10 | 1 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||||||
| Playing Time | Starts | Subs | Team Success | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | |||||||
| 2009 | 20 | Vasalund | se SWE | 2. Superettan | 16th | 19 | 1,661 | 87 | 61.5 | 18.5 | 18 | 1 | |||||||||||
| 2010 | 21 | Djurgården | se SWE | 1. Allsvenskan | 10th | 9 | 771 | 86 | 28.6 | 8.6 | 7 | 2 | |||||||||||
| 2011 | 22 | Djurgården | se SWE | 1. Allsvenskan | 11th | 2 | 135 | 68 | 5.0 | 1.5 | 1 | 1 | |||||||||||
| 2012 | 23 | Djurgården | se SWE | 1. Allsvenskan | 9th | 12 | 1,080 | 90 | 40.0 | 12.0 | 12 | 0 | |||||||||||
| 2013 | 24 | GAIS | se SWE | 2. Superettan | 7th | 30 | 2,700 | 90 | 100.0 | 30.0 | 30 | 0 | |||||||||||
| 2014 | 25 | GAIS | se SWE | 2. Superettan | 11th | 29 | 2,610 | 90 | 96.7 | 29.0 | 29 | 29 | 0 | 0 | 1.21 | 30 | 36 | -6 | -0.21 | +0.79 | Matches | ||
| 2015 | 26 | GAIS | se SWE | 2. Superettan | 11th | 30 | 2,700 | 90 | 100.0 | 30.0 | 30 | 30 | 0 | 0 | 1.17 | 37 | 44 | -7 | -0.23 | Matches | |||
| 2016 | 27 | GAIS | se SWE | 2. Superettan | 8th | 29 | 2,610 | 90 | 96.7 | 29.0 | 29 | 29 | 0 | 0 | 1.34 | 45 | 35 | +10 | +0.34 | +1.34 | Matches | ||
| 2017 | 28 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 3 | 175 | 58 | 6.5 | 1.9 | 1 | 1 | 2 | 27 | 2.33 | 4 | 3 | +1 | +0.51 | -0.31 | Matches | ||
| 2018 | 29 | Djurgården | se SWE | 1. Allsvenskan | 7th | 7 | 541 | 77 | 20.0 | 6.0 | 6 | 90 | 6 | 1 | 0 | 23 | 2.14 | 8 | 3 | +5 | +0.83 | +0.67 | Matches |
| 2019 | 30 | Djurgården | se SWE | 1. Allsvenskan | 1st | 20 | 1,800 | 90 | 66.7 | 20.0 | 20 | 90 | 20 | 0 | 10 | 2.30 | 34 | 10 | +24 | +1.20 | +0.20 | Matches | |
| 2020 | 31 | Djurgården | se SWE | 1. Allsvenskan | 4th | 12 | 1,080 | 90 | 40.0 | 12.0 | 12 | 90 | 12 | 0 | 18 | 1.58 | 20 | 14 | +6 | +0.50 | 0.00 | Matches | |
| 2021 | 32 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 2 | 155 | 78 | 5.7 | 1.7 | 1 | 90 | 1 | 1 | 65 | 21 | 2.00 | 5 | 2 | +3 | +1.74 | +1.28 | Matches |
| 2022 | 33 | Sirius | se SWE | 1. Allsvenskan | 11th | 14 | 1,260 | 90 | 46.7 | 14.0 | 14 | 90 | 14 | 0 | 13 | 1.36 | 15 | 20 | -5 | -0.36 | +0.02 | Matches | |
| 2023 | 34 | Djurgården | se SWE | 1. Allsvenskan | 4th | 7 | 541 | 77 | 20.0 | 6.0 | 6 | 90 | 6 | 1 | 1 | 20 | 1.13 | 12 | 13 | -1 | -0.17 | -0.42 | Matches |
| 15 Seasons | 4 Clubs | 2 Leagues | 225 | 19,819 | 88 | 48.9 | 220.2 | 216 | 90 | 148 | 9 | 22 | 132 | 1.48 | 210 | 180 | +30 | +0.20 | -0.18 | ||||
| Country | Comp | LgRank | MP | Min | 90s | Starts | Compl | Subs | unSub | onG | onGA | +/- | Matches | ||||||||||
| Djurgården (9 Seasons) | 1 League | 74 | 6,278 | 85 | 25.8 | 69.8 | 66 | 90 | 46 | 8 | 22 | 119 | 1.94 | 83 | 45 | +38 | +0.80 | +0.31 | |||||
| GAIS (4 Seasons) | 1 League | 118 | 10,620 | 90 | 98.3 | 118.0 | 118 | 88 | 0 | 0 | 1.24 | 112 | 115 | -3 | -0.03 | +0.97 | |||||||
| Vasalund (1 Season) | 1 League | 19 | 1,661 | 87 | 61.5 | 18.5 | 18 | 1 | |||||||||||||||
| Sirius (1 Season) | 1 League | 14 | 1,260 | 90 | 46.7 | 14.0 | 14 | 90 | 14 | 0 | 13 | 1.36 | 15 | 20 | -5 | -0.36 | +0.02 | ||||||
| Allsvenskan (10 Seasons) | 88 | 7,538 | 86 | 27.9 | 83.8 | 80 | 90 | 60 | 8 | 22 | 132 | 1.81 | 98 | 65 | +33 | +0.53 | +0.14 | ||||||
| Superettan (5 Seasons) | 137 | 12,281 | 90 | 91.0 | 136.5 | 136 | 88 | 1 | 0 | 1.24 | 112 | 115 | -3 | -0.03 | +0.97 | ||||||||
Miscellaneous Stats: Domestic Leagues
| Performance | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Season | Age | Squad | Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches |
| 2009 | 20 | Vasalund | se SWE | 2. Superettan | 16th | 18.5 | 1 | 1 | |||||||||||
| 2010 | 21 | Djurgården | se SWE | 1. Allsvenskan | 10th | 8.6 | 1 | 0 | 0 | ||||||||||
| 2011 | 22 | Djurgården | se SWE | 1. Allsvenskan | 11th | 1.5 | 0 | 0 | 0 | ||||||||||
| 2012 | 23 | Djurgården | se SWE | 1. Allsvenskan | 9th | 12.0 | 1 | 0 | 0 | ||||||||||
| 2013 | 24 | GAIS | se SWE | 2. Superettan | 7th | 30.0 | 2 | 0 | |||||||||||
| 2014 | 25 | GAIS | se SWE | 2. Superettan | 11th | 29.0 | 3 | 0 | Matches | ||||||||||
| 2015 | 26 | GAIS | se SWE | 2. Superettan | 11th | 30.0 | 1 | 0 | Matches | ||||||||||
| 2016 | 27 | GAIS | se SWE | 2. Superettan | 8th | 29.0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | |
| 2017 | 28 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 1.9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches |
| 2018 | 29 | Djurgården | se SWE | 1. Allsvenskan | 7th | 6.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | |
| 2019 | 30 | Djurgården | se SWE | 1. Allsvenskan | 1st | 20.0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2020 | 31 | Djurgården | se SWE | 1. Allsvenskan | 4th | 12.0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2021 | 32 | Djurgården | se SWE | 1. Allsvenskan | 3rd | 1.7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2022 | 33 | Sirius | se SWE | 1. Allsvenskan | 11th | 14.0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 2023 | 34 | Djurgården | se SWE | 1. Allsvenskan | 4th | 6.0 | 1 | 0 | 0 | 1 | 3 | 0 | 0 | 0 | 0 | 0 | Matches | ||
| 15 Seasons | 4 Clubs | 2 Leagues | 220.2 | 14 | 1 | 0 | 1 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||
| Country | Comp | LgRank | 90s | CrdY | CrdR | 2CrdY | Fls | Fld | Off | Crs | Int | TklW | PKwon | PKcon | OG | Matches | |||
| Djurgården (9 Seasons) | 1 League | 69.8 | 4 | 0 | 0 | 1 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
| GAIS (4 Seasons) | 1 League | 118.0 | 9 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||||
| Vasalund (1 Season) | 1 League | 18.5 | 1 | 1 | |||||||||||||||
| Sirius (1 Season) | 1 League | 14.0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | |||||||
| Allsvenskan (10 Seasons) | 83.8 | 4 | 0 | 0 | 1 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||||
| Superettan (5 Seasons) | 136.5 | 10 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||||
Leaderboard Appearances, Awards, and Honors
Additional Resources
About FBref.com
FBref.com launched (June 13, 2018) with domestic league coverage for England, France, Germany, Italy, Spain, and United States. Since then we have been steadily expanding our coverage to include domestic leagues from over 40 countries as well as domestic cup, super cup and youth leagues from top European countries. We have also added coverage for major international cups such as the UEFA Champions League and Copa Libertadores.
FBref is the most complete sources for women's football data on the internet. This includes the entire history of the FIFA Women's World Cup as well as recent domestic league seasons from nine countries.
Note that player records are likely not complete for their careers. Players may come from or move to leagues we don't currently cover. This issue will go down over time, as we add new leagues and seasons.
You can sign up to receive an e-mail when new countries and features launch.
For more information, see our Launch Blog Post, the overall leagues/competition page with details on leagues and seasons we include, or our About Page. Let us know if you find an issue or have a suggestion.
FBref is one of seven Sports-Reference.com sites.

Player News