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…

Portrait of Fabián Ruiz

Fabián

Ruiz

CMSpain · Paris Saint-Germain

№ 350219World Class €26.8M +0.11

Photo: Bryan Berlin / WikiPortraits, CC BY-SA 4.0 (background removed)

Player dossierLigue 1

FabiánRuiz

CMCentral MidfieldMidfield

Club
Paris Saint-Germain
League
Ligue 1
Nationality
Spain
Age
30
Height
188 cm
Foot
Left
Valued
1 Jun 2026

Reading the valuation

The market values Ruiz at €30M. Model A, which never saw Ruiz during training, estimates €26.8M: the market value is 12% above that estimate.

That is a factor of ×1.12. 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 €16.8M, 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.11A €26.8M▲ +0.58B €16.8M
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
85
Minutes
5,360
Goals
10
Assists
16
Started
62/85
Min / app
63
Cards
7Y 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 Ruiz…

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 €30M

Checking API
EmergingEstablishedEliteWorld Class€2M€10M€30M€100k€1M€100MMarket €30MModel A €26.8M

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,687 midfielders

Fabián Ruiz's percentiles among midfielders: Goals per 90 76th, Assists per 90 94th, Minutes, two years 90th, Starts 57th, Minutes, last 365 days 73rd, European club minutes 99th76thGoals94thAssists90thMinutes57thStarts73rdRecent99thEurope

Dashed ring: the midfielder median (50th percentile)

European club minutes

Share of minutes played in UEFA club competitions.

41% this player0% midfielder median99th percentile

0%peer deciles · median line · this player ●85%

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
€200k
Sept 2015
Peak
€60M
Oct 2019
Model target
€30M
Jun 2026
Valuations
33
5 club changes
Jun 2026€30MParis Saint-GermainValuation the model is trained to reproduce

Jun 2026: €30M, Paris Saint-Germain. Dotted lines mark the €2M, €10M and €30M tier boundaries.

Show as a table
DateMarket valueClub
2015-09-20€200kReal Betis B
2016-02-22€500kReal Betis B
2016-07-15€500kReal Betis Balompié
2017-01-24€500kElche CF
2017-06-29€500kElche CF
2018-01-01€7.5MReal Betis Balompié
2018-03-22€15MReal Betis Balompié
2018-05-30€20MReal Betis Balompié
2018-10-12€25MSSC Napoli
2018-12-20€32MSSC Napoli
2019-03-01€40MSSC Napoli
2019-06-06€50MSSC Napoli
2019-10-08€60MSSC Napoli
2019-12-12€60MSSC Napoli
2020-04-08€48MSSC Napoli
2020-08-25€50MSSC Napoli
2020-12-29€48MSSC Napoli
2021-03-23€44MSSC Napoli
2021-05-31€45MSSC Napoli
2021-12-28€55MSSC Napoli
2022-06-07€55MSSC Napoli
2022-09-19€45MParis Saint-Germain
2022-11-02€45MParis Saint-Germain
2023-03-27€38MParis Saint-Germain
2023-06-27€32MParis Saint-Germain
2023-10-16€30MParis Saint-Germain
2023-12-18€30MParis Saint-Germain
2024-06-03€30MParis Saint-Germain
2024-07-18€35MParis Saint-Germain
2024-12-10€35MParis Saint-Germain
2025-06-03€40MParis Saint-Germain
2025-12-15€40MParis Saint-Germain
2026-06-01€30MParis Saint-Germain

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.112

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 →

Ligue 1423 players · median €5M

Valued above 92% of the 423 Ligue 1 players.

€100k€750k€5M€30M€30MSee them in the Explorer →

Midfielders, all leagues1,687 players · median €2M

Valued above 93% of the 1,687 midfielders.

€20k€200k€2M€20M€30MSee them in the Explorer →

Where Ruiz 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).