Expected goals
AC Oulu expected goals (xG) 2026/2027
Veikkausliiga · after 22 matches · updated 1 Oct
AC Oulu's attacking and defensive expected goals in Veikkausliiga 2026/2027, compared with the results they produced and with the rest of the competition.
AC Oulu xG and xGA per match
Every match ↓| Rank | Club | xG per match |
|---|---|---|
| #1 | KuPS | 1.96 |
| #2 | FC Lahti | 1.80 |
| #3 | Inter Turku | 1.78 |
| #4 | HJK | 1.77 |
| #5 | Ilves | 1.72 |
| #6 | SJK | 1.71 |
| #7 | IF Gnistan | 1.61 |
| #8 | VPS | 1.56 |
| #9 | TPS | 1.50 |
| #10 | FF Jaro | 1.21 |
| #11 | AC Oulu | 1.20 |
| #12 | IFK Mariehamn | 1.10 |
- League avg
- 1.57
- Total
- 26.46 22 matches
| Rank | Club | xGA per match |
|---|---|---|
| #1 | Inter Turku | 0.93 |
| #2 | KuPS | 1.26 |
| #3 | HJK | 1.32 |
| #4 | FC Lahti | 1.42 |
| #5 | IF Gnistan | 1.43 |
| #6 | VPS | 1.44 |
| #7 | AC Oulu | 1.58 |
| #8 | TPS | 1.58 |
| #9 | SJK | 1.67 |
| #10 | FF Jaro | 1.71 |
| #11 | Ilves | 1.94 |
| #12 | IFK Mariehamn | 2.50 |
- League avg
- 1.57
- Total
- 34.68 22 matches
| Rank | Club | xGD per match |
|---|---|---|
| #1 | Inter Turku | +0.86 |
| #2 | KuPS | +0.70 |
| #3 | HJK | +0.45 |
| #4 | FC Lahti | +0.38 |
| #5 | IF Gnistan | +0.18 |
| #6 | VPS | +0.12 |
| #7 | SJK | +0.04 |
| #8 | TPS | -0.08 |
| #9 | Ilves | -0.21 |
| #10 | AC Oulu | -0.37 |
| #11 | FF Jaro | -0.50 |
| #12 | IFK Mariehamn | -1.41 |
- League avg
- 0.00
- Total
- -8.22 22 matches
| Rank | Club | xPts per match |
|---|---|---|
| #1 | Inter Turku | 1.96 |
| #2 | KuPS | 1.78 |
| #3 | HJK | 1.74 |
| #4 | FC Lahti | 1.51 |
| #5 | IF Gnistan | 1.43 |
| #6 | SJK | 1.42 |
| #7 | VPS | 1.36 |
| #8 | Ilves | 1.35 |
| #9 | TPS | 1.32 |
| #10 | AC Oulu | 1.13 |
| #11 | FF Jaro | 1.05 |
| #12 | IFK Mariehamn | 0.69 |
- League avg
- 1.39
- Total
- 24.91 vs 34 actual pts
Expected goals here are summed over 22 of 25 matches — the rest were played with no xG figure published for them, so the margins compare two different lengths of season.
What the xG says
AC Oulu's underlying numbers are among the weakest in Veikkausliiga. They rank #10 for xG difference at -0.37 per match, from low shot volume and low chance quality. Their 22 goals are 4.46 below 26.46 xG, while 31 points are 6.09 above 24.91 xPts — both over the 22 matches with xG.
Actual vs expected
Select a row to chart it across the season.
Goals minus xG, match by match
AC Oulu are 4.46 goals below their xG after 22 matches.
- Goals
- 22
- xG
- 26.46
- Gap
- -4.46
- This match
- Match gap
- Running gap
| Date | Opponent | Goals | xG | Match gap | Running gap |
|---|---|---|---|---|---|
| Sat 04/04 | IF Gnistan | 5 | 1.22 | +3.78 | +3.78 |
| Sat 11/04 | HJK | 1 | 0.91 | +0.09 | +3.87 |
| Sat 18/04 | VPS | 1 | 0.83 | +0.17 | +4.04 |
| Wed 22/04 | KuPS | 2 | 1.87 | +0.13 | +4.17 |
| Sat 25/04 | FC Lahti | 1 | 0.69 | +0.31 | +4.48 |
| Sat 16/05 | TPS | 1 | 0.87 | +0.13 | +4.61 |
| Sat 23/05 | SJK | 1 | 1.38 | -0.38 | +4.23 |
| Sun 31/05 | FF Jaro | 2 | 1.38 | +0.62 | +4.85 |
| Sat 13/06 | Inter Turku | 0 | 0.68 | -0.68 | +4.17 |
| Thu 18/06 | IFK Mariehamn | 2 | 2.90 | -0.90 | +3.27 |
| Tue 23/06 | VPS | 1 | 0.64 | +0.36 | +3.63 |
| Sat 27/06 | FC Lahti | 1 | 1.75 | -0.75 | +2.88 |
| Sat 11/07 | TPS | 0 | 0.63 | -0.63 | +2.25 |
| Sat 18/07 | IF Gnistan | 0 | 1.19 | -1.19 | +1.06 |
| Sat 25/07 | IFK Mariehamn | 1 | 2.72 | -1.72 | -0.66 |
| Sun 02/08 | Ilves | 1 | 1.41 | -0.41 | -1.07 |
| Sun 09/08 | HJK | 0 | 0.22 | -0.22 | -1.29 |
| Sat 22/08 | FF Jaro | 1 | 0.68 | +0.32 | -0.97 |
| Mon 31/08 | SJK | 0 | 0.77 | -0.77 | -1.74 |
| Tue 08/09 | VPS | 0 | 2.41 | -2.41 | -4.15 |
| Sat 12/09 | IF Gnistan | 1 | 0.95 | +0.05 | -4.10 |
| Fri 18/09 | Inter Turku | 0 | 0.36 | -0.36 | -4.46 |
AC Oulu xG trend
Current form -0.55 npxGD per match
The last 6 matches with xG.
Out-created the opponent in 6 of 22 matches. The worst was against Inter Turku on Fri 18/09 (-2.37).
- npxG · last 6
- 0.77
- npxGA · last 6
- 1.32
- npxG
- npxGA
- npxGD
- Avg so far
| Date | Opponent | npxG | npxGA | npxGD | Avg so far |
|---|---|---|---|---|---|
| Sat 04/04 | IF Gnistan | 1.22 | 1.33 | -0.11 | -0.11 |
| Sat 11/04 | HJK | 0.91 | 1.34 | -0.43 | -0.27 |
| Sat 18/04 | VPS | 0.83 | 0.94 | -0.11 | -0.22 |
| Wed 22/04 | KuPS | 1.11 | 1.59 | -0.48 | -0.28 |
| Sat 25/04 | FC Lahti | 0.69 | 0.74 | -0.05 | -0.24 |
| Sat 16/05 | TPS | 0.88 | 0.85 | +0.03 | -0.19 |
| Sat 23/05 | SJK | 1.38 | 2.31 | -0.93 | -0.30 |
| Sun 31/05 | FF Jaro | 0.73 | 0.89 | -0.16 | -0.28 |
| Sat 13/06 | Inter Turku | 0.68 | 2.30 | -1.62 | -0.43 |
| Thu 18/06 | IFK Mariehamn | 2.90 | 2.14 | +0.76 | -0.31 |
| Tue 23/06 | VPS | 0.64 | 2.98 | -2.34 | -0.49 |
| Sat 27/06 | FC Lahti | 1.17 | 0.76 | +0.41 | -0.42 |
| Sat 11/07 | TPS | 0.63 | 1.14 | -0.51 | -0.43 |
| Sat 18/07 | IF Gnistan | 1.19 | 1.33 | -0.14 | -0.41 |
| Sat 25/07 | IFK Mariehamn | 1.95 | 1.79 | +0.16 | -0.37 |
| Sun 02/08 | Ilves | 1.47 | 1.59 | -0.12 | -0.35 |
| Sun 09/08 | HJK | 0.22 | 1.66 | -1.44 | -0.42 |
| Sat 22/08 | FF Jaro | 0.68 | 0.93 | -0.25 | -0.41 |
| Mon 31/08 | SJK | 0.77 | 0.38 | +0.39 | -0.37 |
| Tue 08/09 | VPS | 1.65 | 1.06 | +0.59 | -0.32 |
| Sat 12/09 | IF Gnistan | 0.95 | 1.18 | -0.23 | -0.31 |
| Fri 18/09 | Inter Turku | 0.36 | 2.73 | -2.37 | -0.41 |
Each bar is one match's non-penalty xG minus the non-penalty xG against; the line is that difference averaged over the season up to each match, and it finishes on the dashed season average — 1.05 npxG and 1.45 npxGA per match. Current form is the same difference over the last 6 matches with xG.
Strength of schedule
- Season so far
- number 2 hardest of 12 in Veikkausliiga
- +0.05 xG vs league average
- Over 25 league matches
- Last 5
- number 5 hardest of 12 in Veikkausliiga
- +0.07 xG vs league average
- Over 5 league matches
Opponents behind the figures
Season so far
+0.05 xG vs league average · over 25 matches · number 2 hardest of 12
- Inter Turku Home +0.53
- IF Gnistan Home +0.06
- VPS Away +0.10
- SJK Home +0.02
- FF Jaro Away −0.38
- Inter Turku Home +0.53
- HJK Home +0.27
- Ilves Home −0.22
- IFK Mariehamn Away −0.75
- IF Gnistan Home +0.06
- TPS Away −0.08
- FC Lahti Home +0.22
- VPS Away +0.10
- IFK Mariehamn Home −0.75
- Inter Turku Away +0.53
- FF Jaro Home −0.38
- SJK Away +0.02
- TPS Home −0.08
- Ilves Away −0.22
- KuPS Home +0.50
- FC Lahti Away +0.22
- KuPS Away +0.50
- VPS Home +0.10
- HJK Away +0.27
- IF Gnistan Away +0.06
Last 5
+0.07 xG vs league average · over 5 matches · number 5 hardest of 12
- Inter Turku Home +0.53
- IF Gnistan Home +0.06
- VPS Away +0.10
- SJK Home +0.02
- FF Jaro Away −0.38
AC Oulu shots and chance quality
Low volume, low quality. AC Oulu take 10.2 shots a match (league 12.0) at 0.10 npxG a shot (league 0.12), #11 in Veikkausliiga for volume and #11 for quality. 63% of their shots come from inside the box (league 61%).
Attack
| Rank | Club | shots per match |
|---|---|---|
| #1 | KuPS | 15.2 |
| #2 | FC Lahti | 13.3 |
| #3 | Inter Turku | 13.1 |
| #4 | TPS | 13.0 |
| #5 | HJK | 12.6 |
| #6 | SJK | 12.4 |
| #7 | IF Gnistan | 11.8 |
| #8 | FF Jaro | 11.6 |
| #9 | Ilves | 11.5 |
| #10 | VPS | 11.0 |
| #11 | AC Oulu | 10.2 |
| #12 | IFK Mariehamn | 8.9 |
- League avg
- 12.0
- Total
- 224 shots from 22 matches
| Rank | Club | npxG per shot |
|---|---|---|
| #1 | SJK | 0.14 |
| #2 | HJK | 0.14 |
| #3 | KuPS | 0.13 |
| #4 | VPS | 0.13 |
| #5 | Ilves | 0.13 |
| #6 | Inter Turku | 0.13 |
| #7 | IF Gnistan | 0.13 |
| #8 | FC Lahti | 0.13 |
| #9 | IFK Mariehamn | 0.11 |
| #10 | TPS | 0.11 |
| #11 | AC Oulu | 0.10 |
| #12 | FF Jaro | 0.09 |
- League avg
- 0.12
- Total
- 23.01 npxG from 224 shots
Defence
| Rank | Club | shots per match |
|---|---|---|
| #1 | Inter Turku | 8.5 |
| #2 | KuPS | 9.7 |
| #3 | FC Lahti | 9.8 |
| #4 | VPS | 11.4 |
| #5 | AC Oulu | 11.4 |
| #6 | SJK | 11.7 |
| #7 | HJK | 12.0 |
| #8 | TPS | 12.6 |
| #9 | IF Gnistan | 12.9 |
| #10 | FF Jaro | 13.6 |
| #11 | Ilves | 13.9 |
| #12 | IFK Mariehamn | 16.3 |
- League avg
- 12.0
- Total
- 251 shots allowed from 22 matches
| Rank | Club | npxGA per shot |
|---|---|---|
| #1 | Inter Turku | 0.10 |
| #2 | IF Gnistan | 0.10 |
| #3 | HJK | 0.11 |
| #4 | TPS | 0.11 |
| #5 | VPS | 0.11 |
| #6 | KuPS | 0.12 |
| #7 | FF Jaro | 0.12 |
| #8 | AC Oulu | 0.13 |
| #9 | Ilves | 0.13 |
| #10 | FC Lahti | 0.13 |
| #11 | SJK | 0.14 |
| #12 | IFK Mariehamn | 0.15 |
- League avg
- 0.12
- Total
- 31.96 npxGA from 251 shots
Shot profile
63% inside the box
League avg 61%
From 140 of 224 shots over 22 matches
57% allowed inside the box
League avg 61%
From 142 of 251 shots allowed over 22 matches
AC Oulu home and away xG
| Measure | Home | Away |
|---|---|---|
| Matches | 13 11 with xG | 12 11 with xG |
| xG / match | 1.15 | 1.26 |
| xGA / match | 1.43 | 1.72 |
| xGD / match | -0.28 | -0.47 |
| xPts / match Model — Model output — computed from each match's xG, not a result. How xPts works → | 1.20 | 1.07 |
Every figure divides by that half's matches with xG. A half with fewer than 3 matches with xG is muted.
Every AC Oulu match by xG
Last 10
- Matches
- 10 9 with xG
- xG / match
- 1.19
- xGA / match
- 1.54
- xGD / match
- -0.35
- Points
- 8 of 30
- Fri 18/09 Inter Turku H Weakest underlying xG 0.36 xGA 2.73 xGD -2.37 xPts 0.11
- Sat 12/09 IF Gnistan H xG 0.95 xGA 1.94 P xGD -0.99 xPts 0.65
- Tue 08/09 VPS A Against the chances xG 2.41 P xGA 1.06 xGD +1.35 xPts 2.31
- Mon 31/08 SJK H xG 0.77 xGA 0.37 xGD +0.40 xPts 1.75
- Sat 22/08 FF Jaro A xG 0.68 xGA 0.93 xGD -0.25 xPts 1.07
- Sun 16/08 Inter Turku H
- Sun 09/08 HJK H xG 0.22 xGA 1.66 xGD -1.44 xPts 0.26
- Sun 02/08 Ilves H xG 1.41 xGA 1.27 xGD +0.14 xPts 1.48
- Sat 25/07 IFK Mariehamn A xG 2.72 P xGA 2.55 P xGD +0.17 xPts 1.50
- Sat 18/07 IF Gnistan H xG 1.19 xGA 1.33 xGD -0.14 xPts 1.23
Newest first. The dot is xG and the ring is xGA, on one scale from 0 to 3.00. Best and weakest underlying mark the highest and lowest xGD once 5 matches have xG. Against the chances marks a win with xGD of −1.00 or lower, or a loss with +1.00 or higher. P marks a side with at least 0.50 xG from penalties.
AC Oulu in Veikkausliiga
Attack
- xG / match #11 of 12
- Shots / match #11 of 12
- Chance quality #11 of 12
- Home xG #12 of 12
- Away xG #11 of 12
Defence
- xGA / match #7 of 12
- Shots allowed #5 of 12
- Chance quality allowed #8 of 12
About the data
- xG data
- Provided by TheStatsAPI, and stored as published.
- Derived metrics
- xGD, per-match rates, rankings and rolling averages are calculated from the match data.
- Model metrics
- xPts is produced by our probability model.