
Sofiane Boufal
Value picture
Where the market, the likely price and the model estimates sit.
The model rates Sofiane Boufal's performance-implied value at EUR 1.1M-2.6M, above the estimated acquisition range of EUR 0.5M-2.0M. Its 24-month market value projection is EUR 0.4M-1.2M. Context-adjusted goal contributions are 1.23x the positional average in the league (1199 minutes, league coefficient 0.88). Confidence is medium: no event-level data (xG, progressive actions) is available from the current free source, and injury history is unavailable.
Acquisition note: Contract end date unavailable: range widened by 15% each side.
Bargain Index: 11
What drives the score. Not a black box: each component and its level.
| Performance | Above average | 63.5th pct among MID peers (age-neutral) |
| Age | Unfavorable | 32.8 years |
| Acquisition cost | Favorable | est. €1.1M vs market €1.8M |
| Expected appreciation | Very low | -58% over ~2 years (model) |
| Value gap | Large | weak predictor on its own |
| Development | Low | |
| League translation | Big-five league | league coefficient 0.88 |
| Tactical fit | Not evaluated | Requires event/role data not available from the current free source. |
| Risk | High | |
| Data confidence | Medium |
Bargain Index = percentile (among all evaluated players) of expected 2-year value relative to estimated cost. See methodology and backtests.
Market value history
Market value ≠ transfer fee ≠ acquisition cost.
Profile vs positional peers
Percentiles among 1163 evaluated MID players with 900+ minutes.
Performance (last season, league)
- Minutes
- 1199 (39% of available)
- Goals + assists / 90
- 0.45
- Context-adjusted G+A / 90
- 0.53
- xG, xA, progression
- Data unavailable
- Defensive actions
- Data unavailable
- Performance percentile
- 64 (Above average)
Adjusted = shrunk toward positional baseline for small samples, corrected for team dominance over opponents, expressed relative to positional peers in the same league.
Context
- League strength
- 0.88 (rank 6)
- Team strength (Elo)
- 1391
- Opponent strength
- 1486
- Possession, role
- Data unavailable
League strength 1.00 = average club of the big-five leagues. Elo includes continental matches.
Potential
- Development
- Low
- Trajectory
- improving
- Breakout probability
- Age > 23
- Resale range (24m)
- €438k – €1.2M
Trajectory drivers: changed club; team strength down (-154 Elo); league level up (+78 Elo); relative output up 36% vs positional peers.
Historical comparables (8): median 2-year value change -69% (IQR -76% to -60%).
Risk profile
Overall: High
- ▲Age 33: resale value typically declines.
- ⚠Limited sample: 1199 league minutes last season.
- ⚠Played under 40% of available league minutes (injury data unavailable, cause unknown).
- ⓘContract end date unavailable (or stale in source).
- ⓘInjury history unavailable from current data source.
League translation
What happened to players who moved from this league to the big-five leagues (observed, not a forecast).
Already playing in a big-five league.
Output is relative to positional peers in each league. Movers are a selected group (clubs buy players who fit), so treat this as context, not a guarantee.
Season-by-season (domestic league)
Context-adjusted values are model outputs.
| Season | Club | League | Pos | Apps | Min | Min share | G | A | G+A/90 | Adj. G+A/90 | Opp. Elo | Team Elo | League str. |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2025/26 | Le Havre AC | Ligue 1 | AM | 17 | 1028 | 34% | 1 | 4 | 0.44 | 0.53 | 1486 | 1361 | 0.88 |
| 2025/26 | Union Saint-Gilloise | Jupiler Pro League | AM | 9 | 171 | 6% | 0 | 1 | 0.53 | 0.28 | 1313 | 1570 | 0.65 |
| 2024/25 | Union Saint-Gilloise | Jupiler Pro League | AM | 16 | 659 | 24% | 0 | 3 | 0.41 | 0.36 | 1439 | 1545 | 0.63 |
| 2022/23 | Angers SCO | Ligue 1 | LW | 13 | 838 | 25% | 4 | 3 | 0.75 | 0.74 | 1451 | 1221 | 0.82 |
| 2021/22 | Angers SCO | Ligue 1 | SS | 29 | 2344 | 69% | 8 | 5 | 0.50 | 0.62 | 1442 | 1352 | 0.86 |
| 2020/21 | Angers SCO | Ligue 1 | LW | 14 | 736 | 22% | 1 | 0 | 0.12 | 0.28 | 1399 | 1326 | 0.75 |
| 2019/20 | Southampton FC | Premier League | LW | 20 | 760 | 22% | 0 | 2 | 0.24 | 0.38 | 1566 | 1528 | 1.14 |
| 2018/19 | Celta de Vigo | Laliga | LW | 35 | 2099 | 61% | 3 | 4 | 0.30 | 0.42 | 1546 | 1494 | 1.14 |
| 2017/18 | Southampton FC | Premier League | LW | 26 | 1214 | 35% | 2 | 2 | 0.30 | 0.44 | 1543 | 1459 | 1.15 |
| 2016/17 | Southampton FC | Premier League | LW | 24 | 1101 | 32% | 1 | 0 | 0.08 | 0.22 | 1536 | 1501 | 1.07 |
| 2015/16 | LOSC Lille | Ligue 1 | LW | 29 | 2342 | 68% | 11 | 4 | 0.58 | 0.59 | 1432 | 1503 | 0.78 |
| 2014/15 | LOSC Lille | Ligue 1 | AM | 14 | 1017 | 30% | 3 | 6 | 0.80 | 0.54 | 1410 | 1454 | 0.80 |
Cups & continental competitions
| Season | Competition | Club | Apps | Min | G | A | Avg opp. Elo |
|---|---|---|---|---|---|---|---|
| 2025/26 | Uefa Champions League | Union Saint-Gilloise | 4 | 78 | 0 | 1 | 1613 |
| 2025/26 | Volkswagen Supercup | Union Saint-Gilloise | 1 | 28 | 0 | 0 | 1552 |
| 2024/25 | Uefa Europa League | Union Saint-Gilloise | 5 | 235 | 0 | 1 | 1508 |
| 2019/20 | Fa Cup | Southampton FC | 3 | 164 | 1 | 0 | — |
| 2017/18 | Fa Cup | Southampton FC | 3 | 202 | 0 | 0 | — |
| 2016/17 | Uefa Europa League | Southampton FC | 2 | 52 | 0 | 0 | 1549 |
Small continental samples are shown for context only and are not over-weighted.
Historical comparables
Most similar profiles 2+ years ago (same position group) and what happened next. Chosen by similarity only — failures included.
| Player (then) | Age | Value then | ~2y later | Outcome |
|---|---|---|---|---|
| Andrea Dossena Serie A · 2013 | 32 | €1.8M | €500k | fell |
| Andrea Cossu Serie A · 2013 | 33 | €1.2M | €300k | fell |
| Jussiê Ligue 1 · 2014 | 31 | €2.3M | €500k | fell |
| Enzo Maresca Serie A · 2013 | 33 | €800k | €300k | fell |
| Diniyar Bilyaletdinov Premier Liga · 2015 | 30 | €1.4M | €300k | fell |
| Matuzalém Serie A · 2013 | 33 | €1.0M | €500k | fell |
| Alou Diarra Ligue 1 · 2013 | 32 | €1.3M | €1.0M | fell |
| Lucas Deaux Ligue 1 · 2020 | 32 | €1.4M | €500k | fell |
Transfer history
Fees as reported by the source; undisclosed fees shown as unknown, never estimated.
| Date | From | To | Fee | MV at time |
|---|---|---|---|---|
| 1 Jul 2026 | Le Havre AC | Without Club | Unknown | €1.8M |
| 14 Jan 2026 | Union SG | Le Havre AC | Free / loan | €2.0M |
| 3 Sept 2024 | Al-Rayyan | Union SG | Free / loan | €6.0M |
| 31 Jan 2023 | Angers SCO | Al-Rayyan | €6.0M | €10.0M |
| 5 Oct 2020 | Southampton | Angers SCO | Free / loan | €8.0M |
| 30 Jun 2019 | Celta de Vigo | Southampton | Free / loan | €12.0M |
| 20 Jul 2018 | Southampton | Celta de Vigo | Free / loan | €12.0M |
| 29 Aug 2016 | Lille | Southampton | €18.7M | €13.0M |
| 9 Jan 2015 | Angers SCO | Lille | €3.0M | €800k |
| 1 Jul 2013 | Angers SCO B | Angers SCO | Unknown | Data unavailable |
| 1 Jul 2012 | Angers SCO U19 | Angers SCO B | Unknown | Data unavailable |
MoneyballAI identifies statistical opportunities from available data. A player flagged as a potential bargain is not guaranteed to succeed, to transfer, to rise in value, or to generate resale profit. Market values, fees and contracts come from third-party sources; ranges are model estimates with stated confidence.