Otso Virtanen
Known as O. Virtanen
Goalkeeper
· Gnistan
· 5th in the league
Next fixture
Sun 08 Nov, 13:00 UTC HOMESeason Performance
O. Virtanen at Gnistan this season. Stats will be limited if it's early in the season.
Minutes played: 563 · Starts: 15
| Stat | Value | Season Avg ?O. Virtanen's per-90 rate on each stat, compared to the average for other goalkeepers in Veikkausliiga. Green is clearly above that average, red is clearly below, orange is close to it. A stat needs enough qualifying players at this position before a comparison is shown. |
|---|---|---|
| Goalkeeping | ||
| Saves | 27 4.32 | 18.4 3.50 |
| Goals conceded | 15 2.40 | 7.4 1.37 |
| Clean sheets | 1 0.16 | 2.5 0.45 |
| Shooting | ||
| Goals | 0 0.00 | 0.0 0.00 |
| Expected goals (xG) | - - | - - |
| Shots | 0 0.00 | 0.1 0.03 |
| Shots on target | 0 0.00 | 0.0 0.00 |
| Passing | ||
| Assists | 0 0.00 | 0.0 0.00 |
| Expected assists (xA) | - - | - - |
| Key passes | 0 0.00 | 0.2 0.01 |
| Defending | ||
| Tackles | 0 0.00 | 0.1 0.02 |
| Interceptions | 2 0.32 | 4.7 0.64 |
| Duels won | 5 0.80 | 3.8 0.57 |
| Blocked shots | 1 0.16 | 0.1 0.01 |
| Discipline | ||
| Fouls committed | 0 0.00 | 0.2 0.03 |
| Fouls drawn | 5 0.80 | 2.3 0.30 |
| Yellow cards | 0 0.00 | 0.2 0.03 |
| Red cards | 0 0.00 | 0.1 0.01 |
Player Traits
O. Virtanen’s statistical strengths and weaknesses, in comparison to similar players. This is based on current season only.
- Saves82%
- Clean sheets10%
- Goals conceded8%
Squad standing
Where O. Virtanen ranks among 28 registered Gnistan players this season.
- 8th of 28 for Minutes played
- 17th of 28 for Interceptions
- 19th of 28 for Duels won
- 12th of 28 for Blocked shots
Historic Bets
O. Virtanen’s most frequent betting markets, based on every match on file.
- 1 Over 1.5 Saves 70.1% Based on 77 matches across 4 seasons on file
- 2 Over 2.5 Saves 48.1% Based on 77 matches across 4 seasons on file
- 3 Over 3.5 Saves 23.4% Based on 77 matches across 4 seasons on file
- 4 Over 4.5 Saves 11.7% Based on 77 matches across 4 seasons on file
- 5 To Be Booked (Yellow Card) 5.2% Based on 77 matches across 4 seasons on file
Recent Form
The same markets over O. Virtanen’s last 10 matches (83 minutes on average). Newest on the right.
- 1 Over 1.5 Saves 100% Above career
- 2 Over 2.5 Saves 80% Above career
- 3 Over 3.5 Saves 40% Above career
- 4 Over 4.5 Saves 30% Above career
- 5 To Be Booked (Yellow Card) 0%
Match log
Every finished match on file O. Virtanen actually featured in, most recent first, bounded to Bzzoiro Sports Data’s own per-match player-stats coverage, not this player’s full career (see “Season by season” below for that). This is also what the last-10-games Player Bets list on each fixture page’s Odds & Bets tab reads from. The columns are the ones that matter for O. Virtanen’s position. A dash means none; a blank means no figure is on file for that match.
| Date | Opponent | Result | Min | Saves | Goals against | CS | Passes | Duels won | Fouls | Goals | Assists | Cards | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 02 Nov 26 | Away | L | 90’ | 3 | 4 | – | 23 | – | – | – | – | – | |
| 29 Oct 26 | Away | D | 90’ | 8 | 1 | – | 26 | 2 | – | – | – | – | |
| 24 Oct 26 | Home | L | 90’ | 3 | 4 | – | 43 | 1 | – | – | – | – | |
| 17 Oct 26 | Away | L | 93’ | 6 | 4 | – | 26 | 1 | – | – | – | – | |
| 12 Oct 26 | Away | L | 90’ | 2 | 1 | – | 31 | 1 | – | – | – | – | |
| 07 Oct 26 | Home | D | 90’ | 3 | 0 | Y | 28 | – | – | – | – | – | |
| 04 Apr 26 | Home | L | 20’ | 2 | 1 | – | 10 | – | – | – | – | – | |
| 09 Nov 25 | Away | L | 90’ | 5 | 2 | – | 27 | 2 | – | – | – | – | |
| 23 Sep 25 | Home | W | 90’ | 3 | 2 | – | 26 | 3 | – | – | – | – | |
| 14 Sep 25 | Away | W | 90’ | 4 | 2 | – | 20 | 3 | – | – | – | – | |
| 16 Aug 25 | Away | W | 70’ | 1 | 0 | Y | 21 | – | – | – | – | – | |
| 11 Aug 25 | Away | L | 90’ | 2 | 5 | – | 20 | 2 | – | – | – | – | |
| 04 Aug 25 | Home | D | 90’ | 3 | 2 | – | 35 | 2 | – | – | – | – | |
| 20 Jul 25 | Away | W | 90’ | 1 | 0 | Y | 11 | 1 | – | – | – | ||
| 14 Jul 25 | Home | W | 90’ | 2 | 2 | – | 32 | 2 | – | – | – | – | |
| 05 Jul 25 | Away | D | 90’ | 2 | 1 | – | 21 | – | – | – | – | – | |
| 02 Jul 25 | Home | W | 90’ | 3 | 1 | – | 31 | – | – | – | – | – | |
| 28 Jun 25 | Away | W | 90’ | 3 | 0 | Y | 15 | – | – | – | – | – | |
| 18 Jun 25 | Home | L | 90’ | 1 | 3 | – | 27 | 1 | – | – | – | – | |
| 14 Jun 25 | Away | W | 90’ | 2 | 0 | Y | 25 | – | – | – | – | – | |
| 01 Jun 25 | Away | W | 90’ | 0 | 0 | Y | 35 | 2 | – | – | – | – | |
| 24 May 25 | Home | D | 90’ | 1 | 0 | Y | 35 | – | – | – | – | – | |
| 21 May 25 | Home | W | 90’ | 2 | 0 | Y | 24 | 1 | – | – | – | – | |
| 17 May 25 | Away | L | 90’ | 3 | 3 | – | 25 | – | 1 | – | – | ||
| 27 Apr 25 | Away | L | 5’ | 0 | 3 | – | 1 | – | 1 | – | – | ||
| 19 Apr 25 | Away | W | 90’ | 2 | 0 | Y | 28 | – | – | – | – | – | |
| 12 Apr 25 | Home | W | 90’ | 1 | 1 | – | 16 | – | – | – | – | – | |
| 05 Apr 25 | Home | W | 90’ | 3 | 2 | – | 32 | – | – | – | – | – | |
| 19 Oct 24 | Home | W | 90’ | 4 | 0 | Y | 41 | – | – | – | – | – | |
| 04 Oct 24 | Away | W | 90’ | 4 | 0 | Y | 30 | 1 | – | – | – | – | |
| 28 Sep 24 | Away | W | 90’ | 0 | 0 | Y | 19 | 1 | – | – | – | – | |
| 24 Sep 24 | Home | W | 90’ | 2 | 0 | Y | 30 | – | – | – | – | ||
| 14 Sep 24 | Home | W | 90’ | 4 | 2 | – | 25 | – | – | – | – | – | |
| 01 Sep 24 | Away | D | 90’ | 5 | 1 | – | 25 | 1 | – | – | – | – | |
| 24 Aug 24 | Home | W | 90’ | 0 | 0 | Y | 24 | – | – | – | – | – | |
| 18 Aug 24 | Away | L | 90’ | 3 | 1 | – | 23 | – | – | – | – | – | |
| 21 Jul 24 | Home | W | 14’ | 0 | 2 | – | 4 | – | 1 | – | – | ||
| 06 Jul 24 | Home | W | 90’ | 3 | 0 | Y | 28 | – | – | – | – | – | |
| 29 Jun 24 | Away | D | 90’ | 1 | 2 | – | 27 | – | – | – | – | – | |
| 19 Jun 24 | Home | D | 90’ | 1 | 2 | – | 28 | – | – | – | – | – | |
| 12 Jun 24 | Away | W | 90’ | 2 | 0 | Y | 27 | – | – | – | – | – | |
| 07 Jun 24 | Away | D | 90’ | 3 | 1 | – | 30 | 2 | – | – | – | – | |
| 31 May 24 | Home | L | 90’ | 1 | 2 | – | 35 | – | – | – | – | – | |
| 25 May 24 | Away | D | 90’ | 1 | 1 | – | 17 | – | – | – | – | – | |
| 22 May 24 | Home | W | 90’ | 3 | 0 | Y | 31 | 2 | – | – | – | – | |
| 17 May 24 | Home | W | 90’ | 4 | 0 | Y | 30 | 2 | – | – | – | – | |
| 12 May 24 | Away | W | 90’ | 2 | 0 | Y | 20 | – | – | – | – | – | |
| 04 May 24 | Home | W | 90’ | 1 | 2 | – | 19 | – | – | – | – | ||
| 28 Apr 24 | Away | W | 90’ | 4 | 0 | Y | 29 | 1 | – | – | – | – | |
| 19 Apr 24 | Away | L | 90’ | 3 | 1 | – | 38 | 1 | – | – | – | – | |
| 13 Apr 24 | Home | L | 90’ | 2 | 6 | – | 28 | 1 | 1 | – | – | – | |
| 06 Apr 24 | Home | D | 90’ | 2 | 0 | Y | 26 | – | – | – | – | – | |
| 27 Sep 23 | Home | W | 90’ | 4 | 1 | – | 29 | – | – | – | – | – | |
| 22 Sep 23 | Away | W | 90’ | 2 | 0 | Y | 26 | – | – | – | – | – | |
| 15 Sep 23 | Away | D | 90’ | 1 | 2 | – | 42 | – | – | – | – | – | |
| 03 Sep 23 | Away | L | 90’ | 5 | 3 | – | 24 | – | – | – | – | – | |
| 27 Aug 23 | Away | L | 90’ | 5 | 2 | – | 29 | – | – | – | – | – | |
| 19 Aug 23 | Away | W | 90’ | 4 | 0 | Y | 44 | 1 | – | – | – | – | |
| 13 Aug 23 | Home | L | 90’ | 1 | 3 | – | 41 | – | – | – | – | – | |
| 04 Aug 23 | Home | L | 90’ | 5 | 2 | – | 34 | – | – | – | – | – | |
| 28 Jul 23 | Home | L | 90’ | 2 | 2 | – | 27 | – | – | – | – | – | |
| 22 Jul 23 | Away | L | 90’ | 3 | 1 | – | 20 | 1 | – | – | – | – | |
| 15 Jul 23 | Home | D | 90’ | 0 | 0 | Y | 22 | 2 | – | – | – | – | |
| 08 Jul 23 | Away | D | 90’ | 3 | 0 | Y | 14 | 2 | – | – | – | – | |
| 01 Jul 23 | Home | D | 90’ | 3 | 1 | – | 16 | – | – | – | – | – | |
| 27 Jun 23 | Away | L | 90’ | 5 | 2 | – | 21 | 1 | – | – | – | – | |
| 11 Jun 23 | Home | D | 90’ | 1 | 1 | – | 31 | 1 | – | – | – | – | |
| 07 Jun 23 | Away | D | 90’ | 1 | 1 | – | 18 | 1 | – | – | – | – | |
| 03 Jun 23 | Home | D | 90’ | 0 | 2 | – | 25 | 1 | – | – | – | – | |
| 26 May 23 | Away | W | 90’ | 2 | 0 | Y | 16 | 1 | – | – | – | – | |
| 21 May 23 | Home | D | 90’ | 1 | 1 | – | 14 | – | – | – | – | – | |
| 13 May 23 | Away | L | 90’ | 4 | 1 | – | 22 | 1 | – | – | – | – | |
| 05 May 23 | Home | L | 90’ | 2 | 2 | – | 26 | – | – | – | – | – | |
| 29 Apr 23 | Home | W | 90’ | 1 | 0 | Y | 23 | – | – | – | – | – | |
| 23 Apr 23 | Away | L | 90’ | 5 | 1 | – | 35 | 1 | – | – | – | – | |
| 15 Apr 23 | Home | W | 90’ | 3 | 1 | – | 23 | – | – | – | – | – | |
| 05 Apr 23 | Away | D | 90’ | 3 | 1 | – | 25 | 1 | – | – | – | – |
Scroll the table sideways for every column
Season by season
Every season on file for O. Virtanen, most recent first, as far back as the data goes. For this league the per-match columns (shots, tackles, key passes and so on) cover the last two seasons, and shots and xG go back three; a season further back than that isn’t available.
| Season | 2026 |
|---|---|
| Team | Gnistan |
| Mins | 563 |
| Starts | 15 |
| Goals | 0 |
| Assists | 0 |
| xG | - |
| xA | - |
| Shots | 0 |
| SOT | 0 |
| Tackles | 0 |
| Int. | 2 |
| Duels won | 5 |
| Blocked | 1 |
| Key passes | 0 |
| Fouls | 0 |
| Fouls drawn | 5 |
| Saves | 27 |
| Conceded | 15 |
| Clean sheets | 1 |
| Yel | 0 |
| Red | 0 |
Scroll the table sideways for every column