Golf

Sports
Golf
Study golfers, tournaments, rounds, rankings, scoring, and performance on professional tours.
Author
Affiliation

Byeong-Hak Choe

SUNY Geneseo

Published

October 6, 2026

A flag on the 18th green at Pebble Beach, with sand bunkers and the ocean behind it.
The 18th green at Pebble Beach Golf Links, California (2006). Photo: Tewy / Wikimedia Commons · CC BY 2.5.

PGA TOUR performance explorer

Explore player-season statistics and compare golf performance measures.

Loading the explorer…

Data

On-page tables preview a sample of rows. Download the files to analyze the complete datasets.

Updated October 6, 2026. Each main download contains previous and current records together, at a consistent unit of observation:

  • pga_player_seasons: One player-season, with official PGA TOUR statistics for 2022–2026.
  • pga_tournament_history: One player-tournament, with comparable tournament scores from earlier events through October 4, 2026, plus available original 2022 tournament measures.
  • golf_world_rank_history: One player-ranking snapshot, combining the original June 2022 rankings, official published snapshots for 2022–2025, and the October 4, 2026 rankings.

The 2026 PGA season is partial. Season averages and player-tournament records stay in separate files because their denominators differ.

PGA TOUR player seasons (pga_player_seasons)

1,198 player-season records. Historical years were collected from the official PGA TOUR statistics using the same statistic definitions as the current year. Each field has its own qualification rules; a blank means that the player is absent from that statistic’s table.

pga_player_seasons <- read_csv("https://bcdanl.github.io/data/pga_player_seasons.csv")
Variable Definition and unit
season, player_id, playerName, country Tour season, PGA TOUR player identifier, player name, and represented country
avgDriveDist Average drive distance in yards, measured on the tour’s selected holes
drivePct, onePuttPct Driving accuracy and one-putt percentage, on a 0–100 scale
avgPuttsPerRound Average putts per round
avgScore Adjusted scoring average, in strokes per round
Money Official earnings in US dollars
Points 2026 FedExCup points; historical values have mixed units (see note below)
driveSG, puttsSG, sg_app, sg_arg, sg_t2g, sg_total Per-round strokes gained off the tee, putting, approach, around the green, tee to green, and total
season_status Complete historical season or partial current season

Positive strokes gained indicates better performance than the statistical baseline. Each season uses its own field and baseline, so changes in opponents and schedule can affect comparisons.

Most 2026 statistics extend through the Bank of Utah Championship on October 4. The current Points table extends through the BMW Championship on August 23. Historical statistics use their published season-end tables, with statistic-specific dates. Before 2024, the PGA TOUR season could include events in the preceding calendar year; a tour season is not always a calendar year.

Historical Points values mix TOUR Championship scores relative to par and points from the published standings. For example, Scottie Scheffler’s 2024 value of -30 is his TOUR Championship score, rather than a points total. Do not compare this column across seasons or use the historical values as a common points measure. The 2026 values are FedExCup points through August 23; the explorer omits Points from every season.

PGA TOUR tournament history (pga_tournament_history)

28,512 player-tournament records. The 2022–2025 calendar schedules include completed individual stroke-play events from ESPN leaderboards. The latest year extends through October 4, 2026. Fall 2021 events from the original 2022 tour-season archive are also retained. The 2021 coverage is a selected historical sample.

pga_tournament_history <- read_csv("https://bcdanl.github.io/data/pga_tournament_history.csv")
Variable Definition
season Calendar year of the tournament’s end date
tournament_id, espn_player_id ESPN event and player identifiers; together they identify a row
tournament, start_date, end_date Event name and dates
player, country Player name and represented country
round_1_strokes–round_4_strokes Strokes taken in each available scheduled round
total_strokes, rounds_played Total scheduled-round strokes and number of scored rounds
score_relative_to_par Published leaderboard score relative to par
leaderboard_order ESPN display order, which is not a tie-adjusted finish rank
source, source_url, retrieved_date, season_status Source, retrieval date, and coverage context

The common score variables have the same units across years. Totals exclude sudden-death playoff holes. A smaller rounds_played can indicate a cut, a withdrawal, or a shortened tournament; it does not by itself identify a missed cut. Leaderboard scores can include starting-stroke adjustments in older TOUR Championship formats. Team events, match play, and the Stableford-scored Barracuda Championship are excluded. ESPN’s PGA schedule includes affiliated Q-School and invitational events; filter by tournament when defining the project sample.

The original 2022 archive’s tournament statistics are attached to the matching player-event records. legacy_tour_season preserves its original tour-season label. For example, an October 2021 event has calendar season = 2021 and legacy_tour_season = 2022. Optional historical fields include course, hole_par, made_cut, no_cut, legacy_finish_position, legacy_finish_display, legacy_purse_millions, strokes gained (sg_ott, sg_putt, sg_app, sg_arg, sg_t2g, sg_total), and fantasy-point components ending in _DKP, _FDP, or _SDP.

hole_par is the sum of par across the player’s tournament holes. total_strokes counts all tournament strokes. These are tournament totals, so they cannot support a hole-by-hole birdie analysis. legacy_purse_millions is the event purse in millions of US dollars. Strokes-gained and fantasy fields are blank for newer years when no compatible free source exists. Season averages are never inserted into tournament rows.

One original Si Woo Kim/CJ Cup row was duplicated with conflicting advanced statistics. The common ESPN score is retained once, and the conflicting optional historical metrics are blank. Optional archive fields are also blank when its score conflicts with ESPN’s published round totals, including withdrawals and incompletely recorded rounds. Zero-stroke placeholder rounds are excluded; rounds_played can include a partially played withdrawal round.

The original average-stat table was omitted from the project downloads because some player-tournament labels contain conflicting duplicates, including apparent U.S. Open statistics labeled as RBC Canadian Open. Comparable historical player-season statistics were collected from PGA TOUR instead. The original table remains preserved as an archive.

World-ranking history (golf_world_rank_history)

5,290 player-snapshot records, with the previous and current rankings in one file.

golf_world_rank_history <- read_csv("https://bcdanl.github.io/data/golf_world_rank_history.csv")

world_rank is the Official World Golf Ranking; lower is better. snapshot identifies the ranking release. The original June 2022 file did not record an exact day, so ranking_month = "2022-06" and ranking_date is blank. Official historical snapshots have their source’s exact published date in ranking_date and its caption in source_as_of; the 2023 source snapshot is dated January 1, 2024. The current snapshot has ranking_date = "2026-10-04". Tied ranks are retained. Points columns are blank in the original June snapshot because it contained only ranks.

Historical and current player_id comes directly from the PGA TOUR’s published OWGR table. The original June 2022 file only had abbreviated names. Its player_id stays blank, and each record retains an initial: key. identity_status distinguishes unresolved original names from the official player identifiers. The full-name official snapshots can support player comparisons without guessing the identity behind an abbreviation.

For the current ranking, player_id joins to pga_player_seasons. ESPN’s espn_player_id is a different identifier and must not be joined directly to PGA TOUR IDs. Filter a ranking to a snapshot relevant to the tournament date. A later ranking used to predict an earlier tournament would use information from the future.

Project questions

  • How did driving, putting, and adjusted scoring change for the same golfers across 2022–2026?
  • Which season statistics are most associated with earnings, after accounting for the partial 2026 season?
  • How do tournament scores and consistency vary across years, players, and courses?
  • How did world rank change across the dated official snapshots for the same players?
  • Within the original 2022 tournament sample, how do strokes gained and fantasy scoring relate to finish position?

The original files remain available as source archives. The combined downloads above contain the historical and current records needed for comparisons across years.

Back to top