VPS vs AC Oulu

5 April 2025 · Veikkausliiga · 2025 · Referee Joni Hyytia

Full time 4 – 3

Half-time: 0–2

  • Mads Borchers 57’ (pen), 73’, 90+1’
  • Maissa Fall 69’
  • Niklas Jokelainen 33’, 41’
  • Marokhy Ndione 90’

Match summary

VPS came back from 2 goals down to win 4-3 at home to AC Oulu, with the winner arriving in stoppage time. AC Oulu led 2-0 at half-time.

In the first half, Niklas Jokelainen put AC Oulu ahead in the 33rd minute and Jokelainen made it 0-2 in the 41st minute. In the second half, Mads Borchers pulled one back to make it 1-2 from the penalty spot in the 57th minute, Maissa Fall equalised in the 69th minute, Borchers put VPS in front from a corner in the 73rd minute, Marokhy Ndione equalised in the 90th minute, and Borchers won it in stoppage time.

The chances backed that up: VPS created 3.38 expected goals (xG) from 16 shots to AC Oulu's 1.59 from 8.

Key events

VPS AC Oulu
Kick-off
33’
Niklas JokelainenLeft foot shot0-1 (AC Oulu)
39’
Chianyindi Spencer SilasFoul
41’
Niklas JokelainenRight foot shot0-2 (AC Oulu)
43’
Chianyindi Spencer SilasSecond yellowFoul
Vilmer RonnbergSamuel Lindeman
45+2’
Tyler ReidMiika Niemi
45+2’
Second half underway
Half-time0-2
53’
Mads BorchersPenalty1-2 (VPS)
57’
58’
Otto SalmensuuMusa Jatta
Maissa FallShot on target
66’
Maissa FallLeft foot shot2-2 (VPS)
69’
Mads BorchersLeft foot shot3-2 (VPS)
73’
77’
Onni TiihonenJustin Rennicks
77’
Marokhy NdioneAbu Dumbuya
Olli JakonenJoonas Vahtera
80’
85’
Julius KörkköDanny Barrow
Jesper EngströmAlfie Cicale
89’
90’
Marokhy NdioneRight foot shot3-3 (AC Oulu)
Mads BorchersRight foot shot4-3 (VPS)
90+1’
Olli JakonenShot on target
90+1’
Joonas LakkamäkiMads Borchers
90+3’
Full-time4-3

How the chances added up

Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.

0 1 2 3 4 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 3.38 1.59 33’ Niklas Jokelainen (AC Oulu), 0-1 33’ 41’ Niklas Jokelainen (AC Oulu), 0-2 41’ 57’ Mads Borchers (VPS), 1-2 57’ 69’ Maissa Fall (VPS), 2-2 69’ 73’ Mads Borchers (VPS), 3-2 73’ 90’ Marokhy Ndione (AC Oulu), 3-3 90’ 90+1’ Mads Borchers (VPS), 4-3 90+1’ 0 1 2 3 4 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 3.38 1.59 33’ Niklas Jokelainen (AC Oulu), 0-1 Jokelainen 33’ 41’ Niklas Jokelainen (AC Oulu), 0-2 Jokelainen 41’ 57’ Mads Borchers (VPS), 1-2 Borchers 57’ 69’ Maissa Fall (VPS), 2-2 Fall 69’ 73’ Mads Borchers (VPS), 3-2 Borchers 73’ 90’ Marokhy Ndione (AC Oulu), 3-3 Ndione 90’ 90+1’ Mads Borchers (VPS), 4-3 Borchers 90+1’
VPS 3.38 xGAC Oulu 1.59 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 AC Oulu attacking VPS attacking 
57’ Mads Borchers (VPS), penalty, 0.76 xG, goal 90+1’ Mads Borchers (VPS), open play, 0.74 xG, goal 90’ Marokhy Ndione (AC Oulu), set piece, 0.61 xG, goal 90+1’ Olli Jakonen (VPS), open play, 0.53 xG, saved 69’ Maissa Fall (VPS), set piece, 0.42 xG, goal 41’ Niklas Jokelainen (AC Oulu), open play, 0.38 xG, goal 73’ Mads Borchers (VPS), from a corner, 0.30 xG, goal 23’ Justin Rennicks (AC Oulu), open play, 0.19 xG, off target 66’ Maissa Fall (VPS), open play, 0.15 xG, saved 33’ Niklas Jokelainen (AC Oulu), set piece, 0.11 xG, goal 19’ Yassine El Ouatki (VPS), from a corner, 0.10 xG, off target 39’ Justin Rennicks (AC Oulu), from a corner, 0.10 xG, off target 72’ Justin Rennicks (AC Oulu), set piece, 0.10 xG, off target 31’ Mads Borchers (VPS), open play, 0.09 xG, off target 90+7’ Onni Tiihonen (AC Oulu), set piece, 0.09 xG, blocked 8’ Joonas Vahtera (VPS), open play, 0.07 xG, blocked 11’ Mads Borchers (VPS), open play, 0.07 xG, blocked 44’ Yassine El Ouatki (VPS), set piece, 0.06 xG, off target 68’ Vilmer Ronnberg (VPS), from a corner, 0.04 xG, off target 70’ Maissa Fall (VPS), open play, 0.02 xG, blocked 12’ Yassine El Ouatki (VPS), from a corner, 0.01 xG, blocked 53’ Prosper Ahiabu (VPS), open play, 0.01 xG, blocked 60’ Danny Barrow (AC Oulu), open play, 0.01 xG, off target 90+5’ Martti Haukioja (VPS), direct free kick, 0.00 xG, off target 57’ Mads Borchers (VPS), penalty, 0.76 xG, goal 90+1’ Mads Borchers (VPS), open play, 0.74 xG, goal 90’ Marokhy Ndione (AC Oulu), set piece, 0.61 xG, goal 90+1’ Olli Jakonen (VPS), open play, 0.53 xG, saved 69’ Maissa Fall (VPS), set piece, 0.42 xG, goal 41’ Niklas Jokelainen (AC Oulu), open play, 0.38 xG, goal 73’ Mads Borchers (VPS), from a corner, 0.30 xG, goal 23’ Justin Rennicks (AC Oulu), open play, 0.19 xG, off target 66’ Maissa Fall (VPS), open play, 0.15 xG, saved 33’ Niklas Jokelainen (AC Oulu), set piece, 0.11 xG, goal 19’ Yassine El Ouatki (VPS), from a corner, 0.10 xG, off target 72’ Justin Rennicks (AC Oulu), set piece, 0.10 xG, off target 39’ Justin Rennicks (AC Oulu), from a corner, 0.10 xG, off target 31’ Mads Borchers (VPS), open play, 0.09 xG, off target 90+7’ Onni Tiihonen (AC Oulu), set piece, 0.09 xG, blocked 8’ Joonas Vahtera (VPS), open play, 0.07 xG, blocked 11’ Mads Borchers (VPS), open play, 0.07 xG, blocked 44’ Yassine El Ouatki (VPS), set piece, 0.06 xG, off target 68’ Vilmer Ronnberg (VPS), from a corner, 0.04 xG, off target 70’ Maissa Fall (VPS), open play, 0.02 xG, blocked 12’ Yassine El Ouatki (VPS), from a corner, 0.01 xG, blocked 53’ Prosper Ahiabu (VPS), open play, 0.01 xG, blocked 60’ Danny Barrow (AC Oulu), open play, 0.01 xG, off target 90+5’ Martti Haukioja (VPS), direct free kick, 0.00 xG, off target
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Lineups

VPS 5-3-2 Starting XI
Leislahti
Cicale 89’
Niemi 45’
Haukioja
Lindeman 45’
Räisänen
Vahtera 80’
Ouatki
Ahiabu
Fall
Borchers 3 90’
AC Oulu 3-4-3 Starting XI
Eskelinen
Koskela
Bergsma
Jatta 58’
Silas
Dumbuya 77’
Kemppainen 85’
Silander
Jokelainen 2
Rennicks 77’
Barrow 85’

Player stats

Goalkeeper1 player
90′ 0 3 22 – – – – –
Defenders5 players
Miika Niemi Taken off
46′ – 1 – – – 29 – – – –
90′ – 1 – 5 3 76 – – – –
Samuel Lindeman Taken off
46′ – – – 2 2 30 1 – – –
Vilmer Ronnberg Came on as a substitute
51′ – 1 – 1 1 30 – – – –
Tyler Reid Came on as a substitute
51′ – 2 – 5 1 46 1 – – –
Midfielders7 players
90′ – – 33 – – – 1 2 2 – –
Alfie Cicale Taken off
90′ – – 52 3 0.26 1 1 6 1 2 –
Joonas Vahtera Taken off
81′ – – 21 1 0.04 – 1 6 – 1 –
Yassine El Ouatki
90′ – 1 44 2 0.32 – 3 4 3 2 –
90′ – – 45 1 0.53 – 3 6 2 2 –
Olli Jakonen Came on as a substitute
17′ – – 3 – – – – – 1 – –
Jesper Engström Came on as a substitute
8′ – – 2 – – – – – – – –
Forwards2 players
Maissa Fall
90′ 1 – 3 2 0.59 – 1 8 1 21 –
Mads Borchers Taken off
90′ 3 1 5 3 1.96 – – 6 1 23 –
Came on Taken off Sent off Red is the most in that position for the team

Every player who took the pitch, starters first and then substitutes. A dash means none. xG and xA are expected goals and assists.

Form going into the game

Last five league games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals, timeline, lineups, team and player statistics from Bzzoiro Sports Data (sports.bzzoiro.com). Results and odds from football-data.co.uk. Referee data before 2025/26 from the Transfermarkt datasets project.