GuidesDocs
Coverage MatrixDocumentationChange LogLog InContact Us
Guides

Update Frequencies

This guide helps you plan polling and caching against your request quota. Each feed has a time-to-live (TTL): how long a response is cached, and a data update cadence: how often the underlying data actually changes. The two are not the same: a short TTL on slowly-changing data does not mean you should poll fast. Given your request budget and QPS limits (see API Basics), drive your polling from the Recommended pull columns, not the TTL.



Frequency Chart

The six tournament-scoped feeds share a tiered TTL that follows the tournament state, abbreviated as Live-tiered in the chart:

  • 3 seconds while the tournament is live
  • 60 seconds while it is scheduled
  • 10 minutes once recently closed
  • 4 hours once closed for more than 7 days
FeedTTL (cache)Data updatesRecommended pull (non-live)Recommended pull (live)
Seasons10 minutesNew seasons appear as added; season statuses update on the day of a status changeAs neededNot applicable
Tournament ScheduleLive-tieredSchedule and metadata update as events are added or adjustedEvery 10 to 15 minutes after closing for recent tournaments; Daily Change Log for older onesEvery 10 to 30 minutes
Tournament SummaryLive-tieredField, location, and status details; also useful for detecting newly added playersEvery 10 to 15 minutes after closing for recent tournaments; Daily Change Log for older onesEvery 2 to 5 minutes
Tournament LeaderboardLive-tieredReal-time leaderboard and tournament/round player statsEvery 10 to 15 minutes after closing for recent tournaments; Daily Change Log for older onesPush preferred; REST fallback every 3 to 5 seconds
Scorecards Per RoundLive-tieredReal-time per-player round scoring during active roundsEvery 10 to 15 minutes after closing for recent tournaments; Daily Change Log for older onesPush preferred; REST fallback every 3 to 5 seconds
Tee Times Per RoundLive-tieredMost changes are pre-round, with occasional same-day updatesEvery 10 to 15 minutes after closing for recent tournaments; Daily Change Log for older onesEvery 1 to 5 minutes
Tournament Hole StatisticsLive-tieredHole-level tournament aggregates update during playEvery 10 to 15 minutes after closing for recent tournaments; Daily Change Log for older onesEvery 5 to 15 seconds
Players3 secondsSeason player list; new players are added as fields are finalizedEvery 12 to 24 hoursEvery 1 to 4 hours during tournament weeks
Player Profile4 hoursSeasonal stats update on a 5-minute timer after a tournament moves to closedAs needed; use the Daily Change Log to capture changes after a tournament ends5 to 10 minutes after a tournament moves to closed for the quickest update
Player Statistics3 secondsSeason player-stat feed; updates as stats are revised or publishedEvery 12 hoursEvery 10 to 30 minutes
Official World Golf Ranking4 hoursUpdates weekly on Monday (about 17:00 UTC); a tournament that finishes on a Monday moves the update to TuesdayEvery 12 to 24 hoursEvery 4 hours
Daily Change Log3 secondsEntries populate live for changes to players, tournaments, schedules, pairings, and statisticsEvery 4 hours or so, depending on your use caseNot applicable

⏱️

TTL Is a Cache Floor, Not a Polling Target

Several slow-moving feeds (Players, Player Statistics, Daily Change Log) carry a 3-second TTL even though their data changes on the order of hours, days, or weekly validation cycles. The TTL only tells you how fresh a response can be; polling those feeds every few seconds burns quota for no benefit. Always size your polling from the Recommended pull columns, and treat anything faster as wasted requests.



The Daily Change Log Window

The Daily Change Log reports changes for a "golf day" that runs from 04:00:00 UTC to 03:59:59 UTC the following day, not midnight to midnight. A captured PGA change log for 2024-04-14 returns:

{
  "alias": "pga",
  "name": "PGA Tour",
  "start_time": "2024-04-14T04:00:00+00:00",
  "end_time": "2024-04-15T03:59:59+00:00"
}

This boundary lines up with the end of US (East Coast) play, so a full day of results and revisions falls inside one window rather than being split across two calendar dates. Entries populate live throughout the window; a pull every 4 hours or so is enough for most use cases. See Monitoring Data Changes for how to consume it.



Live Update Cadence

Golf scoring updates hole by hole: a player's score for a hole becomes available once that hole is completed and recorded. Size your live polling (or Push consumption) to that cadence; pulling faster than scores can change will not surface them any sooner.



Reading TTL from Responses

Response headers carry caching information you can use to avoid requesting data that has not changed; each response carries standard HTTP caching headers. To detect those updates as they land, see Monitoring Data Changes.



Best Practices

  • Drive polling from the Recommended pull columns; never poll faster than a feed's TTL, and rarely as fast.
  • Use the live columns only while a tournament is live; once it closes, drop to the non-live cadence and let the Daily Change Log trigger refreshes for older events.
  • Prefer Push for Tournament Leaderboard and Scorecards Per Round so you are not polling at 3-to-5-second rates.
  • For the fastest post-event stats, pull Player Profile 5 to 10 minutes after a tournament moves to closed; seasonal stats refresh on a 5-minute timer from that transition.
  • Treat Players, Player Statistics, and Official World Golf Ranking as slow feeds (hours, not seconds), whatever their TTL says.

Did this page help you?