Football Club Analytics Set (EU)

SPTFBC901· 1.3M records · 58 tables · v2.0.0 · Updated 2026-06-30
Sports & Athlete Performance Sports & Athlete Performance Dataset API
CSV JSON SQL Imagesfootballsports-analyticsitalyplayer-performancesports-sciencetacticspredictionclub-finance

Overview

A club-scale football analytics warehouse built for serious analysis and modelling. Follow the modelled Valdoro Calcio through eleven seasons from 2015/16 to 2025/26, including two seasons in the Italian First Division, with every league fixture in its division and every club cup tie. The 58 linked tables cover players, registrations, contracts, club tenure and transfer economics, match events and xG inputs, lineups and tactical phases, training and GPS output, daily wellness and availability, injuries and rehabilitation, leakage-safe prediction features, salaries and club finance. The 1,410 media assets add season-linked headshots and full-body images with plain green jerseys, plain white shorts and detailed varied boots, plus 45 distinct club crest pairs delivered separately. Player uniforms contain no crest, maker mark, sponsor, text, jersey number or shorts number. Match and goal analysis remains available through the detailed relational facts and coordinate-based goal reconstructions. Results are simulated once and standings, Elo, aggregates and predictive features are derived and reconciled from that shared history.

Squad and Performance

Four players from the squad, with the career numbers the dataset records for them. Every value below is read from the packaged tables.

Paolo Rinaldi
Paolo RinaldiSTStriker
BrazilAge 26Height 181 cmFoot Right
36Appearances
15Goals
4Assists
6.68Rating
By season2019/20 23 appearances, 14 G 4 A2020/21 13 appearances, 1 G 0 A
RatingAvg 6.67
1 / 4

Row Counts by Table

Counted from the files that ship, not estimated.

TableRows
players210
seasons11
competitions6
football_clubs45
club_media45
stadiums45
match_officials90
player_registrations330
player_media450
player_contracts330
transfers332
player_club_history210
coaches12
coach_spells12
technical_staff72
tactical_profiles14
match_tactics908
match_tactical_phases1,816
set_piece_routines40
set_piece_executions4,734
matches4,216
match_team_stats8,432
match_lineups8,155
match_player_stats7,258
match_events633,710
match_shots11,784
goals11,412
goal_reconstructions11,412
substitutions2,264
disciplinary1,199
standings_snapshots8,360
playoff_ties54
season_outcomes220
training_sessions2,870
training_participation86,100
physical_output89,195
wellness_daily120,540
load_monitoring120,540
injuries330
medical_treatments2,040
rehabilitation_milestones2,640
fitness_tests7,920
player_availability_daily120,540
international_duty252
player_season_aggregates602
team_season_aggregates267
elo_ratings8,432
market_odds29,512
match_prediction_features8,432
match_attendance4,216
academy_players120
scouting_reports900
player_salary_history330
club_financial_transactions1,320
club_season_financials11
operating_expenses1,056
commercial_contracts55
club_facilities6

Table Relationships

One parent record and seven child tables, each joined back on the same key.

70%
Loading diagram

Schema

Every table ships with typed columns, referential integrity, and documentation.

players· Rows: 210
ColumnTypeDescription
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
first_namevarchar(16)Human-readable first name. All people and organisations are fictional.
last_namevarchar(16)Human-readable last name. All people and organisations are fictional.
display_namevarchar(24)Human-readable display name. All people and organisations are fictional.
date_of_birthdateDate of birth for the record.
age_at_data_as_ofintegerAge at data as of for the record.
nationality_codevarchar(8)Stable code for nationality; its companion description carries the meaning.

+15 more columns in players. The full schema ships with the download.

seasons· Rows: 11
ColumnTypeDescription
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
season_labelvarchar(16)Season label for the record.
tierintegerTier for the record.
division_namevarchar(32)Human-readable division name. All people and organisations are fictional.
division_name_descriptionvarchar(72)Human-readable meaning of division name.
start_datedatestart date as an ISO 8601 calendar date.
end_datedateend date as an ISO 8601 calendar date.

+10 more columns in seasons. The full schema ships with the download.

competitions· Rows: 6
ColumnTypeDescription
competition_idvarchar(16)Stable fictional identifier for competition; use it for declared joins.
competition_namevarchar(40)Human-readable competition name. All people and organisations are fictional.
competition_formatvarchar(16)Competition format for the record.
competition_format_descriptionvarchar(72)Human-readable meaning of competition format.
tierintegerTier for the record.
legsintegerLegs for the record.
extra_time_allowedbooleanExtra time allowed for the record.

+4 more columns in competitions. The full schema ships with the download.

football_clubs· Rows: 45
ColumnTypeDescription
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
club_namevarchar(32)Human-readable club name. All people and organisations are fictional.
short_namevarchar(24)Human-readable short name. All people and organisations are fictional.
club_codevarchar(8)Stable code for club; its companion description carries the meaning.
cityvarchar(24)City for the record.
regionvarchar(32)Region for the record.
country_codevarchar(8)Stable code for country; its companion description carries the meaning.

+10 more columns in football_clubs. The full schema ships with the download.

club_media· Rows: 45
ColumnTypeDescription
club_media_idvarchar(8)Stable fictional identifier for club media; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
club_namevarchar(32)Human-readable club name. All people and organisations are fictional.
logo_svg_filevarchar(40)Dataset-relative SVG path to the fictional club crest.
logo_png_filevarchar(40)Dataset-relative PNG fallback path to the fictional club crest.
primary_colourvarchar(16)Primary colour for the record.
secondary_colourvarchar(16)Secondary colour for the record.

+3 more columns in club_media. The full schema ships with the download.

stadiums· Rows: 45
ColumnTypeDescription
stadium_idvarchar(8)Stable fictional identifier for stadium; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
stadium_namevarchar(24)Human-readable stadium name. All people and organisations are fictional.
cityvarchar(24)City for the record.
regionvarchar(32)Region for the record.
capacityintegerCapacity for the record.
opened_yearintegerOpened year for the record.

+10 more columns in stadiums. The full schema ships with the download.

match_officials· Rows: 90
ColumnTypeDescription
official_idvarchar(8)Stable fictional identifier for official; use it for declared joins.
official_namevarchar(24)Human-readable official name. All people and organisations are fictional.
birth_yearintegerBirth year for the record.
regionvarchar(32)Region for the record.
seniority_bandvarchar(16)Seniority band for the record.
seniority_band_descriptionvarchar(56)Human-readable meaning of seniority band.
career_matches_before_datasetintegerCareer matches before dataset for the record.

+4 more columns in match_officials. The full schema ships with the download.

player_registrations· Rows: 330
ColumnTypeDescription
registration_idvarchar(16)Stable fictional identifier for registration; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
club_namevarchar(24)Human-readable club name. All people and organisations are fictional.
squad_numbervarchar(8)Squad number for the record.
squad_list_codevarchar(8)Stable code for squad list; its companion description carries the meaning.

+13 more columns in player_registrations. The full schema ships with the download.

player_media· Rows: 450
ColumnTypeDescription
player_media_idvarchar(16)Stable fictional identifier for player media; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
player_namevarchar(24)Human-readable player name. All people and organisations are fictional.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
registration_idvarchar(16)Stable fictional identifier for registration; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
club_namevarchar(24)Human-readable club name. All people and organisations are fictional.

+11 more columns in player_media. The full schema ships with the download.

player_contracts· Rows: 330
ColumnTypeDescription
contract_idvarchar(16)Stable fictional identifier for contract; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
signed_ondatesigned on as an ISO 8601 calendar date.
expires_ondateexpires on as an ISO 8601 calendar date.
contract_typevarchar(16)Contract type for the record.
contract_type_descriptionvarchar(48)Human-readable meaning of contract type.

+9 more columns in player_contracts. The full schema ships with the download.

transfers· Rows: 332
ColumnTypeDescription
transfer_idvarchar(16)Stable fictional identifier for transfer; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
directionvarchar(16)Direction for the record.
direction_descriptionvarchar(56)Human-readable meaning of direction.
window_codevarchar(8)Stable code for window; its companion description carries the meaning.

+12 more columns in transfers. The full schema ships with the download.

player_club_history· Rows: 210
ColumnTypeDescription
player_club_history_idvarchar(16)Stable fictional identifier for player club history; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
player_namevarchar(24)Human-readable player name. All people and organisations are fictional.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
club_namevarchar(24)Human-readable club name. All people and organisations are fictional.
entry_season_idvarchar(16)Stable fictional identifier for entry season; use it for declared joins.
exit_season_idvarchar(16)Stable fictional identifier for exit season; use it for declared joins.

+20 more columns in player_club_history. The full schema ships with the download.

coaches· Rows: 12
ColumnTypeDescription
coach_idvarchar(8)Stable fictional identifier for coach; use it for declared joins.
coach_namevarchar(24)Human-readable coach name. All people and organisations are fictional.
date_of_birthdateDate of birth for the record.
nationality_codevarchar(8)Stable code for nationality; its companion description carries the meaning.
nationality_namevarchar(16)Human-readable nationality name. All people and organisations are fictional.
coaching_licence_codevarchar(8)Stable code for coaching licence; its companion description carries the meaning.
coaching_licence_descriptionvarchar(72)Human-readable meaning of coaching licence.

+4 more columns in coaches. The full schema ships with the download.

coach_spells· Rows: 12
ColumnTypeDescription
spell_idvarchar(8)Stable fictional identifier for spell; use it for declared joins.
coach_idvarchar(8)Stable fictional identifier for coach; use it for declared joins.
appointed_ondateappointed on as an ISO 8601 calendar date.
departed_ondatedeparted on as an ISO 8601 calendar date.
role_codevarchar(16)Stable code for role; its companion description carries the meaning.
role_descriptionvarchar(56)Human-readable meaning of role.
departure_reason_codevarchar(24)Stable code for departure reason; its companion description carries the meaning.

+7 more columns in coach_spells. The full schema ships with the download.

technical_staff· Rows: 72
ColumnTypeDescription
staff_idvarchar(16)Stable fictional identifier for staff; use it for declared joins.
spell_idvarchar(8)Stable fictional identifier for spell; use it for declared joins.
staff_namevarchar(24)Human-readable staff name. All people and organisations are fictional.
role_codevarchar(24)Stable code for role; its companion description carries the meaning.
role_descriptionvarchar(80)Human-readable meaning of role.
start_datedatestart date as an ISO 8601 calendar date.
end_datedateend date as an ISO 8601 calendar date.

+3 more columns in technical_staff. The full schema ships with the download.

tactical_profiles· Rows: 14
ColumnTypeDescription
profile_idvarchar(16)Stable fictional identifier for profile; use it for declared joins.
spell_idvarchar(8)Stable fictional identifier for spell; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
base_formationvarchar(16)base formation, using standard goalkeeper-to-forward notation.
in_possession_shapevarchar(16)in possession shape, using standard goalkeeper-to-forward notation.
out_of_possession_shapevarchar(16)out of possession shape, using standard goalkeeper-to-forward notation.
buildup_style_codevarchar(24)Stable code for buildup style; its companion description carries the meaning.

+14 more columns in tactical_profiles. The full schema ships with the download.

match_tactics· Rows: 908
ColumnTypeDescription
match_tactic_idvarchar(16)Stable fictional identifier for match tactic; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
planned_formationvarchar(16)planned formation, using standard goalkeeper-to-forward notation.
actual_starting_formationvarchar(16)actual starting formation, using standard goalkeeper-to-forward notation.
pressing_trigger_codevarchar(24)Stable code for pressing trigger; its companion description carries the meaning.
pressing_trigger_descriptionvarchar(80)Human-readable meaning of pressing trigger.

+11 more columns in match_tactics. The full schema ships with the download.

match_tactical_phases· Rows: 1,816
ColumnTypeDescription
phase_idvarchar(16)Stable fictional identifier for phase; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
minute_fromintegerminute from as an ISO 8601 calendar date.
minute_tointegerminute to as an ISO 8601 calendar date.
formationvarchar(16)formation, using standard goalkeeper-to-forward notation.
trigger_codevarchar(24)Stable code for trigger; its companion description carries the meaning.

+8 more columns in match_tactical_phases. The full schema ships with the download.

set_piece_routines· Rows: 40
ColumnTypeDescription
routine_idvarchar(8)Stable fictional identifier for routine; use it for declared joins.
routine_namevarchar(32)Human-readable routine name. All people and organisations are fictional.
set_piece_typevarchar(16)Set piece type for the record.
set_piece_type_descriptionvarchar(24)Human-readable meaning of set piece type.
delivery_typevarchar(16)Delivery type for the record.
delivery_type_descriptionvarchar(56)Human-readable meaning of delivery type.
target_zonevarchar(24)Target zone for the record.

+9 more columns in set_piece_routines. The full schema ships with the download.

set_piece_executions· Rows: 4,734
ColumnTypeDescription
execution_idvarchar(16)Stable fictional identifier for execution; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
routine_idvarchar(8)Stable fictional identifier for routine; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
minuteintegerminute in regulation match minutes.
delivery_zonevarchar(24)Delivery zone for the record.

+11 more columns in set_piece_executions. The full schema ships with the download.

matches· Rows: 4,216
ColumnTypeDescription
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
competition_idvarchar(16)Stable fictional identifier for competition; use it for declared joins.
kickoff_datedatekickoff date as an ISO 8601 calendar date.
kickoff_local_timevarchar(16)Kickoff local time for the record.
matchdayintegerMatchday for the record.
round_namevarchar(16)Human-readable round name. All people and organisations are fictional.

+26 more columns in matches. The full schema ships with the download.

match_team_stats· Rows: 8,432
ColumnTypeDescription
match_team_stat_idvarchar(16)Stable fictional identifier for match team stat; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
opponent_club_idvarchar(8)Stable fictional identifier for opponent club; use it for declared joins.
home_awayvarchar(16)Home away for the record.
home_away_descriptionvarchar(48)Human-readable meaning of home away.
goals_forintegerGoals for for the record.

+47 more columns in match_team_stats. The full schema ships with the download.

match_lineups· Rows: 8,155
ColumnTypeDescription
lineup_idvarchar(16)Stable fictional identifier for lineup; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
selection_rolevarchar(16)Selection role for the record.
selection_role_descriptionvarchar(48)Human-readable meaning of selection role.
shirt_numbervarchar(8)Shirt number for the record.

+13 more columns in match_lineups. The full schema ships with the download.

match_player_stats· Rows: 7,258
ColumnTypeDescription
match_player_stat_idvarchar(16)Stable fictional identifier for match player stat; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
minutes_playedintegerminutes played in minutes.
starter_flagbooleanBoolean indicator for starter.
goalsintegerGoals for the record.

+52 more columns in match_player_stats. The full schema ships with the download.

match_events· Rows: 633,710
ColumnTypeDescription
event_idvarchar(16)Stable fictional identifier for event; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
sequence_novarchar(8)Sequence no for the record.
periodintegerMatch period: 1 for first half and 2 for second half.
minuteintegerminute in regulation match minutes.
secondintegerSecond for the record.
event_typevarchar(16)Event type for the record.

+24 more columns in match_events. The full schema ships with the download.

match_shots· Rows: 11,784
ColumnTypeDescription
shot_idvarchar(16)Stable fictional identifier for shot; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
source_event_idvarchar(16)Stable fictional identifier for source event; use it for declared joins.
minuteintegerminute in regulation match minutes.
periodintegerMatch period: 1 for first half and 2 for second half.

+22 more columns in match_shots. The full schema ships with the download.

goals· Rows: 11,412
ColumnTypeDescription
goal_idvarchar(16)Stable fictional identifier for goal; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
shot_idvarchar(16)Stable fictional identifier for shot; use it for declared joins.
scoring_club_idvarchar(8)Stable fictional identifier for scoring club; use it for declared joins.
scorer_player_idvarchar(16)Stable fictional identifier for scorer player; use it for declared joins.
assist_player_idvarchar(16)Stable fictional identifier for assist player; use it for declared joins.
second_assist_player_idvarchar(16)Stable fictional identifier for second assist player; use it for declared joins.

+20 more columns in goals. The full schema ships with the download.

goal_reconstructions· Rows: 11,412
ColumnTypeDescription
goal_reconstruction_idvarchar(16)Stable fictional identifier for goal reconstruction; use it for declared joins.
goal_idvarchar(16)Stable fictional identifier for goal; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
competition_idvarchar(16)Stable fictional identifier for competition; use it for declared joins.
scoring_club_idvarchar(8)Stable fictional identifier for scoring club; use it for declared joins.
scoring_club_namevarchar(32)Human-readable scoring club name. All people and organisations are fictional.

+25 more columns in goal_reconstructions. The full schema ships with the download.

substitutions· Rows: 2,264
ColumnTypeDescription
substitution_idvarchar(16)Stable fictional identifier for substitution; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
minuteintegerminute in regulation match minutes.
periodintegerMatch period: 1 for first half and 2 for second half.
score_statevarchar(32)Score state for the record.
player_in_idvarchar(16)Stable fictional identifier for player in; use it for declared joins.

+9 more columns in substitutions. The full schema ships with the download.

disciplinary· Rows: 1,199
ColumnTypeDescription
disciplinary_idvarchar(16)Stable fictional identifier for disciplinary; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
card_colourvarchar(16)Card colour for the record.
card_colour_descriptionvarchar(64)Human-readable meaning of card colour.
minuteintegerminute in regulation match minutes.

+10 more columns in disciplinary. The full schema ships with the download.

standings_snapshots· Rows: 8,360
ColumnTypeDescription
standing_idvarchar(16)Stable fictional identifier for standing; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
matchdayintegerMatchday for the record.
matchday_datedatematchday date as an ISO 8601 calendar date.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
positionintegerPosition for the record.
playedintegerPlayed for the record.

+14 more columns in standings_snapshots. The full schema ships with the download.

playoff_ties· Rows: 54
ColumnTypeDescription
tie_idvarchar(16)Stable fictional identifier for tie; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
competition_idvarchar(16)Stable fictional identifier for competition; use it for declared joins.
round_namevarchar(16)Human-readable round name. All people and organisations are fictional.
leg_numbervarchar(8)Leg number for the record.
home_club_idvarchar(8)Stable fictional identifier for home club; use it for declared joins.
away_club_idvarchar(8)Stable fictional identifier for away club; use it for declared joins.

+10 more columns in playoff_ties. The full schema ships with the download.

season_outcomes· Rows: 220
ColumnTypeDescription
outcome_idvarchar(16)Stable fictional identifier for outcome; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
final_positionintegerFinal position for the record.
pointsintegerpoints under three points for a win and one for a draw unless stated otherwise.
promoted_flagbooleanBoolean indicator for promoted.
relegated_flagbooleanBoolean indicator for relegated.

+16 more columns in season_outcomes. The full schema ships with the download.

training_sessions· Rows: 2,870
ColumnTypeDescription
session_idvarchar(16)Stable fictional identifier for session; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
session_datedatesession date as an ISO 8601 calendar date.
microcycle_day_codevarchar(8)Stable code for microcycle day; its companion description carries the meaning.
microcycle_day_descriptionvarchar(96)Human-readable meaning of microcycle day.
session_typevarchar(16)Session type for the record.
session_type_descriptionvarchar(64)Human-readable meaning of session type.

+9 more columns in training_sessions. The full schema ships with the download.

training_participation· Rows: 86,100
ColumnTypeDescription
participation_idvarchar(16)Stable fictional identifier for participation; use it for declared joins.
session_idvarchar(16)Stable fictional identifier for session; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
participation_statusvarchar(24)Participation status for the record.
participation_status_descriptionvarchar(64)Human-readable meaning of participation status.
reason_codevarchar(32)Stable code for reason; its companion description carries the meaning.
reason_descriptionvarchar(32)Human-readable meaning of reason.

+6 more columns in training_participation. The full schema ships with the download.

physical_output· Rows: 89,195
ColumnTypeDescription
output_idvarchar(16)Stable fictional identifier for output; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
session_idvarchar(16)Stable fictional identifier for session; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
output_datedateoutput date as an ISO 8601 calendar date.
exposure_typevarchar(16)Exposure type for the record.
exposure_type_descriptionvarchar(56)Human-readable meaning of exposure type.

+24 more columns in physical_output. The full schema ships with the download.

wellness_daily· Rows: 120,540
ColumnTypeDescription
wellness_idvarchar(16)Stable fictional identifier for wellness; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
wellness_datedatewellness date as an ISO 8601 calendar date.
submission_statusvarchar(16)Submission status for the record.
submission_status_descriptionvarchar(104)Human-readable meaning of submission status.
sleep_duration_hoursnumeric(4,1)sleep duration in hours.
sleep_quality_1_5integersleep quality self-report on a 1 to 5 scale.

+13 more columns in wellness_daily. The full schema ships with the download.

load_monitoring· Rows: 120,540
ColumnTypeDescription
load_idvarchar(16)Stable fictional identifier for load; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
monitoring_datedatemonitoring date as an ISO 8601 calendar date.
daily_load_aunumeric(7,1)Sum of session load and match-minute load for the player-day, in arbitrary units.
acute_load_7d_aunumeric(7,1)Rolling sum of daily load over the current day and previous six days, in arbitrary units.
chronic_load_28d_aunumeric(7,1)Rolling 28-day load divided by four to express a weekly-equivalent chronic load, in arbitrary units.
acute_chronic_workload_rationumeric(6,3)acute_load_7d_au divided by chronic_load_28d_au; empty until chronic load is non-zero.

+12 more columns in load_monitoring. The full schema ships with the download.

injuries· Rows: 330
ColumnTypeDescription
injury_idvarchar(16)Stable fictional identifier for injury; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
session_idvarchar(16)Stable fictional identifier for session; use it for declared joins.
onset_datedateonset date as an ISO 8601 calendar date.
body_region_codevarchar(16)Stable code for body region; its companion description carries the meaning.
body_region_descriptionvarchar(16)Human-readable meaning of body region.

+20 more columns in injuries. The full schema ships with the download.

medical_treatments· Rows: 2,040
ColumnTypeDescription
treatment_idvarchar(16)Stable fictional identifier for treatment; use it for declared joins.
injury_idvarchar(16)Stable fictional identifier for injury; use it for declared joins.
treatment_datedatetreatment date as an ISO 8601 calendar date.
modality_codevarchar(24)Stable code for modality; its companion description carries the meaning.
modality_descriptionvarchar(40)Human-readable meaning of modality.
duration_minintegerduration in minutes.
practitioner_rolevarchar(24)Practitioner role for the record.

+3 more columns in medical_treatments. The full schema ships with the download.

rehabilitation_milestones· Rows: 2,640
ColumnTypeDescription
milestone_idvarchar(16)Stable fictional identifier for milestone; use it for declared joins.
injury_idvarchar(16)Stable fictional identifier for injury; use it for declared joins.
stage_codevarchar(32)Stable code for stage; its companion description carries the meaning.
stage_descriptionvarchar(32)Human-readable meaning of stage.
planned_datedateplanned date as an ISO 8601 calendar date.
achieved_datedateachieved date as an ISO 8601 calendar date.
delay_daysintegerDelay days for the record.

+3 more columns in rehabilitation_milestones. The full schema ships with the download.

fitness_tests· Rows: 7,920
ColumnTypeDescription
test_idvarchar(16)Stable fictional identifier for test; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
test_datedatetest date as an ISO 8601 calendar date.
test_codevarchar(32)Stable code for test; its companion description carries the meaning.
test_descriptionvarchar(64)Human-readable meaning of test.
valuenumeric(8,2)Value for the record.
unitvarchar(16)Unit for the record.

+6 more columns in fitness_tests. The full schema ships with the download.

player_availability_daily· Rows: 120,540
ColumnTypeDescription
availability_idvarchar(16)Stable fictional identifier for availability; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
availability_datedateavailability date as an ISO 8601 calendar date.
status_codevarchar(24)Stable code for status; its companion description carries the meaning.
status_descriptionvarchar(80)Human-readable meaning of status.
reason_idvarchar(16)Stable fictional identifier for reason; use it for declared joins.
days_in_current_statusintegerDays in current status for the record.

+4 more columns in player_availability_daily. The full schema ships with the download.

international_duty· Rows: 252
ColumnTypeDescription
duty_idvarchar(16)Stable fictional identifier for duty; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
national_team_namevarchar(40)Human-readable national team name. All people and organisations are fictional.
level_codevarchar(16)Stable code for level; its companion description carries the meaning.
level_descriptionvarchar(56)Human-readable meaning of level.
window_startdatewindow start as an ISO 8601 calendar date.
window_enddatewindow end as an ISO 8601 calendar date.

+8 more columns in international_duty. The full schema ships with the download.

player_season_aggregates· Rows: 602
ColumnTypeDescription
aggregate_idvarchar(16)Stable fictional identifier for aggregate; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
competition_idvarchar(16)Stable fictional identifier for competition; use it for declared joins.
appearancesintegerAppearances for the record.
startsintegerStarts for the record.
minutesintegerminutes in minutes.

+16 more columns in player_season_aggregates. The full schema ships with the download.

team_season_aggregates· Rows: 267
ColumnTypeDescription
team_aggregate_idvarchar(16)Stable fictional identifier for team aggregate; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
competition_idvarchar(16)Stable fictional identifier for competition; use it for declared joins.
matchesintegerMatches for the record.
pointsintegerpoints under three points for a win and one for a draw unless stated otherwise.
goals_forintegerGoals for for the record.

+13 more columns in team_season_aggregates. The full schema ships with the download.

elo_ratings· Rows: 8,432
ColumnTypeDescription
rating_idvarchar(16)Stable fictional identifier for rating; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
rating_datedaterating date as an ISO 8601 calendar date.
opponent_club_idvarchar(8)Stable fictional identifier for opponent club; use it for declared joins.
rating_beforenumeric(9,3)rating before in the declared modelled rating system.

+10 more columns in elo_ratings. The full schema ships with the download.

market_odds· Rows: 29,512
ColumnTypeDescription
odds_idvarchar(16)Stable fictional identifier for odds; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
market_codevarchar(24)Stable code for market; its companion description carries the meaning.
market_descriptionvarchar(56)Human-readable meaning of market.
selection_codevarchar(16)Stable code for selection; its companion description carries the meaning.
selection_descriptionvarchar(32)Human-readable meaning of selection.
opening_decimal_pricenumeric(8,4)Opening decimal price for the record.

+8 more columns in market_odds. The full schema ships with the download.

match_prediction_features· Rows: 8,432
ColumnTypeDescription
feature_idvarchar(16)Stable fictional identifier for feature; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
opponent_club_idvarchar(8)Stable fictional identifier for opponent club; use it for declared joins.
kickoff_datedatekickoff date as an ISO 8601 calendar date.
home_awayvarchar(16)Home away for the record.
feature_source_cutoffdateLatest kickoff date used by any feature. Empty when no prior match exists and otherwise strictly earlier than kickoff_date.

+31 more columns in match_prediction_features. The full schema ships with the download.

match_attendance· Rows: 4,216
ColumnTypeDescription
attendance_idvarchar(16)Stable fictional identifier for attendance; use it for declared joins.
match_idvarchar(16)Stable fictional identifier for match; use it for declared joins.
tickets_issuedintegerTickets issued for the record.
turnstile_attendanceintegerturnstile attendance; zero is valid under a closed-doors restriction.
season_ticket_attendanceintegerseason ticket attendance; zero is valid under a closed-doors restriction.
hospitality_attendanceintegerhospitality attendance; zero is valid under a closed-doors restriction.
away_supporter_attendanceintegeraway supporter attendance; zero is valid under a closed-doors restriction.

+7 more columns in match_attendance. The full schema ships with the download.

academy_players· Rows: 120
ColumnTypeDescription
academy_player_idvarchar(16)Stable fictional identifier for academy player; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
team_levelvarchar(16)Team level for the record.
team_level_descriptionvarchar(64)Human-readable meaning of team level.
joined_academy_ondatejoined academy on as an ISO 8601 calendar date.
scholarship_flagbooleanBoolean indicator for scholarship.

+8 more columns in academy_players. The full schema ships with the download.

scouting_reports· Rows: 900
ColumnTypeDescription
report_idvarchar(16)Stable fictional identifier for report; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
report_datedatereport date as an ISO 8601 calendar date.
observer_codevarchar(8)Stable code for observer; its companion description carries the meaning.
observation_contextvarchar(16)Observation context for the record.
observation_context_descriptionvarchar(64)Human-readable meaning of observation context.
technical_score_1_10numeric(4,1)technical score on a 1 to 10 scale.

+11 more columns in scouting_reports. The full schema ships with the download.

player_salary_history· Rows: 330
ColumnTypeDescription
salary_idvarchar(16)Stable fictional identifier for salary; use it for declared joins.
player_idvarchar(16)Stable fictional identifier for player; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
contract_idvarchar(16)Stable fictional identifier for contract; use it for declared joins.
currencyvarchar(16)Currency for the record.
annual_gross_salary_eurnumeric(11,2)annual gross salary in euros.
estimated_bonus_eurnumeric(10,2)estimated bonus in euros.

+8 more columns in player_salary_history. The full schema ships with the download.

club_financial_transactions· Rows: 1,320
ColumnTypeDescription
financial_transaction_idvarchar(16)Stable fictional identifier for financial transaction; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
posting_monthvarchar(16)Posting month for the record.
transaction_categoryvarchar(32)Transaction category for the record.
transaction_category_descriptionvarchar(32)Human-readable meaning of transaction category.
revenue_expense_typevarchar(16)Revenue expense type for the record.
revenue_expense_descriptionvarchar(56)Human-readable meaning of revenue expense.

+5 more columns in club_financial_transactions. The full schema ships with the download.

club_season_financials· Rows: 11
ColumnTypeDescription
financial_idvarchar(16)Stable fictional identifier for financial; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
currencyvarchar(16)Currency for the record.
total_revenue_eurnumeric(12,2)total revenue in euros.
matchday_revenue_eurnumeric(11,2)matchday revenue in euros.
broadcast_revenue_eurnumeric(12,2)broadcast revenue in euros.
commercial_revenue_eurnumeric(11,2)commercial revenue in euros.

+10 more columns in club_season_financials. The full schema ships with the download.

operating_expenses· Rows: 1,056
ColumnTypeDescription
expense_idvarchar(16)Stable fictional identifier for expense; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
expense_monthvarchar(16)Expense month for the record.
cost_centre_codevarchar(24)Stable code for cost centre; its companion description carries the meaning.
cost_centre_descriptionvarchar(64)Human-readable meaning of cost centre.
expense_classvarchar(16)Expense class for the record.
expense_class_descriptionvarchar(56)Human-readable meaning of expense class.

+4 more columns in operating_expenses. The full schema ships with the download.

commercial_contracts· Rows: 55
ColumnTypeDescription
commercial_contract_idvarchar(16)Stable fictional identifier for commercial contract; use it for declared joins.
season_idvarchar(16)Stable fictional identifier for season; use it for declared joins.
partner_namevarchar(48)Human-readable partner name. All people and organisations are fictional.
contract_typevarchar(24)Contract type for the record.
contract_type_descriptionvarchar(24)Human-readable meaning of contract type.
starts_ondatestarts on as an ISO 8601 calendar date.
ends_ondateends on as an ISO 8601 calendar date.

+5 more columns in commercial_contracts. The full schema ships with the download.

club_facilities· Rows: 6
ColumnTypeDescription
facility_idvarchar(8)Stable fictional identifier for facility; use it for declared joins.
club_idvarchar(8)Stable fictional identifier for club; use it for declared joins.
facility_namevarchar(40)Human-readable facility name. All people and organisations are fictional.
facility_typevarchar(24)Facility type for the record.
facility_type_descriptionvarchar(24)Human-readable meaning of facility type.
cityvarchar(16)City for the record.
opened_ondateopened on as an ISO 8601 calendar date.

+9 more columns in club_facilities. The full schema ships with the download.

Sample Data

A snapshot of real rows from the dataset (values are fully synthetic).

player_media_idplayer_idseason_idclub_namesquad_numberseason_captain_flagheadshot_image_filefull_body_image_file
PMD0000001PLY0001SEA2015Valdoro Calcio24trueimage/player/season/SEA2015/headshot/PLY0001.pngimage/player/season/SEA2015/full-body/PLY0001.png
PMD0000002PLY0002SEA2015Valdoro Calcio17falseimage/player/season/SEA2015/headshot/PLY0002.pngimage/player/season/SEA2015/full-body/PLY0002.png
PMD0000003PLY0003SEA2015Valdoro Calcio7falseimage/player/season/SEA2015/headshot/PLY0003.pngimage/player/season/SEA2015/full-body/PLY0003.png

Version History

v2.0.02026-06-30Version 2.0 adds season-addressable player headshots and full-body images with plain unmarked jerseys and shorts plus varied detailed boots; 45 distinct scalable club crests delivered separately; player tenure and transfer economics; readable club names beside keys; and coordinate-based reconstruction data for every goal.