Skip to main content
Version: main

MBB — KenPom (kenpom.com, subscription)

sportsdataverse.mbb — 30 endpoints.

kenpom_ratings

GET /index.php - Pomeroy season ratings (AdjEM/AdjO/AdjD/AdjT plus SOS, one row per team). Port of hoopR kp_pomeroy_ratings().

Endpoint URL: GET https://kenpom.com/index.php

Valid URL: https://kenpom.com/index.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year (2025 = the 2024-25 season). Data begins at 2002.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_ratings(year=2025)

Last validated n/a.

kenpom_efficiency

GET /summary.php - efficiency and tempo summary (adjusted and raw O/D/T, average possession length). Port of hoopR kp_efficiency().

Endpoint URL: GET https://kenpom.com/summary.php

Valid URL: https://kenpom.com/summary.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year. Columns are narrower before 2010.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_efficiency(year=2025)

Last validated n/a.

kenpom_four_factors

GET /stats.php - four-factors rankings (eFG%, TO%, OR%, FTRate on offense and defense). Port of hoopR kp_fourfactors().

Endpoint URL: GET https://kenpom.com/stats.php

Valid URL: https://kenpom.com/stats.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_four_factors(year=2025)

Last validated n/a.

kenpom_point_distribution

GET /pointdist.php - share of points scored from 2s, 3s and free throws, offense and defense. Port of hoopR kp_pointdist().

Endpoint URL: GET https://kenpom.com/pointdist.php

Valid URL: https://kenpom.com/pointdist.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_point_distribution(year=2025)

Last validated n/a.

kenpom_height

GET /height.php - team height, effective height, experience, bench minutes and continuity. Port of hoopR kp_height().

Endpoint URL: GET https://kenpom.com/height.php

Valid URL: https://kenpom.com/height.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year. Columns are narrower before 2008.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_height(year=2025)

Last validated n/a.

kenpom_foul_trouble

GET /foul_trouble.php - team foul-trouble splits (minutes and efficiency with starters in foul trouble). Port of hoopR kp_foul_trouble().

Endpoint URL: GET https://kenpom.com/foul_trouble.php

Valid URL: https://kenpom.com/foul_trouble.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_foul_trouble(year=2025)

Last validated n/a.

kenpom_team_stats

GET /teamstats.php - team shooting and style splits; side='o' for offense, 'd' for defense. Port of hoopR kp_teamstats().

Endpoint URL: GET https://kenpom.com/teamstats.php

Valid URL: https://kenpom.com/teamstats.php?y=2025&od=o

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.
odsideYSide of the ball: 'o' (offense, hoopR's default) or 'd' (defense).

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_team_stats(year=2025, side='o')

Last validated n/a.

kenpom_player_stats

GET /playerstats.php - national player leaderboard for one metric. Port of hoopR kp_playerstats().

Endpoint URL: GET https://kenpom.com/playerstats.php

Valid URL: https://kenpom.com/playerstats.php?y=2025&s=eFG

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year. Data begins at 2004.
smetricYMetric slug as KenPom spells it on the wire - one of ORtg, PctMin, eFG, PctPoss, PctShots, ORPct, DRPct, TORate, ARate, PctBlocks, FTRate, PctStls, TS, FCper40, FDper40, FG2Pct, FG3Pct, FTPct. (hoopR's kp_playerstats() takes the display labels - ORtg, Min, eFG, Poss, Shots, OR, DR, TO, ARate, Blk, FTRate, Stl, TS, FC40, FD40, 2P, 3P, FT - and maps them to these.)
fconfYConference filter (KenPom abbreviation, e.g. 'ACC', 'B10'); omit for all of Division I.
cconf_onlyYConference-games-only toggle: 'c' restricts the leaderboard to conference play.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_player_stats(year=2025, metric='eFG')

Last validated n/a.

kenpom_kpoy

GET /kpoy.php - KenPom Player of the Year standings and the game-MVP table. Port of hoopR kp_kpoy().

Endpoint URL: GET https://kenpom.com/kpoy.php

Valid URL: https://kenpom.com/kpoy.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_kpoy(year=2025)

Last validated n/a.

kenpom_team

GET /team.php - a team's full season page. Returns EVERY table on it, so one call covers hoopR's kp_team_schedule(), kp_team_players() and kp_team_lineups(), which each fetch this same page separately -- plus kp_team_depth_chart(), recovered under a "depth_chart" key from an embedded script tag rather than a table (KenPom dropped the static depth-chart table; see kp_team_depth_chart()'s R source).

Endpoint URL: GET https://kenpom.com/team.php

Valid URL: https://kenpom.com/team.php?team=Duke&y=2025

API ParameterPythonPatternRequiredNullableDescription
teamteamYKenPom team name, spelled as the site does (e.g. 'Duke', 'Michigan St.').
yyearYSeason as a 4-digit ENDING year. Lineup tables begin at 2011.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_team(team='Duke', year=2025)

Last validated n/a.

kenpom_team_players_expanded

GET /player-expanded.php - a team's expanded per-player table plus the minutes matrix. Covers hoopR's kp_team_player_stats() and kp_minutes_matrix() in one fetch.

Endpoint URL: GET https://kenpom.com/player-expanded.php

Valid URL: https://kenpom.com/player-expanded.php?team=Duke&y=2025

API ParameterPythonPatternRequiredNullableDescription
teamteamYKenPom team name, spelled as the site does.
yyearYSeason as a 4-digit ENDING year. Starts ('S') are available from 2014.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_team_players_expanded(team='Duke', year=2025)

Last validated n/a.

kenpom_game_plan

GET /gameplan.php - a team's game-plan page (per-game four factors and personnel splits). Port of hoopR kp_gameplan().

Endpoint URL: GET https://kenpom.com/gameplan.php

Valid URL: https://kenpom.com/gameplan.php?team=Duke&y=2025

API ParameterPythonPatternRequiredNullableDescription
teamteamYKenPom team name, spelled as the site does.
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_game_plan(team='Duke', year=2025)

Last validated n/a.

kenpom_opponent_tracker

GET /opptracker.php - opponent tracker; side='o' for offense, 'd' for defense. Port of hoopR kp_opptracker().

Endpoint URL: GET https://kenpom.com/opptracker.php

Valid URL: https://kenpom.com/opptracker.php?team=Duke&y=2025&t=o

API ParameterPythonPatternRequiredNullableDescription
teamteamYKenPom team name, spelled as the site does.
yyearYSeason as a 4-digit ENDING year. Columns are narrower before 2010.
tsideYSide of the ball: 'o' (offense) or 'd' (defense).

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_opponent_tracker(team='Duke', year=2025, side='o')

Last validated n/a.

kenpom_player_career

GET /player.php - one player's career page (season-by-season stats and game log). Port of hoopR kp_player_career().

Endpoint URL: GET https://kenpom.com/player.php

Valid URL: https://kenpom.com/player.php?p=51234

API ParameterPythonPatternRequiredNullableDescription
pplayer_idYKenPom player id - the p= value on a player-page URL.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_player_career(player_id=51234)

Last validated n/a.

kenpom_box

GET /box.php - box-score detail for one game (per-team four factors, player lines, scoring runs). Port of hoopR kp_box().

Endpoint URL: GET https://kenpom.com/box.php

Valid URL: https://kenpom.com/box.php?g=20250401&y=2025

API ParameterPythonPatternRequiredNullableDescription
ggame_idYKenPom game id - the g= value on a FanMatch game link.
yyearYSeason (4-digit ENDING year) the game belongs to.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_box(game_id=20250401, year=2025)

Last validated n/a.

kenpom_win_probability

GET /winprob.php - in-game win-probability table for one game. Port of hoopR kp_winprob().

Endpoint URL: GET https://kenpom.com/winprob.php

Valid URL: https://kenpom.com/winprob.php?g=20250401&y=2025

API ParameterPythonPatternRequiredNullableDescription
ggame_idYKenPom game id.
yyearYSeason (4-digit ENDING year) the game belongs to.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_win_probability(game_id=20250401, year=2025)

Last validated n/a.

kenpom_fan_match

GET /fanmatch.php - the FanMatch slate for one date (predictions, thrill score, results). Port of hoopR kp_fanmatch().

Endpoint URL: GET https://kenpom.com/fanmatch.php

Valid URL: https://kenpom.com/fanmatch.php?d=2025-02-01

API ParameterPythonPatternRequiredNullableDescription
ddateYSlate date as YYYY-MM-DD.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_fan_match(date='2025-02-01')

Last validated n/a.

kenpom_team_history

GET /history.php?t= - a program's season-by-season history. Port of hoopR kp_team_history().

Endpoint URL: GET https://kenpom.com/history.php

Valid URL: https://kenpom.com/history.php?t=Duke

API ParameterPythonPatternRequiredNullableDescription
tteamYKenPom team name, spelled as the site does.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_team_history(team='Duke')

Last validated n/a.

kenpom_coach_history

GET /history.php?c= - a coach's season-by-season history. Port of hoopR kp_coach_history().

Endpoint URL: GET https://kenpom.com/history.php

Valid URL: https://kenpom.com/history.php?c=Jon+Scheyer

API ParameterPythonPatternRequiredNullableDescription
ccoachYCoach name as KenPom spells it (e.g. 'Jon Scheyer').

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_coach_history(coach='Jon Scheyer')

Last validated n/a.

kenpom_program_ratings

GET /programs.php - program-level ratings across the full KenPom era. Port of hoopR kp_program_ratings().

Endpoint URL: GET https://kenpom.com/programs.php

Valid URL: https://kenpom.com/programs.php

API ParameterPythonPatternRequiredNullableDescription

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_program_ratings()

Last validated n/a.

kenpom_archive_ratings

GET /archive.php - the Pomeroy ratings as they stood on a past date. Port of hoopR kp_pomeroy_archive_ratings().

Endpoint URL: GET https://kenpom.com/archive.php

Valid URL: https://kenpom.com/archive.php?d=2025-02-01

API ParameterPythonPatternRequiredNullableDescription
ddateYSnapshot date as YYYY-MM-DD.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_archive_ratings(date='2025-02-01')

Last validated n/a.

kenpom_conference

GET /conf.php - one conference's season page (standings, efficiency, per-team splits). Port of hoopR kp_conf().

Endpoint URL: GET https://kenpom.com/conf.php

Valid URL: https://kenpom.com/conf.php?c=ACC&y=2025

API ParameterPythonPatternRequiredNullableDescription
cconfYKenPom conference abbreviation (e.g. 'ACC', 'B10', 'SEC').
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_conference(conf='ACC', year=2025)

Last validated n/a.

kenpom_conference_stats

GET /confstats.php - league-wide conference comparison for one season. Port of hoopR kp_confstats().

Endpoint URL: GET https://kenpom.com/confstats.php

Valid URL: https://kenpom.com/confstats.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_conference_stats(year=2025)

Last validated n/a.

kenpom_conference_history

GET /confhistory.php - one conference's season-by-season history. Port of hoopR kp_confhistory().

Endpoint URL: GET https://kenpom.com/confhistory.php

Valid URL: https://kenpom.com/confhistory.php?c=ACC

API ParameterPythonPatternRequiredNullableDescription
cconfYKenPom conference abbreviation.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_conference_history(conf='ACC')

Last validated n/a.

GET /trends.php - national Division I trends by season (tempo, efficiency, shooting, fouls). Port of hoopR kp_trends().

Endpoint URL: GET https://kenpom.com/trends.php

Valid URL: https://kenpom.com/trends.php

API ParameterPythonPatternRequiredNullableDescription

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_trends()

Last validated n/a.

kenpom_home_court_advantage

GET /hca.php - per-team home-court advantage estimates. Port of hoopR kp_hca().

Endpoint URL: GET https://kenpom.com/hca.php

Valid URL: https://kenpom.com/hca.php

API ParameterPythonPatternRequiredNullableDescription

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_home_court_advantage()

Last validated n/a.

kenpom_arenas

GET /arenas.php - arena reference (name, capacity, average attendance) by team. Port of hoopR kp_arenas().

Endpoint URL: GET https://kenpom.com/arenas.php

Valid URL: https://kenpom.com/arenas.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_arenas(year=2025)

Last validated n/a.

kenpom_officials

GET /officials.php - referee ratings for one season. Port of hoopR kp_officials().

Endpoint URL: GET https://kenpom.com/officials.php

Valid URL: https://kenpom.com/officials.php?y=2025

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_officials(year=2025)

Last validated n/a.

kenpom_referee

GET /referee.php - one referee's game log and splits for a season. Port of hoopR kp_referee().

Endpoint URL: GET https://kenpom.com/referee.php

Valid URL: https://kenpom.com/referee.php?r=Ron+Groover&y=2025

API ParameterPythonPatternRequiredNullableDescription
rrefereeYReferee name as KenPom spells it (take it from the officials table).
yyearYSeason as a 4-digit ENDING year.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_referee(referee='Ron Groover', year=2025)

Last validated n/a.

kenpom_game_attributes

GET /game_attrs.php - season game leaderboards by attribute (thrill score, comebacks, upsets, ...). Port of hoopR kp_game_attrs().

Endpoint URL: GET https://kenpom.com/game_attrs.php

Valid URL: https://kenpom.com/game_attrs.php?y=2025&s=ThrillScore

API ParameterPythonPatternRequiredNullableDescription
yyearYSeason as a 4-digit ENDING year.
sattributeYAttribute slug, e.g. ThrillScore, Comeback, FanMatch, Upsets, Busts, MinutesPlayed, PossessionLength, LeadChanges.

Returns

return_parsed=True (default) — A dict of polars DataFrames, one per HTML table on the page, keyed by the table's HTML id (a KenPom page often carries several -- team.php alone holds the schedule, roster, depth chart and lineup tables); pass return_as_pandas=True for a dict of pandas.DataFrames (same keys). return_parsed=False — the raw page HTML (str).

Example

kenpom_game_attributes(year=2025, attribute='ThrillScore')

Last validated n/a.