---
updatedAt: 2026-07-28T06:24:33.000Z
agentTools:
  siteIndex: https://developer.sportradar.com/llms.txt
  projectIndex: https://developer.sportradar.com/racing/llms.txt
---

# Update Frequencies

## Intro

Each NASCAR API endpoint updates at a variable frequency, influenced by both caching behavior and underlying data updates.

For example, a race-centric feed such as the <Anchor label="Race Leaderboard" target="_blank" href="ref:nascar-race-leaderboard">Race Leaderboard</Anchor> has a short cache interval while <Anchor label="Standings" target="_blank" href="ref:nascar-driver-standings">Standings</Anchor> has a longer cache duration, with data only updating when official results are published or standings are recalculated. During the offseason, many endpoints will not update at all.

Given API request limits and QPS constraints, these update patterns should be understood and factored into your pull strategy.

Use this page to help determine the most appropriate pull frequency for your integration needs.

<br />

***

## Time-to-Live (TTL) and Data Updates

Understanding the distinction between TTL and data updates is crucial for designing an efficient and reliable NASCAR API solution. TTL is focused on the validity of cached data to optimize performance, whereas data updates are concerned with the actual data within the API.

<br />

### Time-to-Live (TTL)

Time-to-Live (TTL) is a mechanism used to define the lifespan of data in a cache or network. It specifies the duration for which the data remains valid and can be reused. Once the TTL expires, the data may be stale and should be re-fetched.

You can find the TTL for each RESTful feed in the response header of a request under `Cache-Control`. A response of `public, must-revalidate, max-age=300` signifies a time-to-live of 300 seconds.

<br />

### Data Updates

Data Updates refer to the changes made to the underlying data that the API provides access to. This can occur through various operations such as creating, updating, or deleting our sports data.

Data updates are critical to ensuring that the API delivers the most current and accurate information. Data entry workflows and processes specific to NASCAR data will affect your suggested request frequency.

<br />

***

## Additional Frequency Resources

Visit our <Anchor label="Headers" target="_blank" href="https://developer.sportradar.com/getting-started/docs/authentication#headers">Headers</Anchor> documentation to learn how to interpret and use header responses to access the freshest sports data.

<br />

***

## Frequency Chart

What is the right request frequency for your use? Which endpoints should you pull to get the most efficient use of your allotted calls?

The below chart provides answers to these questions, with a breakdown of the cache and data updates for every NASCAR API endpoint, as well as our recommended pulling frequency.

<br />

<Table>
  <thead>
    <tr>
      <th>
        Endpoint
      </th>

      <th>
        TTL / Cache
      </th>

      <th>
        Data Updates
      </th>

      <th>
        Recommended Pull (Non-Live)
      </th>

      <th>
        Recommended Pull (Live)
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        <Anchor label="Daily Change Log" target="_blank" href="ref:nascar-daily-change-log">Daily Change Log</Anchor>
      </td>

      <td>
        * 15 minutes for current day
        * 1 hour for current month
        * 4 hours for current year
        * 12 hours for past years
      </td>

      <td>
        Entries populate every 20 minutes for changes to drivers, race data, statistics, schedules, tracks, and standings. Log window runs from 05:00:00 UTC to 04:59:59 UTC.
      </td>

      <td>
        Pull every 10 minutes or less, depending on use case.
      </td>

      <td>
        Not applicable
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Driver Profile" target="_blank" href="ref:nascar-driver-profile">Driver Profile</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Bio information updates as changes occur. Season statistics and race-by-race results update approximately 5 minutes after a race moves to `closed`, in line with the Driver Statistics feed.
      </td>

      <td>
        Pull on an as-needed basis. Use the Daily Change Log to detect post-race updates.
      </td>

      <td>
        Pull 5–10 minutes after an event moves to `closed` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Driver Standings" target="_blank" href="ref:nascar-driver-standings">Driver Standings</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Standings update within 2 minutes of a race moving to `closed`.
      </td>

      <td>
        Pull on an as-needed basis.
      </td>

      <td>
        Pull 2–5 minutes after an event moves to `closed` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Driver Statistics" target="_blank" href="ref:nascar-driver-statistics">Driver Statistics</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Seasonal statistics update approximately 5 minutes after a race moves to `closed`.
      </td>

      <td>
        Pull on an as-needed basis. Use the Daily Change Log to detect post-race updates.
      </td>

      <td>
        Pull 5–10 minutes after an event moves to `initialized` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Drivers" target="_blank" href="ref:nascar-drivers">Drivers</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Driver data updates on a ~5-minute interval after a race moves to `closed`.
      </td>

      <td>
        Pull on an as-needed basis. Use the Daily Change Log to capture changes after a race has ended.
      </td>

      <td>
        Pull 2–5 minutes after an event moves to `closed` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Entry List" target="_blank" href="ref:nascar-entry-list">Entry List</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Updates occur in near real time as the league modifies the entry list during race week. Typically 3–5 small adjustments occur over the week.
      </td>

      <td>
        Pull on an as-needed basis. Can generally be ignored until race week.
      </td>

      <td>
        Pull 5–10 minutes after an event moves to `initialized` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Manufacturer Standings" target="_blank" href="ref:nascar-manufacturer-standings">Manufacturer Standings</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Standings update within 2 minutes of a race moving to `closed`.
      </td>

      <td>
        Pull on an as-needed basis.
      </td>

      <td>
        Pull 2–5 minutes after an event moves to `closed` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Owner Standings" target="_blank" href="ref:nascar-owner-standings">Owner Standings</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Standings update within 2 minutes of a race moving to `closed`.
      </td>

      <td>
        Pull on an as-needed basis.
      </td>

      <td>
        Pull 2–5 minutes after an event moves to `closed` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Playoff Schedule" target="_blank" href="ref:nascar-playoff-schedule">Playoff Schedule</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Schedule updates occur in real time as playoff details become available. Initial playoff schedule populates once the season structure is finalized.
      </td>

      <td>
        Pull on an as-needed basis.
      </td>

      <td>
        Pull every hour or less, depending on use case. This feed should be used for schedule data prior to race start.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Practice Leaderboard" target="_blank" href="ref:nascar-practice-leaderboard">Practice Leaderboard</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Updates occur in near real time as drivers cross the start/finish line. Only recent crossings trigger updates.
      </td>

      <td>
        Pull on an as-needed basis. Can generally be ignored until race week.
      </td>

      <td>
        Pull 5–10 minutes after an event moves to `initialized`, then increase frequency when race status is `practice`.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Qualifying Leaderboard" target="_blank" href="ref:nascar-qualifying-leaderboard">Qualifying Leaderboard</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Updates occur in near real time as drivers cross the start/finish line. Only recent crossings trigger updates.
      </td>

      <td>
        Pull on an as-needed basis. Can generally be ignored until race week.
      </td>

      <td>
        Pull 5–10 minutes after an event moves to `initialized`, then increase frequency when race status is `qualifying`.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Race Leaderboard" target="_blank" href="ref:nascar-race-leaderboard">Race Leaderboard</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Updates occur in near real time as drivers cross the start/finish line. Only recent crossings trigger updates.
      </td>

      <td>
        Pull on an as-needed basis. Can generally be ignored until race week.
      </td>

      <td>
        Pull 5–10 minutes after an event moves to `initialized`, then increase frequency when race status is `warmup` or `inprogress`.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Rookie Standings" target="_blank" href="ref:nascar-rookie-standings">Rookie Standings</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Standings update within 2 minutes of a race moving to `closed`.
      </td>

      <td>
        Pull on an as-needed basis.
      </td>

      <td>
        Pull 2–5 minutes after an event moves to `closed` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Schedule" target="_blank" href="ref:nascar-schedule">Schedule</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Schedule updates occur in near real time as changes are made.
      </td>

      <td>
        Pull every hour or less, depending on use case.
      </td>

      <td>
        Not applicable
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Seasons" target="_blank" href="ref:nascar-seasons">Seasons</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        New seasons appear as they are added. Season status updates on the day of the first event.
      </td>

      <td>
        Pull on an as-needed basis.
      </td>

      <td>
        Not applicable
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Starting Grid" target="_blank" href="ref:nascar-starting-grid">Starting Grid</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Updates occur in near real time during race week. Typically finalized after qualifying. If qualifying is canceled, updates occur once the grid becomes official.
      </td>

      <td>
        Pull on an as-needed basis. Can generally be ignored until race week.
      </td>

      <td>
        Pull 5–10 minutes after an event moves to `initialized` to receive the fastest updates.
      </td>
    </tr>

    <tr>
      <td>
        <Anchor label="Tracks" target="_blank" href="ref:nascar-tracks">Tracks</Anchor>
      </td>

      <td>
        2 seconds
      </td>

      <td>
        Updates occur in near real time as track details change.
      </td>

      <td>
        Pull on an as-needed basis.
      </td>

      <td>
        Not applicable
      </td>
    </tr>
  </tbody>
</Table>

<br />

<Callout icon="🏎️" theme="default">
  ### Important Note

  Pull recommendations are based on a typical customer's needs. We suggest starting with our recommended rate and adjusting as necessary according to your needs.
</Callout>