PGA Data Dictionary
Main
golf.players16 fields· 1 refsendpoints →
Every professional golfer — active tour members, conditional-status players, alumni who have competed at the highest level, and country-of-origin information.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| league_id | stringnullable | — | 52955 | Official tour player identifier |
| league_player_id | integer | → golf.players | 52955 | Official PGA Tour player id |
| birth_city | stringnullable | — | Seoul | — |
| birth_country | stringnullable | — | United States | — |
| birth_date | datenullable | — | 1989-07-23T04:00:00.000Z | — |
| birth_state | stringnullable | — | California | — |
| college | stringnullable | — | Oklahoma State University | — |
| country | stringnullable | — | USA | — |
| first_name | string | — | Michael | — |
| full_name | string | — | Zach Johnson | — |
| last_name | string | — | Kim | — |
| pga_debut_year | integernullable | — | 2019 | — |
| photo_url | stringnullable | — | — | — |
| short_name | stringnullable | — | C. Johnson | — |
| swings | stringnullable | — | — | Right, Left |
golf.seasons6 fields· 1 refsendpoints →
Each season on a professional golf tour — the year-long schedule of tournaments leading up to the FedExCup playoffs (PGA), the major championships, and the season-ending Tour Championship.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| league_id | stringnullable | — | liv-2021 | Official tour season identifier |
| tour_id | bigint | → golf.tours | 14 | — |
| end_date | timestamptznullable | — | 2021-12-31T00:00:00.000Z | — |
| start_date | timestamptz | — | 2021-01-01T00:00:00.000Z | — |
| start_year | integer | — | 2021 | — |
golf.tournaments22 fields· 3 refsendpoints →
Every professional golf tournament — the four majors (Masters, PGA Championship, U.S. Open, Open Championship), the PGA Tour stops, LIV events, the FedExCup playoffs, and Korn Ferry Tour events.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| league_id | stringnullable | — | R2025016 | Official tour tournament identifier |
| season_id | bigintnullable | → golf.seasons | 22 | — |
| tour_id | bigintnullable | → golf.tours | 12 | — |
| tournament_id | integer | → golf.tournaments | 2025016 | — |
| canceled | boolean | — | false | — |
| city | stringnullable | — | Ponte Vedra Beach | — |
| country | stringnullable | — | United States of America | — Values United States of AmericaMexicoJapanBermudaPuerto RicoDominican RepublicScotlandCanadaEnglandNorthern IrelandFranceItalySouth KoreaPeople's Republic of ChinaAustralia |
| end_date | timestamptznullable | — | — | — |
| is_in_progress | boolean | — | false | — |
| is_over | boolean | — | true | — Values truefalse |
| name | string | — | The RSM Classic | — |
| par | integernullable | — | — | — |
| purse | bigintnullable | — | 2000000000 | Total prize money in cents |
| rounds | integernullable | — | — | — |
| start_date | timestamptz | — | 2025-03-06T00:00:00.000Z | — |
| start_date_time | timestamptznullable | — | — | — |
| state | stringnullable | — | California | — |
| time_zone | stringnullable | — | — | — |
| venue | stringnullable | — | Torrey Pines Golf Course (South Course) | — |
| yards | integernullable | — | — | — |
| zip | stringnullable | — | — | — |
Plays
golf.player_holes17 fields· 2 refsendpoints →
Hole-by-hole scoring for each player at each professional tournament — strokes and score relative to par per hole. (Shot-level tracking — drive distance, approach result, putts — is not carried here.)
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| player_id | bigint | → golf.players | 193 | — |
| player_round_id | bigint | — | 1 | — |
| tournament_id | bigint | → golf.tournaments | 255 | — |
| birdie | booleannullable | — | false | — Values falsetrue |
| bogey | booleannullable | — | false | — Values falsetrue |
| double_bogey | booleannullable | — | false | — Values falsetrue |
| double_eagle | booleannullable | — | — | — |
| eagle | booleannullable | — | false | — Values falsetrue |
| hole_in_one | booleannullable | — | false | — |
| hole_number | integer | — | 1 | — |
| is_par | booleannullable | — | true | — Values truefalse |
| par | integernullable | — | 4 | — |
| round_number | integer | — | 1 | — |
| score | integernullable | — | 4 | — |
| to_par | integernullable | — | 0 | Score relative to par for this hole |
| worse_than_double_bogey | booleannullable | — | false | — Values falsetrue |
golf.player_rounds26 fields· 2 refsendpoints →
Each player's scoring line for each round of every professional golf tournament — total strokes, score relative to par, eagles, birdies, bogeys, and double-bogeys. (Ball-striking detail — fairways, greens in regulation, putts — is not carried here.)
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| player_id | bigint | → golf.players | 194 | — |
| player_round_id | integer | — | 475911 | — |
| tournament_id | bigint | → golf.tournaments | 887 | — |
| back_nine_start | booleannullable | — | — | — |
| birdies | integernullable | — | 4 | — |
| bogeys | integernullable | — | 2 | — |
| day | datenullable | — | — | — |
| double_bogeys | integernullable | — | 0 | — |
| double_eagles | integernullable | — | 0 | — |
| eagles | integernullable | — | 0 | — |
| holes_in_one | integernullable | — | 0 | — |
| par | integernullable | — | 72 | — |
| pars | integernullable | — | 12 | — |
| round_number | integer | — | 1 | — |
| score | integernullable | — | 70 | Total strokes for round |
| sg_approach | decimalnullable | — | -0.8480 | — |
| sg_around_green | decimalnullable | — | 0.7610 | — |
| sg_off_tee | decimalnullable | — | 0.8570 | — |
| sg_putting | decimalnullable | — | 1.6950 | — |
| sg_tee_to_green | decimalnullable | — | 0.2610 | — |
| sg_total | decimalnullable | — | -0.1640 | — |
| tee_time | timestamptznullable | — | — | — |
| triple_bogeys | integernullable | — | 0 | — |
| worse_than_double_bogey | integernullable | — | 0 | — |
| worse_than_triple_bogey | integernullable | — | 0 | — |
golf.player_shots30 fields· 2 refsendpoints →
Shot-by-shot tracking for each player at each professional tournament — every stroke with its type, start/end location, distance, ShotLink/TOURCAST course coordinates, and TrackMan radar metrics (club & ball speed, spin, launch angle, apex, carry). Available for regular PGA Tour events with ShotLink; majors such as the Masters do not publish shot tracking.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| player_id | bigint | → golf.players | 20 | — |
| tournament_id | bigint | → golf.tournaments | 255 | — |
| apex_height | floatnullable | — | 99.61 | — |
| ball_speed | floatnullable | — | 175.15 | — |
| carry_distance | floatnullable | — | 269.59 | — |
| club_speed | floatnullable | — | 0 | — |
| distance_remaining_yards | floatnullable | — | 145 | Distance to the hole after the shot, in yards |
| distance_yards | floatnullable | — | 289 | Shot distance in yards (null when the source reports feet near the green) |
| final_stroke | booleannullable | — | false | — Values falsetrue |
| from_location | stringnullable | — | Green | — Values GreenTee BoxFairwayPrimary RoughIntermediate RoughGreenside BunkerFairway BunkerNative AreaOtherFringe |
| from_location_code | stringnullable | — | OGR | — Values OGROTBOFWOROOIROGSOSTONAOTHOCO |
| from_x | floatnullable | — | 7309.9 | — |
| from_y | floatnullable | — | 11300.88 | — |
| from_z | floatnullable | — | 246.065 | — |
| hole_number | integer | — | 9 | — |
| launch_angle | floatnullable | — | 8.74 | Vertical launch angle (degrees) |
| launch_spin | floatnullable | — | 0 | — |
| par | integernullable | — | 4 | — |
| play_by_play | stringnullable | — | In the hole | — |
| round_number | integer | — | 3 | — |
| shot_number | integer | — | 1 | Stroke sequence within the hole (1 = first stroke) |
| smash_factor | floatnullable | — | 0 | — |
| spin_axis | floatnullable | — | 0 | — |
| stroke_type | stringnullable | — | STROKE | STROKE, PENALTY, DROP, PROVISIONAL Values STROKEDROPPENALTYPROVISIONAL |
| to_location | stringnullable | — | Green | — |
| to_location_code | stringnullable | — | OGR | — |
| to_x | floatnullable | — | 5799.6 | — |
| to_y | floatnullable | — | 12140.75 | — |
| to_z | floatnullable | — | 358.62 | — |
golf.tournament_rounds5 fields· 1 refsendpoints →
Each round of every professional golf tournament — round 1 (Thursday), round 2 (Friday cut day), and the weekend rounds (Saturday and Sunday) plus any playoff holes.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| round_id | integer | — | 20250161 | — |
| tournament_id | bigint | → golf.tournaments | 1 | — |
| day | date | — | 2025-03-05T05:00:00.000Z | — |
| round_number | integer | — | 1 | — |
Stats
golf.operator_player_lookups5 fields· 3 refsendpoints →
How each sportsbook and fantasy operator names every professional golfer — the mapping from each operator's player identifier to a unified player record.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| operator_id | bigint | → main.operators | 2228 | Operator id: 1 DraftKings, 2 FanDuel, 3 Yahoo, 13 sportsdata.io. |
| operator_player_id | string | → golf.players | 52955 | External player ID from operator |
| player_id | bigint | → golf.players | 1 | Internal golf.players.id reference |
| player_name | stringnullable | — | Ludvig Åberg | Player name for reconciliation |
golf.player_season_stats40 fields· 3 refsendpoints →
Season totals for each professional golfer — events played, cuts made, top-10 finishes, wins, and prize money earned. Ball-striking and strokes-gained metrics are not carried here.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| player_id | bigint | → golf.players | 38 | — |
| season_id | bigintnullable | → golf.seasons | 5 | — |
| tour_id | bigintnullable | → golf.tours | 12 | — |
| birdies | integernullable | — | 17 | — |
| bogey_free_rounds | integernullable | — | 0 | — |
| bogeys | integernullable | — | 9 | — |
| bounce_back_count | integernullable | — | — | — |
| consecutive_birdie_or_better_count | integernullable | — | — | — |
| cuts_made | integernullable | — | 1 | — |
| double_bogeys | integernullable | — | 0 | — |
| double_eagles | integernullable | — | 0 | — |
| driving_accuracy_pct | decimalnullable | — | 55.2500 | — |
| driving_distance | decimalnullable | — | 295.6000 | Average driving distance in yards |
| eagles | integernullable | — | 0 | — |
| events | integernullable | — | 1 | — |
| gir_pct | decimalnullable | — | 66.3900 | Greens in regulation percentage |
| holes_in_one | integernullable | — | 0 | — |
| pars | integernullable | — | 46 | — |
| putts_per_round | decimalnullable | — | 28.8900 | — |
| rounds | integernullable | — | 4 | — |
| rounds_under_seventy | integernullable | — | 1 | — |
| scrambling_pct | decimalnullable | — | 58.6000 | — |
| second_place | integernullable | — | 0 | — |
| sg_approach | decimalnullable | — | 0.0663 | — |
| sg_around_green | decimalnullable | — | 0.4845 | — |
| sg_off_tee | decimalnullable | — | -0.2285 | — |
| sg_putting | decimalnullable | — | -1.2805 | — |
| sg_total | decimalnullable | — | -0.8370 | — |
| streaks_of_three_birdies_or_better | integernullable | — | 0 | — |
| third_place | integernullable | — | 0 | — |
| top_five | integernullable | — | 0 | — |
| top_ten | integernullable | — | 0 | — |
| top_twenty_five | integernullable | — | 0 | — |
| total_score | integernullable | — | -120 | Total score relative to par |
| total_strokes | integernullable | — | 5654 | — |
| triple_bogeys | integernullable | — | 0 | — |
| wins | integernullable | — | 0 | — |
| worse_than_double_bogey | integernullable | — | 0 | — |
| worse_than_triple_bogey | integernullable | — | 0 | — |
golf.course_hole_stats15 fields· 1 refsendpoints →
Per-hole scoring statistics for each round of a tournament — par, yardage, the field's scoring average and its relation to par, and the distribution of eagles, birdies, pars, and bogeys, plus difficulty rank.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| tournament_id | bigint | → golf.tournaments | 887 | — |
| birdies | integernullable | — | 8 | — |
| bogeys | integernullable | — | 4 | — |
| course_code | string | — | 006 | PGA Tour course code (e.g., 014 = Augusta National) |
| double_bogeys | integernullable | — | 0 | — |
| eagles | integernullable | — | 0 | — |
| hole_number | integer | — | 1 | — |
| par | integernullable | — | 4 | — |
| pars | integernullable | — | 50 | — |
| rank | integernullable | — | 1 | Difficulty rank among holes (1 = hardest) |
| round_number | integer | — | 2 | — |
| scoring_average | decimalnullable | — | 4.0000 | — |
| scoring_average_diff | decimalnullable | — | 0.0000 | Scoring average relative to par |
| yards | integernullable | — | 450 | — |
golf.leaderboards23 fields· 3 refsendpoints →
The full leaderboard of every professional golf tournament — each player's position, score relative to par, total strokes, made cut/missed cut status, and prize money.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| player_id | bigint | → golf.players | 61 | — |
| player_tournament_id | integer | → golf.tournaments | 54591 | — |
| tournament_id | bigint | → golf.tournaments | 257 | — |
| earnings | bigintnullable | — | — | Prize money earned in cents |
| fedex_pts | integernullable | — | — | — |
| is_alternate | booleannullable | — | — | — |
| is_withdrawn | booleannullable | — | false | — Values falsetrue |
| made_cut | integernullable | — | 1 | 1 if made cut, 0 if missed |
| made_cut_did_not_finish | booleannullable | — | — | — |
| rank | integernullable | — | 2 | — |
| sg_approach | decimalnullable | — | 11.7050 | — |
| sg_around_green | decimalnullable | — | 4.4940 | — |
| sg_off_tee | decimalnullable | — | 0.6840 | — |
| sg_putting | decimalnullable | — | 7.1580 | — |
| sg_tee_to_green | decimalnullable | — | 16.4630 | — |
| sg_total | decimalnullable | — | -0.3120 | — |
| tee_time | timestamptznullable | — | — | — |
| total_score | integernullable | — | -1 | Score relative to par |
| total_strokes | integernullable | — | 143 | — |
| total_through | integernullable | — | — | Current hole of player for current round |
| tournament_status | stringnullable | — | COMPLETE | out, active, etc. Values COMPLETEWITHDRAWNDISQUALIFIED |
| win | integernullable | — | 0 | 1 if won tournament |
Odds
golf.tournament_odds22 fields· 2 refsendpoints →
Outright betting odds for professional golf tournaments — who wins the event, top-5/top-10/top-20 finish markets, head-to-head matchups, and other tournament-level wagers from sportsbooks.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| matchup_opponent_id | bigintnullable | — | — | — |
| player_id | bigint | → golf.players | 195 | — |
| round_matchup_opponent_id | bigintnullable | — | — | — |
| three_ball_opponent1_id | bigintnullable | — | — | — |
| three_ball_opponent2_id | bigintnullable | — | — | — |
| tournament_id | bigint | → golf.tournaments | 604 | — |
| first_round_leader_odds | integernullable | — | — | — |
| is_alternate | booleannullable | — | — | — |
| is_available | booleannullable | — | true | — |
| make_cut_odds | integernullable | — | — | — |
| matchup_odds | integernullable | — | — | — |
| matchup_opponent_odds | integernullable | — | — | — |
| miss_cut_odds | integernullable | — | — | — |
| outright_odds | integernullable | — | 15000 | Odds to win tournament (American format) |
| round_matchup_odds | integernullable | — | — | — |
| round_matchup_opponent_odds | integernullable | — | — | — |
| sportsbook | stringnullable | — | fanduel | DraftKings, FanDuel, BetMGM, etc. Values fandueldraftkingsbetfairwilliamhill_usunibetintertopslowvigbetriversbetmgmbarstoolsugarhousebetonlineagfoxbetbovadasuperbookunibet_ustwinspiresgtbets |
| three_ball_odds | integernullable | — | — | — |
| top_five_odds | integernullable | — | — | — |
| top_ten_odds | integernullable | — | — | — |
| top_twenty_odds | integernullable | — | — | — |
Misc
golf.tours7 fields· 1 refsendpoints →
Professional golf tours — the PGA Tour, LIV Golf, the DP World Tour (formerly European Tour), the Korn Ferry Tour, the LPGA, and other competitive circuits.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| tour_id | integer | → golf.tours | 1 | — |
| active | boolean | — | true | — |
| code | string | — | pga | Tour code (pga, european, liv, lpga, champions, korn_ferry) Values pgaeuropeanlivlpgachampionskorn_ferry |
| description | stringnullable | — | Professional Golf Association Tour | — Values Professional Golf Association TourDP World Tour (formerly European Tour)LIV Golf Invitational SeriesLadies Professional Golf Association TourPGA Tour Champions (senior tour)PGA Tour developmental tour |
| logo_url | stringnullable | — | — | — |
| name | string | — | PGA Tour | — Values PGA TourEuropean Tour (DP World Tour)LIV GolfLPGA TourChampions TourKorn Ferry Tour |
golf.courses15 fields· 1 refsendpoints →
Golf courses that host professional events — Augusta National, Pebble Beach, St Andrews, TPC Sawgrass, and every other venue on the PGA, LIV, DP World, and Korn Ferry calendars.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| league_course_id | integernullable | → golf.courses | 656 | Official PGA Tour course id |
| address | stringnullable | — | — | — |
| city | stringnullable | — | La Quinta | — |
| country | stringnullable | — | USA | — Values USACANMEXSCOPURDOMFRAJPNBERBAH |
| elevation | floatnullable | — | — | Elevation in feet above sea level |
| image_url | stringnullable | — | https://res.cloudinary.com/pgatour-prod/ar_0.667,c_crop/d_placeholders:tournamentBackgroundSolid.pn… | URL to aerial/overview image of course |
| latitude | floatnullable | — | — | — |
| longitude | floatnullable | — | — | — |
| name | string | — | Plantation Course at Kapalua | — |
| par | integer | — | 72 | — |
| state | stringnullable | — | California | — |
| timezone | stringnullable | — | — | IANA timezone (e.g., America/New_York) |
| yards | integer | — | 7569 | — |
| zip | stringnullable | — | — | — |
golf.player_news18 fields· 2 refsendpoints →
News about professional golfers — equipment changes, swing coach updates, sponsorships, tour-status changes, suspensions, and general beat-reporter updates.
| Field | Type | References | Example | Description |
|---|---|---|---|---|
| idkey | bigint | — | — | Primary Key |
| player_id | bigintnullable | → golf.players | 168 | — |
| tournament_id | bigintnullable | → golf.tournaments | — | — |
| ai_processed | boolean | — | false | — |
| author | stringnullable | — | — | — |
| categories | stringnullable | — | Latest | — |
| content | stringnullable | — | Pairings, predictions and betting odds for each Sunday Singles matchup | — |
| news_time | timestamptz | — | 2025-08-04T15:19:00.000Z | — |
| original_source | stringnullable | — | — | — |
| original_source_url | stringnullable | — | — | — |
| priority | integer | — | 10 | — |
| situational_impact | jsonbnullable | — | — | — |
| source | stringnullable | — | pga_tour | — |
| source_key | stringnullable | — | /content/dam/pga-tour/fragments/tours/pga-tour/news/latest/2026/06/20/us-open-third-round-live-upda… | — |
| terms_of_use | stringnullable | — | — | — |
| title | string | — | One-liners: Get to know all 70 players who made 2025 FedExCup Playoffs | — |
| updated_time | timestamptznullable | — | 2025-08-04T15:28:47.169Z | — |
| url | stringnullable | — | https://www.pgatour.com/article/news/latest/2025/08/04/70-one-liners-for-fedexcup-playoffs-st-jude-… | — |