M. Hallberg · career
Charles Melker Otto Hallberg
Central · Kalmar FF · season-by-season, by competition, and every match.
Career report
Past his 2024/25 peak — the recent trend is downward, so buyers are paying for what's left, not what was.
Peak: 2024/25Trending downBreakout: 2022/23Stepped up 2026/27
The record covers 7 seasons (2020/21–2026/27) across 3 clubs, including a move abroad — 157 appearances, 7 goals and 14 assists.
His best campaign on record is 2024/25 at Kalmar FF — Season rating 35, 3 goals and 3 assists in 27 games. 2022/23 was the leap — Season rating up 26 points at ST Johnstone. Form has slipped 12 Season points across his last 3 full seasons. The gap to his peak is 12 Season points.
Made the jump to a higher division in 2026/27 (Allsvenskan) and kept playing — 21 games that season.
By season
| Season | Club | Apps | G | A | Rating | Season |
|---|---|---|---|---|---|---|
| 2026/27 | Kalmar FF | 21 | 0 | 2 | 21 | 23 |
| 2025/26 | Kalmar FF | 28 | 1 | 3 | 15 | 16 |
| 2024/25 | Kalmar FF | 27 | 3 | 3 | 27 | 35 |
| 2023/24 | Kalmar FF | 12 | 1 | 2 | 27 | 10 |
| 2022/23 | ST Johnstone | 30 | 2 | 2 | 42 | 26 |
| 2021/22 | ST Johnstone | 14 | 0 | 0 | 40 | 0 |
| 2021/22 | Hibernian | 1 | 0 | 0 | — | — |
| 2020/21 | Hibernian | 25 | 0 | 2 | 43 | 13 |
| 2019/20 | Hibernian | 20 | 1 | 0 | — | — |
| 2018/19 | Vejle | 25 | 1 | 0 | — | — |
| 2018/19 | Kalmar FF | 13 | 0 | 1 | — | — |
| 2017/18 | Kalmar FFLoan | 27 | 2 | 2 | — | — |
| 2016/17 | Kalmar FFLoan | 3 | 0 | 0 | — | — |
| 2016/17 | Hammarby FF | 12 | 0 | 0 | — | — |
| 2016/17 | AscoliLoan | 7 | 1 | 0 | — | — |
| 2015/16 | Hammarby FFLoan | 4 | 1 | 0 | — | — |
| 2015/16 | ValerengaLoan | 10 | 2 | 1 | — | — |
| 2014/15 | Udinese | 4 | 0 | 0 | — | — |
| 2014/15 | Kalmar FF | 14 | 1 | 0 | — | — |
| 2013/14 | Kalmar FF | 29 | 4 | 0 | — | — |
| 2012/13 | Kalmar FF | 11 | 1 | 0 | — | — |
International
| Side | Season | Competition | Apps | G |
|---|---|---|---|---|
| Sweden | 2016/17 | Friendlies | 2 | 1 |
| Sweden U21 | 2017/18 | UEFA U21 Championship | 10 | 2 |
| 2015/16 | UEFA U21 Championship | 6 | 1 | |
| Sweden U19 | 2014/15 | UEFA U19 Championship | 2 | 0 |
| 2013/14 | UEFA U19 Championship | 3 | 0 | |
| Sweden U17 | 2012/13 | UEFA U17 Championship | 6 | 0 |
Honours
UEFA U21 ChampionshipLeague CupScottish Cup
By competition
| Competition | Apps | Min | G | A | Rating |
|---|---|---|---|---|---|
| Allsvenskan | 13 | 870 | 0 | 1 | 6.8 |
Schedule · 2026/27
21 played· 1269 min, 0g 2a
| Date | Competition | Opponent | Res | Status | Min | G | A | Rating |
|---|---|---|---|---|---|---|---|---|
| Apr 5 | Allsvenskan | H Vasteras SK FK | 0-1 | Played | 61 | 6.7 | ||
| Apr 12 | Allsvenskan | A Djurgardens IF | 2-3 | Played | 45 | 1 | 6.7 | |
| Apr 19 | Allsvenskan | A AIK Stockholm | 0-1 | Played | 27 | 6.6 | ||
| Apr 23 | Allsvenskan | H IFK Goteborg | 1-1 | Played | 33 | 6.9 | ||
| Apr 27 | Allsvenskan | H IF Elfsborg | 2-1 | Played | 73 | 6.7 | ||
| May 2 | Allsvenskan | A Sirius | 2-3 | Played | 69 | 5.9 | ||
| May 10 | Allsvenskan | H Halmstad | 2-0 | Played | 90 | 6.3 | ||
| May 17 | Allsvenskan | A IF Brommapojkarna | 0-1 | Played | 90 | 7.6 | ||
| May 23 | Allsvenskan | H Degerfors IF | 2-1 | Played | 90 | 6.7 | ||
| May 30 | Allsvenskan | A Gais | 0-3 | Played | 90 | 5.6 | ||
| Jul 5 | Allsvenskan | H Orgryte IS | 3-0 | Played | 87 | 8.3 | ||
| Jul 12 | Allsvenskan | A Hammarby FF | 0-2 | Played | 90 | 7.5 | ||
| Jul 20 | Allsvenskan | H Malmo FF | 2-2 | Played | 25 | 6.9 | ||
| Jul 25 | Allsvenskan | H Mjallby AIF | 2-1 | Played | 74 | 1 | 6.7 | |
| Aug 1 | Allsvenskan | A BK Hacken | 1-1 | Played | 27 | 6.7 | ||
| Aug 9 | Allsvenskan | A IFK Goteborg | 2-3 | Played | 82 | 5.6 | ||
| Aug 16 | Allsvenskan | H Hammarby FF | 0-4 | Played | 45 | 6.5 | ||
| Aug 23 | Allsvenskan | A Vasteras SK FK | 0-0 | Played | 60 | 6.2 | ||
| Aug 29 | Allsvenskan | A Halmstad | 0-1 | Played | 72 | 7.3 | ||
| Sep 7 | Allsvenskan | H Djurgardens IF | 0-1 | Played | 18 | 6.4 | ||
| Sep 13 | Allsvenskan | A IF Elfsborg | 0-1 | Played | 21 | 6.4 |