Skip to contents

wehoop is an R package for working with women’s college and professional basketball data. It exports 750 functions: live wrappers for ESPN, the WNBA Stats API, the NCAA, Fox Sports, Basketball-Reference, Her Hoop Stats, Bart Torvik, official.nba.com and eight international data providers, plus 98 load_*() functions that read pre-built season files (play-by-play, box scores, rosters, schedules, crosswalks and model outputs) instead of calling the sources.

Data status

The load_*() functions read release assets on sportsdataverse-data. The badges below are rebuilt nightly from each producer’s latest workflow run and newest release files; idle means the sport is out of season. Full detail: sportsdataverse.org/status.

Dataset Data updated Through Pipeline Update workflows
Women’s college basketball (ESPN) wehoop-wbb-data data updated wehoop-wbb-data through season wehoop-wbb-data pipeline state wehoop-wbb-data daily_wbb wehoop-wbb-data weekly_wbb wehoop-wbb-data wbb_models_cron
Women’s college basketball (stats.ncaa.org) ncaa-wbb-hoops-data data updated ncaa-wbb-hoops-data through season ncaa-wbb-hoops-data pipeline state ncaa-wbb-hoops-data ncaa_wbb_models
WNBA (ESPN) wehoop-wnba-data data updated wehoop-wnba-data through season wehoop-wnba-data pipeline state wehoop-wnba-data daily_wnba wehoop-wnba-data weekly_wnba wehoop-wnba-data annual_wnba_draft
WNBA Stats API wehoop-wnba-stats-data data updated wehoop-wnba-stats-data through season wehoop-wnba-stats-data pipeline state wehoop-wnba-stats-data daily_wnba_stats wehoop-wnba-stats-data wnba_models wehoop-wnba-stats-data annual_wnba_stats_draft
Conference, division and ballpark reference sdv-reference-data data updated sdv-reference-data through season sdv-reference-data pipeline state —

Installation

You can install the CRAN version of wehoop with:

This documentation describes wehoop 3.1.0. If the CRAN release hasn’t caught up yet, install the development version from GitHub instead:

# You can install using the pak package using the following code:
if (!requireNamespace('pak', quietly = TRUE)){
  install.packages('pak')
}
pak::pak("sportsdataverse/wehoop")

Quick Start

WNBA play-by-play for a season

load_wnba_pbp() covers 2002-2026; pass several seasons (or seasons = TRUE for all of them) to load more at once.

wnba_pbp <- wehoop::load_wnba_pbp(seasons = 2026)
## 144409 rows of WNBA play-by-play data from 354 games.

Women’s college basketball play-by-play for a season

load_wbb_pbp() covers 2004 onward. A new season’s file is published once its games begin.

wbb_pbp <- wehoop::load_wbb_pbp(seasons = 2026)
## 2824090 rows of women's college basketball play-by-play data from 6011 games.

What’s in wehoop

Each family links to its section of the function reference.

  • ESPN (espn_wnba_*, espn_wbb_*): 180 wrappers (88 women’s college + 92 WNBA) for play-by-play, box scores, schedules, standings, teams, athletes, odds, win probability, the draft and transactions. The ESPN endpoints article walks through them.
  • WNBA Stats API (wnba_*): stats.wnba.com box scores, play-by-play, league dashboards, player and team splits, shot charts and lineups.
  • WNBA officiating (wnba_referee_assignments()): official.nba.com’s daily referee assignments.
  • NCAA (ncaa_wbb_*): NCAA team lists and NET rankings.
  • Fox Sports (fox_wnba_*, fox_wbb_*): play-by-play, box scores, odds, rosters, standings and leaders.
  • Basketball-Reference (bref_wnba_*): WNBA player stats, team stats and standings.
  • Her Hoop Stats (hhs_*): NCAA women’s team indexes, team stats and rosters, for subscribers.
  • Bart Torvik (bart_wbb_*): women’s college team ratings and game schedules.
  • Crosswalks (WNBA, WBB): team, player and game ids matched across ESPN, WNBA Stats, Fox and Torvik, built live (wnba_*_crosswalk(), wbb_*_crosswalk()) or loaded pre-built (load_*_crosswalk()).
  • International (reference): FIBA (fiba_*), Genius Sports (genius_*), Sportradar Atrium (atrium_*), NBL / WNBL (nbl_*), SCB / DBBL (scb_*), FEB (feb_*), TBF (tbf_*) and the W League (wjbl_*), plus per-competition aliases such as fiba_wwc_*, wbbl_* and lfb_*. 289 functions in all.
  • Release loaders (WNBA, WBB, WNBA Stats, NCAA engine, models, conference groups): see below.

Bulk datasets

The 98 load_*() functions read pre-built season files (rds or parquet) from the sportsdataverse-data releases instead of calling the source APIs. Most take seasons and return a wehoop_data tibble (load_wnba_draft_manifest() takes no arguments and the load_*_groups() lineage tables are not split by season); most can also write to a database through dbConnection and tablename.

  • ESPN-backed (load_wnba_*, load_wbb_*): play-by-play, player and team box scores, schedules, rosters, player and team season stats, standings, shots, game rosters, officials, player cores and the WNBA draft.
  • WNBA Stats API (load_wnba_stats_*): play-by-play, schedules, rosters, coaches, player game logs, the league dashboard cube (load_wnba_stats_leaguedash()), draft, shots, game rosters, officials and possessions (load_wnba_stats_possessions()).
  • NCAA play-by-play engine (load_ncaa_wbb_*, 13 loaders): play-by-play, shots, lineups, matchup stints, possessions, RAPM (within-team and league-wide), box scores, rosters, schedules and team ids, built by sportsdataverse-py from stats.ncaa.org.
  • Crosswalks (load_wnba_*_crosswalk(), load_wbb_*_crosswalk()): the pre-built team, player and schedule crosswalks.
  • Models: load_wnba_player_impact(), load_wbb_player_value() and load_wbb_ratings().
  • Conference and division groups: load_wnba_groups(), load_wbb_groups() and their _group_seasons(), _group_aliases() and _team_group_seasons() companions record membership as it was each season.
  • sdvplotR (0.3.0, pak::pak("sportsdataverse/sdvplotR")) adds team logos and colours to ggplot2 charts and draws shot charts from the wehoop shot loaders; see its WNBA, women’s college and shot chart articles.
  • sportyR (2.4.5, install.packages("sportyR")) draws WNBA, NCAA and FIBA courts to plot shot locations on.
  • hoopR is the men’s basketball companion (NBA and men’s college basketball).
  • sportsdataverse-py is the Python package; most wehoop functions have a Python twin of the same name.

Documentation

For more information on the package and function reference, please see the wehoop documentation website.

There is also a printable wehoop cheat sheet (PDF), one of a set covering every SportsDataverse package.

The Getting started article is the place to begin; the WNBA and women’s college cookbooks have worked recipes.

Breaking Changes

Full News on Releases

Follow the SportsDataverse (@SportsDataverse) on X and star this repo

X Follow

GitHub stars

Star history of sportsdataverse/wehoop

Our Authors

@SaiemGilani @saiemgilani

@HutchNGo @hutchngo

Cheat sheet

A printable one-page reference for wehoop — the function families, the loaders, and what each one returns.

📄 Download the wehoop cheat sheet (PDF)

Free to download, print and hand out; light and dark, US Letter landscape. Every SportsDataverse package has one — browse them all at sportsdataverse.org/cheatsheets.

Citations

To cite the wehoop R package in publications, use:

BibTeX Citation

@misc{hutchinson_gilani_2021_wehoop,
  title = {wehoop: Access Women’s Basketball Play by Play Data},
  url = {https://doi.org/10.32614/CRAN.package.wehoop},
  doi = {10.32614/CRAN.package.wehoop},
  journal = {CRAN: Contributed Packages},
  publisher = {The R Foundation},
  author = {Gilani,  Saiem and Hutchinson,  Geoffery},
  year = {2026}
}