Baselight

Ultimate Basketball Dataset

Players, teams, matches, stats, and so much more from the world of basketball

@blt.ultimate_basketball_dataset

Loading...
Loading...

About this Dataset

Ultimate Basketball Dataset

The Ultimate Basketball Dataset is a comprehensive, structured collection of global basketball data compiled by the Baselight team and partners. It includes standardized information on competitions, seasons, matches, teams, players, odds, and more — spanning national leagues and international tournaments worldwide.

This dataset is designed to support deep statistical analysis, machine learning models, scouting, and historical research. All data has been normalized across competitions and time to ensure consistency and ease of querying.

We welcome contributions and suggestions — help us expand and refine the dataset further!

Tables

Competitions

@blt.ultimate_basketball_dataset.competitions
  • 28.95 KB
  • 426 rows
  • 5 columns
Loading...

CREATE TABLE competitions (
  "competition_id" VARCHAR,
  "slug" VARCHAR,
  "name" VARCHAR,
  "type" VARCHAR,
  "country" VARCHAR
);

Odds

@blt.ultimate_basketball_dataset.match_betting_odds
  • 2.9 MB
  • 1355043 rows
  • 7 columns
Loading...

CREATE TABLE match_betting_odds (
  "match_id" VARCHAR,
  "bookmaker" VARCHAR,
  "market" VARCHAR,
  "outcome" VARCHAR,
  "odds" DOUBLE,
  "odds_type" VARCHAR,
  "collected_at" TIMESTAMP
);

Matches

@blt.ultimate_basketball_dataset.matches
  • 4.9 MB
  • 94308 rows
  • 26 columns
Loading...

CREATE TABLE matches (
  "match_id" VARCHAR,
  "season_id" VARCHAR,
  "date" TIMESTAMP,
  "home_team_id" VARCHAR,
  "home_team_name" VARCHAR,
  "away_team_id" VARCHAR,
  "away_team_name" VARCHAR,
  "venue_name" VARCHAR,
  "venue_city" VARCHAR,
  "venue_country" VARCHAR,
  "referees" VARCHAR,
  "raw_status_short" VARCHAR,
  "raw_status_long" VARCHAR,
  "status" VARCHAR,
  "home_score" DOUBLE,
  "away_score" DOUBLE,
  "home_score_q1" DOUBLE,
  "home_score_q2" DOUBLE,
  "home_score_q3" DOUBLE,
  "home_score_q4" DOUBLE,
  "home_score_ot" DOUBLE,
  "away_score_q1" DOUBLE,
  "away_score_q2" DOUBLE,
  "away_score_q3" DOUBLE,
  "away_score_q4" DOUBLE,
  "away_score_ot" DOUBLE
);

Match Referees

@blt.ultimate_basketball_dataset.matches_referees
  • 461.8 KB
  • 29703 rows
  • 3 columns
Loading...

CREATE TABLE matches_referees (
  "match_id" VARCHAR,
  "referee_id" VARCHAR,
  "referee_name" VARCHAR
);

Match Player Stats

@blt.ultimate_basketball_dataset.match_player_stats
  • 11.81 MB
  • 746400 rows
  • 27 columns
Loading...

CREATE TABLE match_player_stats (
  "match_id" VARCHAR,
  "team_id" VARCHAR,
  "player_id" VARCHAR,
  "player_name" VARCHAR,
  "starters_bench" VARCHAR,
  "position" VARCHAR,
  "minutes_played" VARCHAR,
  "points" DOUBLE,
  "assists" DOUBLE,
  "personal_fouls" DOUBLE,
  "steals" DOUBLE,
  "turnovers" DOUBLE,
  "blocks" DOUBLE,
  "plus_minus" VARCHAR,
  "comment" VARCHAR,
  "field_goals_made" DOUBLE,
  "field_goals_attempted" DOUBLE,
  "field_goal_percentage" DOUBLE,
  "threepoint_made" DOUBLE,
  "threepoint_attempted" DOUBLE,
  "threepoint_percentage" DOUBLE,
  "freethrows_made" DOUBLE,
  "freethrows_attempted" DOUBLE,
  "freethrow_percentage" DOUBLE,
  "rebounds_offensive" DOUBLE,
  "rebounds_defensive" DOUBLE,
  "rebounds_total" DOUBLE
);

Match Stats

@blt.ultimate_basketball_dataset.match_stats
  • 2.69 MB
  • 1273304 rows
  • 4 columns
Loading...

CREATE TABLE match_stats (
  "match_id" VARCHAR,
  "team_id" VARCHAR,
  "type" VARCHAR,
  "value" DOUBLE
);

NBA Standings

@blt.ultimate_basketball_dataset.nba_standings
  • 32.41 KB
  • 1110 rows
  • 27 columns
Loading...

CREATE TABLE nba_standings (
  "snapshot_date" TIMESTAMP,
  "season_id" VARCHAR,
  "team_id" VARCHAR,
  "team_name" VARCHAR,
  "conference_name" VARCHAR,
  "conference_rank" BIGINT,
  "conference_games_played" BIGINT,
  "conference_games_win" BIGINT,
  "conference_games_loss" BIGINT,
  "division_name" VARCHAR,
  "division_rank" BIGINT,
  "division_games_played" BIGINT,
  "division_games_win" BIGINT,
  "division_games_loss" BIGINT,
  "win_total" BIGINT,
  "win_home" BIGINT,
  "win_away" BIGINT,
  "win_pct" DOUBLE,
  "win_last10" BIGINT,
  "loss_total" BIGINT,
  "loss_home" BIGINT,
  "loss_away" BIGINT,
  "loss_pct" DOUBLE,
  "loss_last10" BIGINT,
  "streak" BIGINT,
  "win_streak" BOOLEAN,
  "games_behind" DOUBLE
);

Non-NBA Standings

@blt.ultimate_basketball_dataset.non_nba_standings
  • 177.31 KB
  • 17248 rows
  • 16 columns
Loading...

CREATE TABLE non_nba_standings (
  "snapshot_date" TIMESTAMP,
  "season_id" VARCHAR,
  "team_id" VARCHAR,
  "team_name" VARCHAR,
  "group_name" VARCHAR,
  "rank" BIGINT,
  "group_points" DOUBLE,
  "points_for" BIGINT,
  "points_against" BIGINT,
  "games_played" BIGINT,
  "games_win" BIGINT,
  "games_win_pct" DOUBLE,
  "games_lose" BIGINT,
  "games_lose_pct" DOUBLE,
  "stage" VARCHAR,
  "notes" VARCHAR
);

Players

@blt.ultimate_basketball_dataset.players
  • 392.74 KB
  • 6112 rows
  • 9 columns
Loading...

CREATE TABLE players (
  "player_id" VARCHAR,
  "name" VARCHAR,
  "full_name" VARCHAR,
  "date_of_birth" TIMESTAMP,
  "country_of_birth" VARCHAR,
  "positions" VARCHAR,
  "height_cm" DOUBLE,
  "weight_kg" DOUBLE,
  "college" VARCHAR
);

Player Team History

@blt.ultimate_basketball_dataset.player_team_history
  • 297.15 KB
  • 42186 rows
  • 6 columns
Loading...

CREATE TABLE player_team_history (
  "player_id" VARCHAR,
  "team_id" VARCHAR,
  "competition_id" VARCHAR,
  "season_id" VARCHAR,
  "season_label" VARCHAR,
  "position" VARCHAR
);

Referees

@blt.ultimate_basketball_dataset.referees
  • 15.39 KB
  • 239 rows
  • 4 columns
Loading...

CREATE TABLE referees (
  "referee_id" VARCHAR,
  "name" VARCHAR,
  "nationality" VARCHAR,
  "date_of_birth" VARCHAR
);

Seasons

@blt.ultimate_basketball_dataset.seasons
  • 181.8 KB
  • 3332 rows
  • 5 columns
Loading...

CREATE TABLE seasons (
  "season_id" VARCHAR,
  "competition_id" VARCHAR,
  "start_date" TIMESTAMP,
  "end_date" TIMESTAMP,
  "season_label" VARCHAR
);

Teams

@blt.ultimate_basketball_dataset.teams
  • 52.71 KB
  • 1000 rows
  • 4 columns
Loading...

CREATE TABLE teams (
  "team_id" VARCHAR,
  "name" VARCHAR,
  "team_type" VARCHAR,
  "country" VARCHAR
);

Share link

Anyone who has the link will be able to view this.