CHEONAN CITY FC · 2026 · K LEAGUE 2 · 26 MATCHES

Same Football, Different Season

Cheonan City FC's 2026 splits in two on 31 May. In the 13 matches before it they took 18 points; in the 13 since, they have not won once. Yet the football in the two halves is almost identical — the chances made, the chances allowed. What changed was how often the opponents' shots went in. I put all 212 league matches on one scale and opened both halves through the four phases and the match status.

K League 2 2026 · 26 Cheonan City FC matchesMatches up to 19 Sep 2026212 league matches · 304,486 raw eventsHyuckjin Han
Season
4W 11D 11L
23 points · 30 scored, 37 conceded
14th in the September table
Points per match
1.38 → 0.33
R1–14 → R15–27 (matches with events)
expected points per match 1.18 → 1.24
Since the last win
13 matches
5D 8L
3-1 at Ansan on 31 May was the last win
Goal difference − expected, trailing
+6.8
best in the league
when leading: −3.8 (14th)
Starting pointR14 away at Ansan · 31 May

The last win

On 31 May Cheonan won 3-1 away at Ansan: 16′ 1-0 · 30′ 1-1 · 60′ 2-1 · 90+4′ 3-1. It took them to 18 points from 13 matches (1.38 a match). With half the season still to come, Jin-seop Park's first year looked to be going well.

13 matches have passed since. Cheonan have not won any of them: 5 draws, 8 defeats. In the September table they are 4W 11D 11L, 14th on 23 points.

A slide like that usually has a visible cause — a key player out, opponents who worked them out, performances that fell apart. Cheonan's numbers show almost no sign of performances falling apart. This piece puts the two halves side by side and goes through what stayed the same and what changed, phase by phase and by match status.

Cheonan's 2026 — home (dark) and away by round
Letter = result · below = round and score · bye in R6
D
1
2-2
L
2
0-1
D
3
2-2
D
4
0-0
W
5
1-0
D
7
2-2
W
8
2-1
D
9
1-1
W
10
1-0
L
11
0-1
D
12
0-0
L
13
2-3
W
14
3-1
D
15
2-2
L
16
1-2
L
17
0-1
L
18
0-1
L
19
3-4
D
20
2-2
L
21
2-3
D
22
1-1
L
23
0-1
L
24
0-1
D
25
1-1
D
26
1-1
L
27
1-3
Four Ws up to R14. From R15, only Ds and Ls.
Two seasonsR1–14: 13 matches · R15–27: 12 (with events)

The numbers stayed put

I cut the 25 matches with event data at R14. In the first 13 Cheonan went 4W 6D 3L for 18 points. In the next 12 they went 0W 4D 8L for just 4 (the R25 draw with Hwaseong has no event data and is left out).

Re-take the same shots 20,000 times and the expected points are 15.3 for the first part and 14.9 for the second — 1.18 and 1.24 a match. The second part is, if anything, slightly better. Chances made and chances allowed are almost the same.

Cheonan in two parts
Teal = R1–14 · orange = R15–27 · matches with events · each group has its own scale
R1–14R15–27
Points per matchactual
R1–14 1.38
R15–27 0.33
Expected points per matchsame shots, 20,000 times
R1–14 1.18
R15–27 1.24
xG per matchnon-penalty · chances made
R1–14 1.10
R15–27 1.08
Opponent xG per matchnon-penalty · chances allowed
R1–14 1.32
R15–27 1.26
Possession% · match average
R1–14 50.8
R15–27 46.8
Only points per match split apart.

The first 13 matches brought 2.7 points more than expected; the next 12 brought 10.9 fewer. Re-taking the same shots 20,000 times, a return of 4 points or fewer from the second part came up 0.3% of the time. Over the season: 30.2 expected, 22 taken, a gap of −8.2 — the 4th-largest in the league.

Points − expected points, 17 clubs
Up to 20 Sep · matches with events · further left = results worse than performances
Cheonan City FCThe other 16 clubs
Gimhae
−10.1
Yongin
−9.0
Chungbuk Cheongju
−8.5
Cheonan
−8.2
Jeonnam
−7.4
Gimpo
−5.1
Seongnam
−3.2
Ansan
+1.2
Chungnam Asan
+1.6
Gyeongnam
+2.1
Paju
+2.3
Daegu
+2.8
Hwaseong
+3.3
Seoul E-Land
+4.7
Suwon FC
+5.3
Busan
+6.9
Suwon Samsung
+6.9
← fewer than deservedmore than deserved →
Cheonan's season total is −8.2. All of it came in the second part.
Where it changedNon-penalty goals conceded − xG · −6.2 → +3.9

It was decided in front of goal

The scoring side did not change. Non-penalty goals: 14 from 14.3 xG in the first part, 12 from 13.0 in the second. Both on expectation.

The conceding side flipped. In the first part Cheonan allowed 17.2 xG and conceded 11 — 6.2 fewer than expected. In the second they allowed 15.1 and conceded 19 — 3.9 more. The swing between the two is about 10 goals, enough to move a season's points by double figures.

Goals in the two parts — expected and actual
Grey = xG total (non-penalty) · teal = actual goals · matches with events
Expected (xG)Actual
R1–14 · scorednon-penalty
xG 14.3
actual 14
R15–27 · scorednon-penalty
xG 13.0
actual 12
R1–14 · concedednon-penalty · no own goals
xG 17.2
actual 11
R15–27 · concedednon-penalty · no own goals
xG 15.1
actual 19
The bottom two rows point in opposite directions.

Over the whole season, goals conceded are close to expectation (non-penalty goals conceded − xG −2.3, 4th-fewest in the league). The first part was lucky and the second unlucky — on the numbers, that is the most honest explanation. But one more thing sits on that boundary: the goalkeeper.

Dae-han Park kept goal in R1–14 and again in R20–21. Seung-gyu Lee played R15–19, and Ju-won Park from R22. Here they are against the goals expected from where the shots on target were placed.

Three goalkeepers — placement expectation and goals conceded
Opponents' non-penalty shots on target · grey = expected goals from league conversion by goal cell · teal = actual · by matches started
Placement expectationConceded
Dae-han Park15 starts · 68 on target
exp. 20.2
conceded 14
Seung-gyu Lee5 starts · 25 on target
exp. 8.1
conceded 9
Ju-won Park5 starts · 21 on target
exp. 5.6
conceded 7
Only Park conceded fewer than expected.

Dae-han Park faced 68 shots on target and conceded 14, a 79.4% save rate — 6.2 goals fewer than the placement expectation, 2nd of the 20 keepers in the league over the season. Seung-gyu Lee (64.0%) and Ju-won Park (66.7%) were close to expectation. In Park's 15 starts Cheonan took 19 points (expected 17.5); in the other two keepers' 10 starts, 3 (expected 12.8).

This does not show the goalkeeper was the cause · A few dozen shots on target is a small sample, and I could not confirm why Park was left out (injury or selection). Lee and Park did not collapse; they stopped roughly what was expected — it was Dae-han Park's first part that was among the best in the league. What the data supports is this: the rise in goals conceded in the second part came from how often shots went in, not from their quality, and it coincides with the goalkeeper change.

Match flowLevel 59% · leading 12% · trailing 29%

Short teal bands

The 25 matches laid out minute by minute: when Cheonan led, when it was level, when they trailed, and when the goals went in.

Score flow in 25 matches
Teal = Cheonan leading · grey = level · orange = Cheonan trailing · white dot = Cheonan goal · black dot = conceded · event clock, halves joined · right = result · performance (non-penalty xG difference ±0.3) · non-penalty xG
Cheonan leadingLevelCheonan trailing
R1 YonginAway · 2-2
D · Edge 2.70:0.50
R2 GimpoHome · 0-1
L · Outplayed 0.67:1.72
R3 HwaseongAway · 2-2
D · Outplayed 0.91:1.67
R4 Seoul E-LandHome · 0-0
D · Edge 1.47:0.74
R5 JeonnamHome · 1-0
W · Even 0.74:1.00
R7 Chungbuk CheongjuHome · 2-2
D · Outplayed 0.94:1.80
R8 DaeguAway · 2-1
W · Outplayed 1.33:2.49
R9 SeongnamHome · 1-1
D · Even 1.20:1.34
R10 Chungnam AsanHome · 1-0
W · Edge 1.09:0.72
R11 BusanAway · 0-1
L · Outplayed 0.27:1.15
R12 PajuHome · 0-0
D · Edge 1.50:0.17
R13 Suwon SamsungAway · 2-3
L · Outplayed 0.46:1.67
R14 AnsanAway · 3-1
W · Outplayed 0.99:2.21
R15 — no wins from here
R15 Suwon FCHome · 2-2
D · Outplayed 0.90:2.36
R16 GyeongnamAway · 1-2
L · Outplayed 0.85:1.40
R17 GimhaeHome · 0-1
L · Even 1.11:0.94
R18 Chungbuk CheongjuAway · 0-1
L · Outplayed 0.63:1.00
R19 Seoul E-LandAway · 3-4
L · Edge 2.51:1.37
R20 YonginHome · 2-2
D · Outplayed 0.49:0.95
R21 SeongnamAway · 2-3
L · Edge 1.74:1.17
R22 GimpoAway · 1-1
D · Outplayed 0.60:1.67
R23 Suwon SamsungHome · 0-1
L · Edge 1.35:1.01
R24 JeonnamAway · 0-1
L · Edge 1.33:0.39
R26 Suwon FCAway · 1-1
D · Outplayed 0.49:1.92
R27 Chungnam AsanAway · 1-3
L · Even 0.92:0.89
0′45′90′
Whenever a teal band appears it soon turns grey. Stoppage-time dots on the far right are unusually common.

Cheonan led for 12% of the time, 16th in the league, and trailed for 29%, 4th. They led in 10 matches and gave up the lead in 7 of them — 14 points dropped from winning positions. In the other direction, they came back to draw 5 of the 15 matches in which they conceded first. Cheonan's matches were mostly a chase from behind and a chase from in front.

Phase 1 · AttackFinal-third entries 2nd · settled entry → shot 17th

Often there, cut off at the end

Cheonan get forward a lot. 38.7 final-third entries a match is 2nd in the league, and 57% of them arrive within ten seconds of the move starting (4th). Cheonan do not hold the ball for long.

But they do not shoot as often as they arrive. 22.7% of entries end in a shot (16th), and for settled attacks it is 22.0% — the lowest in the league. Settled attacks produced 4 goals all season, 16th. Average xG per shot is 0.091, 16th: even once in, they shoot from distance rather than from good positions.

Attack — Cheonan among 17 clubs
One dot = one club · large teal dot = Cheonan · vertical line = league average · right = Cheonan's rank (highest first) · green = strength · orange = weakness
Final-third entriesper match
38.7
2nd / 17
Direct entries% · reached within 10 s of the start
57.2
4th / 17
Entry → shot%
22.7
16th / 17
Settled entry → shot% · attacks that began with the ball
22.0
17th / 17
Passes per settled chain
4.67
14th / 17
xG per shotaverage
0.091
16th / 17
Pass completion%
76.4
16th / 17
← lowerhigher →
Volume on the right, the final step on the left.

Split by match status, settled attacks were empty whatever the score. Level: 393 chains, 3.4 xG, 2 goals. Trailing: 3.5 xG, 2 goals. Leading: 0.5 xG, 0 goals. Over the season, settled attacks brought 4 goals from 7.4 xG, −3.4 against expectation, 15th in the league.

Settled attacks — expected and actual by match status
Chains that began in possession (not from set pieces or regains) · grey = chain xG total · teal = actual goals · 25 matches with events
Expected (xG)Actual
Level · scored393 chains
xG 3.4
actual 2
Trailing · scored211 chains
xG 3.5
actual 2
Leading · scored51 chains
xG 0.5
actual 0
Short of expectation in every state.

What the data shows — attack

  • Settled entry → shot 22.0% — lowest in the league · 1 settled goal at home (fewest)
  • 38.7 final-third entries a match (2nd) · 57% direct (4th) — volume is near the top
  • Settled goals − xG −3.4 (15th) · most goals came from attacks after a regain (18)
Phase 2 · Defensive blockShots allowed 3rd · opponent box entries 3rd

Shot at often, from far away

Cheonan face a lot of shots. 13.5 a match is 3rd in the league, and opponents get into the box 13.8 times a match (3rd). The average height of their defensive actions is 7th — neither high nor deep.

The quality of those shots is ordinary (0.097 xG per shot, 14th). They are shot at often, but from far out. The xG they allow, 1.45 a match, is 6th: on the high side, but not a defence falling apart.

Defensive block — Cheonan among 17 clubs
Right = higher value · number on the right = rank, highest first · green = strength · orange = weakness
Average height of defensive actionshigher = defending further up
38.6
7th / 17
Shots allowedper match
13.5
3rd / 17
Opponent box entriesper match
13.8
3rd / 17
Opponent crossesper match
15.0
4th / 17
xG per shot allowedaverage
0.097
14th / 17
Opponent settled xGper match
0.36
6th / 17
← lowerhigher →
Volume on the right (shot at often), quality in the middle.

Split by match status, opponents' settled attacks scored 5 from 4.2 xG when level, 0 from 3.8 when Cheonan trailed and 0 from 1.0 when they led. Over the season that is −4.0 against expectation, the 3rd-best in the league. Against opponents with the ball, Cheonan held firm.

The leak is right in front of goal. From 31 shots inside the six-yard box (7.3 xG) they conceded 10 — 2.7 more than expected, the second-largest gap in the league. In the central part of the box it went the other way: 10 from 15.1 xG, 5.1 fewer. Scrambles, second balls and short-range finishes decided it.

Opponents' settled attacks — expected and actual by match status
Status from Cheonan's side · grey = opponents' chain xG total · teal = goals conceded · 25 matches with events
Expected (xG)Actual
Level · conceded322 chains
xG 4.2
actual 5
Trailing · conceded201 chains
xG 3.8
actual 0
Leading · conceded74 chains
xG 1.0
actual 0
Against opponents with the ball, fewer than expected.

What the data shows — defensive block

  • 13.5 shots allowed a match (3rd) · 13.8 opponent box entries (3rd) — shot at often
  • 5 conceded to settled attacks from 9.0 xG — fewer than expected (the 3rd-best in the league)
  • 10 conceded inside the six-yard box from 7.3 xG (+2.7, 2nd-largest) · central box the opposite: −5.1
Phase 3 · TransitionRegains · high regains · possessions lost · 5-second recoveries: all first in the league

Win it, lose it, win it again

Cheonan's identity is in transition. 62.0 regains a match and 5.9 in the opponents' half are both the most in the league. Winning the ball back within five seconds of losing it, 27.5% of the time, is also first. And no team loses the ball more often than Cheonan — 75.0 times a match, again first.

So the ball never settles in a Cheonan match. When level, possession changes hands 89.7 times per 90 for Cheonan and 89.9 for their opponents, both the most in the league. The attack that "gets there often and is cut off at the end" and the defence that is "shot at often" are two sides of this table-tennis football.

Transition — Cheonan among 17 clubs
Right = higher value · number on the right = rank (allowed measures ranked lowest first) · green = strength · orange = weakness
Regainsper match, by defensive action
62.0
1st / 17
Regains in the opponents' halfper match
5.9
1st / 17
Possessions lostper match
75.0
1st / 17
Won back within 5 s of losing it%
27.5
1st / 17
Regain to first shotseconds · longer = slower
28.8
15th / 17
xG allowed within 10 s of losing itper match · lower is better
0.33
11th / 17
← lowerhigher →
The top four rows are all at the far right.

Split by match status, this phase has two faces. When trailing, Cheonan's attacks after a regain — 403 of them — produced 11 goals from 5.8 xG: +5.2 against expectation, the best in the league. 11 of their 18 goals after a regain came while behind.

Level, it went the other way: 6 goals from 8.0 xG (−2.0, 15th), and 10 conceded to opponents' regains from 12.6 xG. Leading, they conceded 5 to opponents' regains from 2.6 xG — nearly double. When chasing, transition was the weapon; when protecting a lead, it was the hole.

Attacks after a regain — expected and actual by match status
Chains that began with a defensive action · grey = chain xG total · teal = actual goals · 25 matches with events
Expected (xG)Actual
Level · scored935 chains
xG 8.0
actual 6
Level · conceded969 chains
xG 12.6
actual 10
Trailing · scored403 chains
xG 5.8
actual 11
Trailing · conceded415 chains
xG 3.3
actual 4
Leading · scored212 chains
xG 2.1
actual 1
Leading · conceded189 chains
xG 2.6
actual 5
Trailing, they scored double the expectation; leading, they conceded double too.

What the data shows — transition

  • 11 goals after a regain when trailing, from 5.8 xG — best against expectation in the league
  • 62.0 regains · 5.9 high regains · 75.0 possessions lost · 27.5% won back in 5 s — all first in the league
  • 5 conceded to opponents' regains when leading, from 2.6 xG — 4th against expectation
Phase 4 · Set pieces and penaltiesSet-piece goals 4 for · 6 against · 4 penalties conceded

Four penalties

Set pieces are unremarkable. Non-penalty set-piece chains brought 4 goals from 4.0 xG and conceded 6 from 4.8. Both close to expectation. Only one cell stands out: when level, Cheonan conceded 6 from set pieces against 3.6 xG, +2.4 — the largest in the league.

Penalties are strange. Cheonan have conceded 4 goals from the spot this season. All four came while Cheonan were ahead, and all four were equalisers. No team conceded more penalties while leading.

Penalty equaliser 1
1-0 → 1-1@ Yongin
R1 · 1 Mar · 36′
Taker
Gabriel
Final
2-2 D

Penalty equaliser 2
2-1 → 2-2@ Yongin
R1 · 1 Mar · 82′
Taker
Gabriel
Final
2-2 D

Penalty equaliser 3
1-0 → 1-1@ Ansan
R14 · 31 May · 30′
Taker
Lima
Final
3-1 W

Penalty equaliser 4
1-0 → 1-1@ Seongnam
R21 · 8 Aug · 12′
Taker
Jeong-bin Lee
Final
2-3 L

Set pieces — expected and actual by match status
Chains starting from corners, free kicks and throw-ins (penalties excluded) · grey = chain xG total · teal = actual goals · 25 matches with events
Expected (xG)Actual
Level · scored170 chains
xG 1.8
actual 3
Level · conceded210 chains
xG 3.6
actual 6
Trailing · scored104 chains
xG 1.9
actual 1
Trailing · conceded88 chains
xG 0.8
actual 0
Leading · scored36 chains
xG 0.3
actual 0
Leading · conceded46 chains
xG 0.4
actual 0
Only the goals conceded when level clearly exceed expectation.

What the data shows — set pieces and penalties

  • 4 penalty goals conceded — every one while leading, every one an equaliser (R1 twice · R14 · R21)
  • 6 set-piece goals conceded when level from 3.6 xG — most above expectation in the league
  • Set-piece scoring on expectation (4 from 4.0 xG) — neither a weapon for breaking 0-0 nor a weakness
Chasing and protectingTrailing +6.8 (1st) · leading −3.8 (14th)

Best in the league chasing, near the bottom protecting

I recounted the goals by match status. In 736 minutes behind, Cheonan scored 15 from 12.0 xG and conceded 4 from 7.8. Goal difference while trailing was +6.8 against expectation — the best in the league.

In 312 minutes ahead they scored 1 from 2.9 xG and conceded 9 from 7.1. While leading that is −3.8 against expectation, 14th in the league. Level, it was −4.2 (14th); Cheonan scored 36% of the goals while level against an expected 42%.

Match status × phase, goal difference − expected
(goals − xG) − (conceded − opponent xG) · penalties excluded · right = gain · 25 matches with events
Trailing · settled
+2.2
Trailing · after regain
+4.5
Trailing · set piece
−0.1
Level · settled
−2.1
Level · after regain
+0.6
Level · set piece
−1.2
Leading · settled
+0.5
Leading · after regain
−3.5
Leading · set piece
+0.1
← lossgain →
The two longest bars are "Trailing · after regain" (gain) and "Leading · after regain" (loss). The four penalties sit outside this chart, all under "Leading".
Goal difference − expected when trailing, 17 clubs
(goals scored − conceded while trailing) − (xG − opponent xG in the same time)
Cheonan City FCThe other 16 clubs
Gimhae
−5.5
Jeonnam
−0.6
Suwon Samsung
−0.6
Seongnam
−0.4
Daegu
−0.1
Busan
+0.1
Hwaseong
+0.1
Chungnam Asan
+0.9
Chungbuk Cheongju
+1.2
Seoul E-Land
+1.5
Paju
+1.9
Gimpo
+4.0
Yongin
+4.4
Gyeongnam
+4.5
Suwon FC
+4.5
Ansan
+5.2
Cheonan
+6.8
← loss when trailinggain when trailing →
Cheonan at the far right.

So the draws piled up. Of 10 draws in matches with event data, 5 came after conceding first, 3 after scoring first and 2 were 0-0. 9 goals turned a Cheonan lead into a level score — four of them penalties, two in stoppage time (R15 90+10′, R20 90+7′).

When ahead, Cheonan went long. Their long-pass share while leading, 23.5%, is the highest in the league (average 17.0%). It looks as if they chose to drop off and clear their lines once in front — but that is a tendency read from the numbers; the intent could not be confirmed.

Stoppage timeSecond-half stoppage time: 6 scored · 6 conceded

Ten matches after 90 minutes

Cheonan scored 6 goals in second-half stoppage time and conceded 6. In points that nets out at −1 — but the order split.

Matches with a goal in second-half stoppage time
Left = Cheonan's stoppage-time goals · right = opponents' · beside the name = score at 90 → final · end = points changed by stoppage-time goals
CheonanOpponent
◀ Cheonan
Opponent ▶
Points
R3 Hwaseong · 1-2→2-2
1
0
+1
R8 Daegu · 0-1→2-1
2
0
+3
R13 Suwon Samsung · 2-2→2-3
0
1
−1
R14 Ansan · 2-1→3-1
1
0
±0
R15 Suwon FC · 1-1→2-2
1
1
±0
R16 Gyeongnam · 1-1→1-2
0
1
−1
R19 Seoul E-Land · 2-4→3-4
1
0
±0
R20 Yongin · 2-1→2-2
0
1
−2
R21 Seongnam · 2-2→2-3
0
1
−1
R27 Chungnam Asan · 1-2→1-3
0
1
±0
Up to R14, stoppage time was worth +3 points; from R15, −4.

Up to R14, stoppage time was on Cheonan's side. Away at Daegu in R8 they turned 0-1 into 2-1 with goals in the 95th and 99th minutes. From R15 it ran the other way: against Suwon FC in R15 they went ahead in the 96th minute and were caught in the 100th; Yongin equalised in the 97th in R20, and Gyeongnam won it in the 101st in R16. The same picture again — a similar number of goals that turned into points early in the season and into losses later.

25 matchesEdge in R1–14: 4 · in R15–27: 4

Matches they should have won, and should have lost

The 25 matches side by side on non-penalty xG, labelled Edge, Even or Outplayed with a ±0.3 threshold.

Performance in 25 matches — non-penalty xG
Left (teal) = Cheonan · right (orange) = opponent · far right = score and result · ▲ = edge · ▼ = outplayed · top to bottom R1 → R27
CheonanOpponent
◀ Cheonan xG
Opponent xG ▶
Result
▲ R1 Yongin
2.70
0.50
2-2 D
▼ R2 Gimpo
0.67
1.72
0-1 L
▼ R3 Hwaseong
0.91
1.67
2-2 D
▲ R4 Seoul E-Land
1.47
0.74
0-0 D
· R5 Jeonnam
0.74
1.00
1-0 W
▼ R7 Chungbuk Cheongju
0.94
1.80
2-2 D
▼ R8 Daegu
1.33
2.49
2-1 W
· R9 Seongnam
1.20
1.34
1-1 D
▲ R10 Chungnam Asan
1.09
0.72
1-0 W
▼ R11 Busan
0.27
1.15
0-1 L
▲ R12 Paju
1.50
0.17
0-0 D
▼ R13 Suwon Samsung
0.46
1.67
2-3 L
▼ R14 Ansan
0.99
2.21
3-1 W
▼ R15 Suwon FC
0.90
2.36
2-2 D
▼ R16 Gyeongnam
0.85
1.40
1-2 L
· R17 Gimhae
1.11
0.94
0-1 L
▼ R18 Chungbuk Cheongju
0.63
1.00
0-1 L
▲ R19 Seoul E-Land
2.51
1.37
3-4 L
▼ R20 Yongin
0.49
0.95
2-2 D
▲ R21 Seongnam
1.74
1.17
2-3 L
▼ R22 Gimpo
0.60
1.67
1-1 D
▲ R23 Suwon Samsung
1.35
1.01
0-1 L
▲ R24 Jeonnam
1.33
0.39
0-1 L
▼ R26 Suwon FC
0.49
1.92
1-1 D
· R27 Chungnam Asan
0.92
0.89
1-3 L
The ▲s keep coming after R15. The Ws do not.

In R1–14 Cheonan had the edge in 4 matches (1W 3D 0L), were even in 2 (1W 1D 0L) and outplayed in 7 (2W 2D 3L). In R15–27: edge 4 (0W 0D 4L), even 2 (0W 0D 2L), outplayed 6 (0W 4D 2L). The first part took points from matches they could have lost; the second could not win the matches they should have won.

OutliersWhere the data jumps

Ten signals

01 · R15–27 points − expected
−10.9
12 matches · 4 points · 14.9 expected · chance of this few or fewer 0.3%
02 · Non-pen. conceded − xG
−6.2 → +3.9
R1–14 → R15–27 · scoring on expectation in both parts
03 · Dae-han Park
−6.2
conceded − placement expectation · 2nd of 20 keepers · 79.4% saves
04 · Penalties conceded
4
all while leading · all equalisers · most conceded while leading
05 · Goals after a regain, trailing
11
5.8 xG · best against expectation
06 · Regains · possessions lost
1st · 1st
62.0 · 75.0 a match — win it most, lose it most
07 · Settled entry → shot
22.0%
lowest in the league · 4 settled goals (16th)
08 · Time leading
12%
16th in the league · highest long-pass share while leading
09 · Stoppage-time goals
6 : 6
up to R14 +3 points · after −4
10 · Conceded in six-yard box
10
7.3 xG · 2.7 above expectation · 2nd-largest

1–3 sit on the boundary between the two parts, 4–5 on chasing and protecting, 6–7 on Cheonan's style, 8–10 around them.

Four matchesChosen by rule

Four matches that show Cheonan

The series picks its four matches by rule: (1) the match closest to the season average (2) the match most typical of the team (for Cheonan, xG created within ten seconds of a regain) (3) the match where the result most exceeded the performance (4) the match where the performance most exceeded the result.

(1) Typical — closest to the season average
1-1v Seongnam
R9 · 25 Apr · Home
Non-penalty xG
1.20 : 1.34
Expected → actual points
1.26 → 1
Goals
44′ 0-1 · 90′ 1-1
Final-third arrivals
44 : 33

Behind from late in the first half, level in the 90th minute. Cheonan at their most typical: concede first, then chase it down.

(2) Signature — win it and go
2-2@ Yongin
R1 · 1 Mar · Away
Non-penalty xG
2.70 : 0.50
Expected → actual points
1.82 → 1
Goals
28′ 1-0 · 36′ 1-1 · 50′ 2-1 · 82′ 2-2
Final-third arrivals
31 : 34

The opening day. The most xG created within ten seconds of a regain all season. Ahead twice, pegged back by a penalty both times.

(3) Result > performance
3-1@ Ansan
R14 · 31 May · Away
Non-penalty xG
0.99 : 2.21
Expected → actual points
0.65 → 3
Goals
16′ 1-0 · 30′ 1-1 · 60′ 2-1 · 90+4′ 3-1
Final-third arrivals
47 : 34

The last win. Second-best on the night; pegged back by a penalty, then ahead again. The first part's luck at its clearest.

(4) Performance > result
0-1@ Jeonnam
R24 · 28 Aug · Away
Non-penalty xG
1.33 : 0.39
Expected → actual points
2.14 → 0
Goals
62′ 0-1
Final-third arrivals
48 : 18

More than two and a half times the opponents' final-third arrivals. Lost to one goal in the 62nd minute. The second part in miniature.

(1) and (2) are Cheonan at their most typical: they chase when behind and get caught when ahead. (3) is the luck of the first part, (4) the misfortune of the second.

RejectedExplanations the data does not accept

How not to read it

✕

"Performances collapsed in the second half of the season"

Expected points per match after R15 were 1.24, slightly higher than before (1.18). xG for and against are almost unchanged.

✕

"They lost because they couldn't score"

In both parts they scored their xG (14 from 14.3 / 12 from 13.0). It was the conceding side that changed.

✕

"The new goalkeepers weren't good enough"

Seung-gyu Lee and Ju-won Park conceded close to the placement expectation. The comparison point, Dae-han Park's first part, was among the best in the league. The reason for the change is also unconfirmed.

✕

"No fight late on"

The opposite. Goal difference against expectation while trailing is the best in the league, and they scored 6 in second-half stoppage time.

✕

"The defence is weak"

Against opponents' settled attacks they conceded fewer than expected. Being shot at often is the cost of a game where the ball never settles; the extra goals came right in front of goal.

Summary6 matches left · 4 home · 2 away

Six matches left, same football

Cheonan played the same football all season. They win the ball back the most and lose it the most, get forward often but are cut off at the end, are shot at often but from far out. With that football they took 2.7 points more than expected in the first 13 matches and 10.9 fewer in the next 12. What made the difference was how often opponents' shots went in right in front of goal — and the goalkeeper change sits on that boundary.

Still to play: R28 Gyeongnam (home) · R30 Ansan (home) · R31 Gimhae (away) · R32 Busan (home) · R33 Paju (away) · R34 Daegu (home). Three things to watch.

  • Does the rate in front of goal come back? — Over the season, goals conceded are close to expectation. Numbers like this tend to drift back towards expectation over time. When they do, Cheonan's points should follow their performances (1.21 expected points a match).
  • The minutes after going ahead — Time leading is 16th in the league, and no one conceded more penalties while leading. Whether dropping off once in front is the right choice will decide the points that are left.
  • The last pass in settled attacks — Entries are near the top of the league, but settled entry → shot is the lowest. That is where Cheonan could find a way to go ahead and finish matches.

Limits · The portal's xG model is not published. Expected points treat shots as independent and ignore the order of goals. The portal gives penalties no xG. Match status uses live-feed goal times moved onto the event clock. R25 has no event data and is left out of event-based measures. Each part is only 12–13 matches, and the R14 boundary was chosen after seeing the results. The reason for the goalkeeper change is unconfirmed. These values were found by scanning many measures (multiple comparisons).