FairValue

Checking model

Esc

  • EnvironmentOverviewWhat FairValue measures, what it found, where to go next.
  • EnvironmentTerminalExplore, compare and track players; market, league and model views.
  • EnvironmentStoriesValuations, head-to-heads and research findings, told as stories.
  • TerminalPlayer ExplorerSearch, filter and sort the player export.
  • TerminalComparison StudioTwo to four players on one scale.
  • TerminalWatchlistsNamed collections, kept in this browser.
  • TerminalMarket LandscapeHow observed value is distributed, and where the model drifts.

↑ ↓ to move · Enter to open · Esc to closeLoading player index…

Philipp

Hofmann

CFGermany · VfL Bochum

№ 119037Emerging €775k −0.03

Player dossierBundesliga

PhilippHofmann

CFCentre-ForwardAttack

Club
VfL Bochum
League
Bundesliga
Nationality
Germany
Age
32
Height
195 cm
Foot
Left
Valued
16 Dec 2025

Reading the valuation

The market values Hofmann at €750k. Model A, which never saw Hofmann during training, estimates €775k: the market value is 3% below that estimate.

That is a factor of ×1.03. Model A's typical held-out miss is ×1.50 either way, so this gap is within its usual error.

Without league and club, Model B estimates €367k, further from the market. Model B is usually further off (typical miss ×2.07): league and club explain much of how the market prices players.

A gap describes the model's arithmetic for this player's inputs, not what the player is worth.

▼ −0.03A €775k▲ +0.72B €367k
Pitch length is a log value scale fitted to this player's figures. ● observed · ◇ Model A · dashed ◇ Model B · each arc is a residual, log(observed) − log(estimate).
Apps
49
Minutes
3,172
Goals
7
Assists
4
Started
36/49
Min / app
65
Cards
5Y 0R

Club matches, two years to the valuation date

The Valuation Journey

What moves Model A

Asking the prediction API to explain Model A for Hofmann…

SHAP describes the model's arithmetic for this player's inputs, not what causes market value. Model B can be explained only by the live service; Model A also has a published explanation for the research players.

Model A vs Model B against the observed €750k

Checking API
EmergingEstablishedEliteWorld Class€2M€10M€30M€100k€1M€100MMarket €750kModel A €775k

Asking the prediction API…

Held-out estimates come from cross-validation, with this player outside the training data: the honest comparison. Served models were refitted on every player, this one included, so they sit closer to the market. Shaded band: Model A's typical miss (×1.50 either way).

Player traitspercentiles vs 1,583 attackers

Philipp Hofmann's percentiles among attackers: Goals per 90 36th, Assists per 90 37th, Minutes, two years 69th, Starts 73rd, Minutes, last 365 days 52nd, European club minutes 28th36thGoals37thAssists69thMinutes73rdStarts52ndRecent28thEurope

Dashed ring: the attacker median (50th percentile)

Starts

Share of appearances started rather than entered from the bench.

73% this player59% attacker median73rd percentile

5%peer deciles · median line · this player ●100%

No passing, progression or defensive actions exist in the dataset, so no trait claims to measure them.

Valuation history every Transfermarkt valuation on record

First valuation
€75k
Aug 2011
Peak
€2.8M
Jun 2023
Model target
€750k
Dec 2025
Valuations
37
10 club changes
Dec 2025€750kVfL BochumValuation the model is trained to reproduce

Dec 2025: €750k, VfL Bochum. Dotted lines mark the €2M, €10M and €30M tier boundaries.

Show as a table
DateMarket valueClub
2011-08-17€75kFC Schalke 04 II
2011-09-29€100kFC Schalke 04 II
2012-07-05€200kFC Schalke 04
2012-10-23€600kSC Paderborn 07
2013-01-04€600kSC Paderborn 07
2013-06-29€600kSC Paderborn 07
2014-01-20€750kFC Ingolstadt 04
2014-06-30€1MFC Schalke 04
2015-01-13€1M1.FC Kaiserslautern
2015-07-01€1M1.FC Kaiserslautern
2015-09-24€1.5MBrentford FC
2016-04-20€1.5MBrentford FC
2016-09-01€1.3MBrentford FC
2017-02-27€1MBrentford FC
2017-08-21€1MSpVgg Greuther Fürth
2018-01-22€750kSpVgg Greuther Fürth
2018-06-19€600kEintracht Braunschweig
2018-10-13€500kEintracht Braunschweig
2019-01-15€500kEintracht Braunschweig
2019-06-14€500kEintracht Braunschweig
2019-09-25€600kKarlsruher SC
2019-12-13€1MKarlsruher SC
2020-04-08€800kKarlsruher SC
2020-07-15€1.5MKarlsruher SC
2021-02-08€1.8MKarlsruher SC
2021-06-16€1.8MKarlsruher SC
2021-12-15€1.8MKarlsruher SC
2022-06-16€2MKarlsruher SC
2022-09-21€2.5MVfL Bochum
2022-11-09€2.5MVfL Bochum
2023-06-22€2.8MVfL Bochum
2023-12-14€2.5MVfL Bochum
2024-03-27€1.8MVfL Bochum
2024-05-29€1.8MVfL Bochum
2024-12-20€1.5MVfL Bochum
2025-06-05€1MVfL Bochum
2025-12-16€750kVfL Bochum

Audit context group-level, not about this player

Audit group
UEFA
Population gap, Model A
+0.093 95% CI +0.063 to +0.124
This player, market vs held-out A
−0.033

The group comes from first-listed citizenship and is never a model input. Across the population, non-UEFA players' market values sit about 10% above Model A's held-out estimates, relative to UEFA players in the same leagues. One player's residual says nothing about that pattern (typical miss ×1.50), and none of it is evidence of discrimination: the target may itself be biased. Open the Fairness Audit

In context observed value among comparable players in this build

All players in the Terminal →

Bundesliga451 players · median €5M

Valued above 5% of the 451 Bundesliga players.

€300k€2M€15M€100M€750kSee them in the Explorer →

Attackers, all leagues1,583 players · median €2.5M

Valued above 24% of the 1,583 attackers.

€20k€300k€5M€75M€750kSee them in the Explorer →

Where Hofmann appears

Watchlists and the comparison tray are kept in this browser only.

Near this valuation closest observed values: same league, then same position

Counts and ranks of observed Transfermarkt values only; model errors are never ranked here. Full player export: Every player in the modelling population (D-011).