KuPS vs Haka

2 August 2025 · Veikkausliiga · 2025 · Referee Oliver Reitala

Full time 3 – 2

Half-time: 2–0

  • Agon Sadiku 11’
  • Mohamed Toure 31’, 59’
  • Danila Bulgakov 51’
  • James Akintunde 77’

Match summary

KuPS beat Haka 3-2. KuPS led 2-0 at half-time.

In the first half, Agon Sadiku put KuPS ahead in the 11th minute and Mohamed Toure made it 2-0 in the 31st minute. In the second half, Danila Bulgakov pulled one back to make it 2-1 with a direct free kick in the 51st minute, Toure made it 3-1 with a header in the 59th minute, and James Akintunde made it 3-2 in the 77th minute.

The chances backed that up: KuPS created 3.27 expected goals (xG) from 21 shots to Haka's 0.71 from 12.

Key events

KuPS Haka
Kick-off
Arttu HeinonenShot on target
6’
Agon SadikuLeft foot shot1-0 (KuPS)
11’
16’
Nikolas TaloShot on target
25’
Danila BulgakovShot on target
Mohamed ToureAgon Sadiku
27’
Mohamed ToureLeft foot shot2-0 (KuPS)
31’
Arttu HeinonenShot on target
31’
45+3’
Simon LindholmDjair Parfitt-Williams
45+3’
Arlind SejdiuAbraham Okyere
Half-time2-0
Second half underway
51’
Danila BulgakovFree Kick2-1 (Haka)
Mohamed ToureHeader3-1 (KuPS)
59’
60’
James AkintundeKalle Multanen
Samuel PasanenShot on target
65’
67’
Roni HuddDanila Bulgakov
Sadat SeiduSamuel Pasanen
76’
77’
James AkintundeRight foot shot3-2 (Haka)
80’
Petteri PennanenShot on target
85’
89’
Lucas FalcaoRiku Selander
Full-time3-2

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.27 0.71 11’ Agon Sadiku (KuPS), 1-0 11’ 31’ Mohamed Toure (KuPS), 2-0 31’ 51’ Danila Bulgakov (Haka), 2-1 51’ 59’ Mohamed Toure (KuPS), 3-1 59’ 77’ James Akintunde (Haka), 3-2 77’ 0 1 2 3 4 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 3.27 0.71 11’ Agon Sadiku (KuPS), 1-0 Sadiku 11’ 31’ Mohamed Toure (KuPS), 2-0 Toure 31’ 51’ Danila Bulgakov (Haka), 2-1 Bulgakov 51’ 59’ Mohamed Toure (KuPS), 3-1 Toure 59’ 77’ James Akintunde (Haka), 3-2 Akintunde 77’
KuPS 3.27 xGHaka 0.71 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Haka attacking KuPS attacking 
11’ Agon Sadiku (KuPS), open play, 0.66 xG, goal 31’ Mohamed Toure (KuPS), open play, 0.62 xG, goal 29’ Rasmus Tikkanen (KuPS), open play, 0.53 xG, off target 31’ Arttu Heinonen (KuPS), open play, 0.45 xG, saved 72’ Saku Savolainen (KuPS), open play, 0.25 xG, off target 37’ Danila Bulgakov (Haka), open play, 0.18 xG, off target 59’ Mohamed Toure (KuPS), open play, 0.17 xG, goal 8’ Arttu Heinonen (KuPS), from a corner, 0.15 xG, off target 25’ Danila Bulgakov (Haka), open play, 0.09 xG, saved 50’ Kalle Multanen (Haka), open play, 0.09 xG, off target 13’ Agon Sadiku (KuPS), open play, 0.08 xG, off target 6’ Arttu Heinonen (KuPS), open play, 0.07 xG, saved 16’ Nikolas Talo (Haka), open play, 0.07 xG, saved 77’ James Akintunde (Haka), open play, 0.07 xG, goal 72’ Jerry Voutilainen (KuPS), open play, 0.06 xG, blocked 86’ Roni Hudd (Haka), open play, 0.06 xG, off target 51’ Danila Bulgakov (Haka), direct free kick, 0.05 xG, goal 40’ Jean-Pierre Da Sylva (Haka), open play, 0.04 xG, off target 52’ Rasmus Tikkanen (KuPS), open play, 0.04 xG, hit the woodwork 65’ Samuel Pasanen (KuPS), open play, 0.04 xG, saved 85’ Petteri Pennanen (KuPS), open play, 0.03 xG, saved 73’ Mohamed Toure (KuPS), open play, 0.03 xG, off target 15’ Doni Arifi (KuPS), open play, 0.03 xG, blocked 16’ Djair Parfitt-Williams (Haka), set piece, 0.02 xG, off target 20’ Arttu Heinonen (KuPS), open play, 0.02 xG, off target 56’ Jaakko Oksanen (KuPS), open play, 0.02 xG, off target 8’ Jerry Voutilainen (KuPS), open play, 0.01 xG, blocked 46’ Riku Selander (Haka), open play, 0.01 xG, blocked 90’ Arlind Sejdiu (Haka), from a corner, 0.01 xG, blocked 44’ Jerry Voutilainen (KuPS), open play, 0.00 xG, blocked 82’ Petteri Pennanen (KuPS), open play, 0.00 xG, blocked 81’ Arlind Sejdiu (Haka), direct free kick, 0.00 xG, off target 35’ Doni Arifi (KuPS), open play, 0.00 xG, off target 11’ Agon Sadiku (KuPS), open play, 0.66 xG, goal 31’ Mohamed Toure (KuPS), open play, 0.62 xG, goal 29’ Rasmus Tikkanen (KuPS), open play, 0.53 xG, off target 31’ Arttu Heinonen (KuPS), open play, 0.45 xG, saved 72’ Saku Savolainen (KuPS), open play, 0.25 xG, off target 37’ Danila Bulgakov (Haka), open play, 0.18 xG, off target 59’ Mohamed Toure (KuPS), open play, 0.17 xG, goal 8’ Arttu Heinonen (KuPS), from a corner, 0.15 xG, off target 25’ Danila Bulgakov (Haka), open play, 0.09 xG, saved 50’ Kalle Multanen (Haka), open play, 0.09 xG, off target 13’ Agon Sadiku (KuPS), open play, 0.08 xG, off target 6’ Arttu Heinonen (KuPS), open play, 0.07 xG, saved 16’ Nikolas Talo (Haka), open play, 0.07 xG, saved 77’ James Akintunde (Haka), open play, 0.07 xG, goal 72’ Jerry Voutilainen (KuPS), open play, 0.06 xG, blocked 86’ Roni Hudd (Haka), open play, 0.06 xG, off target 51’ Danila Bulgakov (Haka), direct free kick, 0.05 xG, goal 40’ Jean-Pierre Da Sylva (Haka), open play, 0.04 xG, off target 52’ Rasmus Tikkanen (KuPS), open play, 0.04 xG, hit the woodwork 65’ Samuel Pasanen (KuPS), open play, 0.04 xG, saved 85’ Petteri Pennanen (KuPS), open play, 0.03 xG, saved 15’ Doni Arifi (KuPS), open play, 0.03 xG, blocked 73’ Mohamed Toure (KuPS), open play, 0.03 xG, off target 16’ Djair Parfitt-Williams (Haka), set piece, 0.02 xG, off target 20’ Arttu Heinonen (KuPS), open play, 0.02 xG, off target 56’ Jaakko Oksanen (KuPS), open play, 0.02 xG, off target 8’ Jerry Voutilainen (KuPS), open play, 0.01 xG, blocked 46’ Riku Selander (Haka), open play, 0.01 xG, blocked 90’ Arlind Sejdiu (Haka), from a corner, 0.01 xG, blocked 44’ Jerry Voutilainen (KuPS), open play, 0.00 xG, blocked 82’ Petteri Pennanen (KuPS), open play, 0.00 xG, blocked 81’ Arlind Sejdiu (Haka), direct free kick, 0.00 xG, off target 35’ Doni Arifi (KuPS), open play, 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

KuPS 4-3-3 Starting XI
Kreidl
Armah
Lötjönen
Oksanen
Tikkanen 64’
Pasanen 76’
Arifi
Voutilainen
Heinonen 76’
Ruoppi 64’
Sadiku 27’
Haka 4-1-4-1 Starting XI
Lepola
Friberg
Talo
Sallinen
Purosalo
Okyere 45’
Parfitt-Williams 45’
Sylva
Selander 89’
Bulgakov 67’
Multanen 60’

Player stats

Goalkeeper1 player
90′ 2 2 38 1 – – – –
Defenders5 players
90′ – 1 – 9 1 73 3 – 1 –
90′ – 1 – 1 – 96 1 – 1 –
90′ – 1 1 1 – 76 – – – –
Rasmus Tikkanen Taken off
65′ – – – 6 – 37 – – – –
Saku Savolainen Came on as a substitute
31′ – 1 – 4 3 15 – – – –
Midfielders8 players
Samuel Pasanen Taken off
77′ – – 72 1 – – 2 4 1 3 –
Doni Arifi
90′ – – 84 2 0.08 – 2 3 – 1 –
90′ – – 60 3 0.58 – – 4 1 – –
Otto Ruoppi Taken off
65′ – – 32 – – – – 1 1 – –
Arttu Heinonen Taken off
77′ – – 51 3 0.14 1 1 5 1 – –
Petteri Pennanen Came on as a substitute
31′ – – 16 – – – – 1 – – –
Joslyn Luyeye-Lutumba Came on as a substitute
19′ – – 4 – – – – 1 1 –
Sadat Seidu Came on as a substitute
19′ – – 9 – – – – – 1 – –
Forwards2 players
Agon Sadiku Taken off
26′ 1 – 2 1 0.74 – – 1 – 4 –
Mohamed Toure Came on as a substitute
70′ 2 – 3 2 0.81 0.03 1 9 – 22 –
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.