Skip to contents

nflreadr provides a wide range of NFL related data. This is powered by an extensive, automated data infrastructure. This article provides information on update and availability schedules, as this is a pressing question for many nflverse users, especially right before the start of a season.

Automation Status

The following table reports on the status and last update times of nflverse data pipelines.

Data Status Last Updated
pbp_raw pbp_raw raw pbp data
pbp pbp and ps pbp
player_stats pbp and ps player_stats
rosters rosters rosters
players players players
snap_counts snap_counts snap_counts
draft_picks snap_counts draft_picks
pfr_advstats adv_stats pfr_advstats
nextgen_stats ngs nextgen_stats
injuries injuries injuries
depth_charts depthcharts depth_charts
combine combine combine
nfl4th nfl4th
ffverse player IDs weekly-playerids
ffverse rankings weekly-fantasypros
contracts contracts contracts

nflverse Play-by-Play Data

There are three ways to obtain nflverse pbp data.

  1. We recommend using nflreadr::load_pbp() or nflfastR::load_pbp() as the primary method of retrieving pbp data. This uses our automated data infrastructure to download clean data, and we update this on a nightly basis after each game day (and additionally at specific points on game days) during the season.
  2. If this is not quick enough, nflfastR::build_nflfastR_pbp() parses raw pbp json files we save, usually available within 15 minutes after a game has ended.
  3. If you have a SQL database, nflfastR::update_db() helps maintain a pbp database. It uses nflfastR::build_nflfastR_pbp() so can be run on the same schedule (i.e. within 15 minutes after a game has ended).

In all cases, it is recommended to update the data again during the night from Wednesday to Thursday in order to also receive the stat corrections that the NFL will incorporate from Monday to Wednesday at the latest. -> Thursday’s load_pbp() is the cleanest data we have.

nflverse Player Level Weekly Stats

Weekly player stats (offense, defense, kicking) are computed using

  • nflfastR::calculate_player_stats(),
  • nflfastR::calculate_player_stats_def(), and
  • nflfastR::calculate_player_stats_kicking()

with up to date nflverse pbp data. All player stats update every night (in the range of 3 am - 5 am ET) during the season.

nflverse-FTN Charting Data

ftn charting data updates every day at 0, 6, 12, 18 UTC during the season. The actual availability of new data depends on the update schedule of FTN.

nflverse Participation Data

Participation data is computed using unpublished code. The data source is gone and there won’t be updates anymore.

nflverse Game/Schedule Data

Game/Schedule data updates very 5 minutes during the season.

nflverse Roster Data

Roster data updates every day at 7AM UTC.

Player Level Weekly NFL Next Gen Stats

Player level weekly stats provided by NFL Next Gen Stats update every night (in the range of 3 am - 5 am ET) during the season. The actual availability of new data depends on the update schedule of NGS.

PFR Snap Count Data

Snap Count data updates every day at 0, 6, 12, 18 UTC during the season. The actual availability of new data depends on the update schedule of PFR.

PFR Advanced Stats

PFR Advanced Stats updates every day at 7AM UTC during the season. The actual availability of new data depends on the update schedule of PFR.