Completions
compTotal pass completions in a season.
SourceNewsday / Section XI official stats
NoteQuarterback stats only.
An almanac of every statistic shown across SportsGPT — what each number means, how it’s measured, and where it comes from.
Quarterback counting stats.
Total pass completions in a season.
SourceNewsday / Section XI official stats
NoteQuarterback stats only.
Total pass attempts in a season.
SourceNewsday / Section XI official stats
NoteQuarterback stats only.
Total passing yards in a season.
SourceNewsday / Section XI official stats
NoteQuarterback stats only.
Total touchdown passes thrown in a season.
SourceNewsday / Section XI official stats
NoteQuarterback stats only.
Total interceptions thrown in a season.
SourceNewsday / Section XI official stats
NoteQuarterback stats only.
Carries, yardage, scoring rate.
Total rushing attempts in a season.
SourceNewsday / Section XI official stats
NoteTop 25 rushers per season only.
Total rushing yards in a season.
SourceNewsday / Section XI official stats
NoteTop 25 rushers per season only.
Total rushing touchdowns in a season.
SourceNewsday / Section XI official stats
NoteTop 25 rushers per season only.
Rushing yards per game — how many yards a ball carrier averages each time his team takes the field. Where a season total tells you who ran for the most yards, YPG normalizes for schedule length and missed games, making it a fairer measure of game-to-game production. A player who runs for 1,200 yards in 10 games (120 YPG) is outperforming a player who runs for 1,400 yards in 14 games (100 YPG), even though his season total is lower.
SourceDerived from Newsday / Section XI official stats
NoteGames played data available for 2023–24 and 2024–25 seasons only. Displayed as — for earlier seasons.
Touchdown rate per carry — how often does a rushing attempt end in a score? This metric reveals how dangerous a ball carrier is on any given handoff, independent of volume or game count. It is especially useful for identifying high-leverage backs who play limited roles: a goal-line specialist who touches the ball 30 times and scores 12 touchdowns has a TD% of 40%, far higher than a workhorse back with 250 carries and 25 touchdowns (10%). High TD% with low total attempts often signals a targeted, situational role rather than full-game production.
SourceDerived from Newsday / Section XI official stats
NoteTop 25 rushers per season only.
Rushing touchdowns per game — how consistently does a back find the end zone each week? Where TD% measures efficiency per carry (how lethal each touch is), TDs/G measures frequency per game (how reliably he scores regardless of how many touches he gets). A workhorse back who gets 25 carries a game and scores once has a modest TD% but a reliable TDs/G. A specialist with a sky-high TD% may only play in two or three series, producing a low TDs/G. Together, TD% and TDs/G answer different questions: one tells you how dangerous the carry is, the other tells you how often the scoreboard changes.
SourceDerived from Newsday / Section XI official stats
NoteGames played data available for 2023–24 and 2024–25 seasons only. Displayed as — for earlier seasons.
Rushing Explosiveness Score — a composite that combines yards-per-carry efficiency with touchdown conversion rate into a single number. YPC measures how much ground a back gains per touch; TD% measures how often those touches end in a score. Multiplying them rewards backs who do both simultaneously: a player gaining 8.0 yards per carry and scoring on 12% of his attempts produces an R-EXP of 96, while a player at 5.0 YPC and 5% TD rate scores only 25. The compounding nature of the formula is intentional — a back who is merely good at one dimension is not rewarded the same way as one who excels at both. Think of R-EXP as a single answer to the question: how dangerous is this back, per carry, in both space and around the goal line?
SourceDerived from Newsday / Section XI official stats
NoteTop 25 rushers per season only. Available for all seasons (2020–25).
Catches into yards. Top 25 per season.
Total receptions in a season.
SourceNewsday / Section XI official stats
NoteTop 25 receivers per season only. 2021–2024; no 2020 data available.
Total receiving yards in a season.
SourceNewsday / Section XI official stats
NoteTop 25 receivers per season only. 2021–2024; no 2020 data available.
Total receiving touchdowns in a season.
SourceNewsday / Section XI official stats
NoteTop 25 receivers per season only. 2021–2024; no 2020 data available.
Wins, losses, scoring, schedule.
Games played in a season. Derived from game logs for 2023 and 2024; not available for earlier seasons.
SourceDerived from games table (2023–2024)
NoteNull for 2020–2022 player stat rows — no game log data for those seasons.
Total wins in a season, including non-division and playoff games.
SourceSection XI official standings
NoteOverall record; see CONF for conference-only record.
Total losses in a season.
SourceSection XI official standings
NoteOverall record.
Win percentage calculated as wins divided by total games played.
SourceDerived from standings
NoteTies counted as half a win.
Conference record — wins and losses within the team's division only.
SourceSection XI official standings
NoteConference schedule varies by division. Non-conference games are excluded.
Points scored across all games in a season.
SourceDerived from game scores (2023–2024)
NoteAvailable for 2023 and 2024 only. Includes playoff games.
Points allowed across all games in a season.
SourceDerived from game scores (2023–2024)
NoteAvailable for 2023 and 2024 only. Includes playoff games.
Average win percentage of all opponents faced during the season. Higher values indicate a tougher schedule.
SourceDerived from team_season_stats and game results
NoteUses opponents' final season record, not their record at time of game. Nassau County opponents excluded from DB.
Tiered defensive classification based on average points allowed per game. Elite (≤14), Strong (≤21), Average (≤28), Vulnerable (>28).
SourceDerived from game scores
NoteThresholds calibrated for Section XI high school football scoring levels.
Average points scored per game during the season.
SourceDerived from game scores
NoteIncludes playoff games. Higher values indicate greater offensive production.
Average points allowed per game during the season.
SourceDerived from game scores
NoteIncludes playoff games. Lower values indicate stronger defensive performance.
Point differential — the margin between points scored and points allowed.
SourceDerived from PF and PA
NoteAvailable for 2023 and 2024 only. Positive values indicate net scoring advantage.
Opponent rank — the opponent's standing among all Section XI teams that season, ordered by win percentage. Rank 1 is the highest win-percentage team. Provides a quick read on opponent quality for each game.
SourceDerived from team_season_stats
NoteTies broken by total wins. Nassau County opponents not in the DB are excluded and will show —.
Rates and ratios — where comparison begins.
Completion percentage — how often a quarterback completes a pass attempt. A foundational measure of accuracy, consistency, and execution.
SourceComputed from season passing stats
NoteQuarterback stats only. Higher sample sizes (more attempts) produce more reliable values.
Yards per attempt — average yards gained per pass attempt. Combines accuracy, aggressiveness, and overall passing efficiency.
SourceComputed from season passing stats
NoteQuarterback stats only.
Yards per completion — average yards gained on completed passes. Captures verticality, downfield aggression, and yards-after-catch impact.
SourceComputed from season passing stats
NoteQuarterback stats only. High YPC with low COMP% may indicate boom-or-bust tendencies.
Percentage of pass attempts resulting in touchdowns. Reflects scoring efficiency, red-zone execution, and explosive scoring capability.
SourceComputed from season passing stats
NoteQuarterback stats only.
Percentage of pass attempts resulting in interceptions. Reflects ball security, decision-making, and risk management.
SourceComputed from season passing stats
NoteQuarterback stats only. Lower is better.
Touchdown-to-interception ratio — compares touchdown passes to interceptions. Measures decision-making, scoring vs. turnover balance, and offensive discipline.
SourceComputed from season passing stats
NoteQuarterback stats only. Undefined (∞) when INT = 0; displayed as TD count in those cases.
Yard Value Above Average — how far above or below a quarterback's total passing yards are compared to the average of all passers in the dataset. Designed for benchmarking and contextual production analysis.
SourceComputed from season passing stats
NoteQuarterback stats only. Value shifts based on the player pool included in the average.
Composites that try to read the position whole.
Measures how well a quarterback executes the offense with control, accuracy, poise, scoring efficiency, and ball security. CMD rewards quarterbacks who complete passes efficiently, convert drives into points, and avoid costly mistakes.
SourceFootball Data Hub — Official Metric Definitions
NoteQuarterback stats only. Penalizes heavily for high interception rates. Quarterbacks with 0 interceptions produce an undefined value; INT Rate is floored at a minimum to prevent division by zero.
Identifies quarterbacks who create explosive plays, scoring swings, and momentum-changing production. GBI emphasizes explosiveness, scoring efficiency, and high-impact decision-making.
SourceFootball Data Hub — Official Metric Definitions
NoteQuarterback stats only. Quarterbacks with 0 interceptions are handled via TD:INT floor logic.
Reflects a quarterback's ability to make smart, high-value, efficient decisions that maximize scoring while minimizing risk. Multiplies total touchdowns by yards per attempt, then adjusts for turnover impact.
SourceFootball Data Hub — Official Metric Definitions
NoteQuarterback stats only. The +1 INT adjustment prevents division by zero and moderately penalizes turnover-free seasons less harshly.
A custom quarterback rating system designed specifically for high school football. Balances total production, scoring ability, accuracy, decision-making, and workload scaling. Adjusts for volume to reduce inflation from small sample sizes.
SourceFootball Data Hub — Official Metric Definitions
NoteQuarterback stats only. Formula not yet fully recovered — values displayed are from the original computation and cannot currently be reproduced for new seasons.
A composite dominance metric summarizing overall quarterback impact into a single evaluative score. Designed for rankings, leaderboards, recruiting visibility, and comparative scouting.
SourceFootball Data Hub — Official Metric Definitions
NoteQuarterback stats only. Formula not yet fully recovered — values displayed are from the original computation.
Team dominance composites.
A composite team dominance metric that summarizes overall team strength across a season. Accounts for wins, losses, and the quality of opponents faced. Intended for cross-division comparisons and historical rankings.
SourceFootball Data Hub — Official Metric Definitions
NoteAvailable for 2021–2024. Formula not yet fully recovered — displayed values are from the original computation.
A football-adapted Elo rating system modeled after chess Elo. Measures relative team strength dynamically over time, adjusting for opponent strength, expected outcome, actual result, and upset magnitude. Provides dynamic power rankings, matchup prediction, and longitudinal strength tracking.
SourceFootball Data Hub — Official Metric Definitions
NoteAvailable for 2021–2024. K-factor and full implementation details not yet recovered — displayed values are from the original computation and cannot currently be reproduced.
Enrollment, SAT, AP, graduation and college acceptance — the school context behind the football.
Total student enrollment at the high school across all four grades. Used as a rough proxy for program size and the talent pool a football team can draw from. Section XI divisions are loosely aligned to enrollment, though placement also reflects competitive history.
SourcePublic school district reports
NoteEnrollment figures are reported by the district and may lag the current school year by one cycle.
Average combined SAT score (Math + Evidence-Based Reading and Writing) for the school. A composite indicator of academic performance, used here as one of four inputs to the ACAD index.
SourcePublic school district reports; College Board summary data
NoteReported as a school-wide average; participation rate varies between schools and is not normalized for here.
Percentage of Advanced Placement exam takers at the school who earned a score of 3 or higher (the standard threshold for college credit). A signal of academic depth in upper-level coursework.
SourcePublic school district reports; College Board summary data
NotePass rate is a function of both instruction quality and which students opt into AP exams; schools with more selective AP enrollment may post higher rates without a stronger overall program.
Percentage of the entering freshman cohort that earned a diploma within four years. The standard high school outcome measure used by the New York State Education Department.
SourceNYSED four-year cohort graduation reports
NoteCohort tracking excludes transfer students who leave the district before graduation; small numerator/denominator swings can move the rate noticeably year-to-year for smaller schools.
Percentage of the graduating class accepted to at least one two- or four-year college. Captures post-secondary intent and access at the school level.
SourcePublic school district reports
NoteAcceptance is self-reported by districts and is not the same as enrollment or completion. Three Section XI schools currently have no figure on record.
A composite signature stat that blends SAT, AP pass rate, graduation rate, and college acceptance rate into a single 0–100 score. Each input is converted to a z-score on the visible set, the four z-scores are averaged with equal weight, and the result is rescaled to 0–100. Higher is stronger relative to the cohort currently in view; the score is recomputed whenever the division filter changes, so it always answers "how does this school compare to the schools alongside it on this page."
SourceDerived in src/app/school/Shell.tsx from public school district reports
NoteSchools missing any input are imputed at the cohort mean (z=0) for that input, which gives them an average rather than a missing contribution. ACAD is a within-set comparison and is not directly comparable across different filter selections.
Race mix, need indicators, and the multi-year enrollment trend behind every district.
Share of K-12 students at the school reported as White. Sourced from NYSED Demographic Factors (NUM_WHITE / K-12).
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteCounts below five are suppressed by NYSED and treated as zero here.
Share of K-12 students at the school reported as Black or African American (NUM_BLACK / K-12).
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteCounts below five are suppressed by NYSED and treated as zero here.
Share of K-12 students at the school reported as Hispanic or Latino (NUM_HISP / K-12).
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteCounts below five are suppressed by NYSED and treated as zero here.
Share of K-12 students at the school reported as Asian or Native Hawaiian / Other Pacific Islander (NUM_ASIAN / K-12).
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteCounts below five are suppressed by NYSED and treated as zero here.
Share of K-12 students at the school reported as Multiracial (NUM_Multi / K-12).
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteCounts below five are suppressed by NYSED and treated as zero here.
A composite signature stat for racial heterogeneity at the school, using Blau's index — also known in the education and demography literature as the Gini-Simpson index.
The formula is 1 minus the sum of squared population shares across all six race groups (American Indian, Asian, Black, Hispanic, Multiracial, White). It answers a single intuitive question: pick two students at random — what is the probability they belong to different race groups? The raw Blau value is rescaled 0–100 within the currently visible set, matching the ACAD pattern. Higher = a more even distribution across groups; lower = a more concentrated single group. The score is recomputed whenever the division filter changes.
SourceDerived in src/app/school/Shell.tsx from NYSED Demographic Factors
NoteBlau's index, Gini-Simpson, and Simpson's index of diversity are the same formula under different names; the antitrust-world HHI (Σpᵢ²) is its mirror image. American Indian counts are included in the formula even though that column is hidden from the table (suppression makes the cell uninformative). DIVERSITY is a within-set comparison and is not directly comparable across different filter selections.
Share of K-12 students at the school flagged as economically disadvantaged — typically eligible for free or reduced-price lunch, public assistance, or comparable supports (NUM_ECDIS / K-12). One of NYSED's primary need indicators.
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteEligibility criteria vary by program and reporting year; comparisons across districts and years should be treated as directional.
Share of K-12 students at the school classified as English Language Learners (NUM_ELL / K-12). High values indicate a district serving a substantial multilingual population.
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteIdentification practices differ between districts; counts below five are suppressed and treated as zero.
Share of K-12 students with disabilities — students who have an Individualized Education Program (IEP) or a 504 plan on file (NUM_SWD / K-12).
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteA higher SWD% is not directionally good or bad — it can reflect identification thoroughness as much as underlying need. Sort and read with that in mind.
Share of K-12 students at the school identified as homeless under the McKinney-Vento Homeless Assistance Act — includes students in shelters, doubled-up with other families, and unaccompanied youth (NUM_HOMELESS / K-12).
SourceNYSED Demographic Factors table — ENROLL{year}.mdb
NoteCounts below five are suppressed. Identification depends on each district's reporting practices.
NYSED's district-level classification of need relative to local resource capacity. Tier 3 = High-Need Urban-Suburban district (highest need among Suffolk). Tier 5 = Average need. Tier 6 = Low-need district. The index is the ratio of estimated district poverty to the Combined Wealth Ratio (district wealth per pupil ÷ state average wealth per pupil). Every building inside a district shares the same tier.
SourceNYSED BOCES and N/RC table — ENROLL{year}.mdb
NoteOnly tiers 3, 5, and 6 appear in Suffolk County. The full state taxonomy has seven categories including New York City (1), Big 5 districts (2), Rural High Need (4), and Charter Schools (7).
Absolute change in grade 9-12 enrollment between the earliest and latest school year on file (currently 2019-20 through 2024-25, a five-year window). Positive = the high school grew; negative = it shrank.
SourceDerived from school_year_stats in Neon Postgres
NoteMulti-building districts (Brentwood, Ward Melville coop) include all rolled-up buildings in both endpoints, so a building that opened mid-window can inflate the gain.
Percentage change in grade 9-12 enrollment between the earliest and latest school year on file. Smaller schools swing more on equal student counts; use alongside the absolute Δ when comparing across the cohort.
SourceDerived from school_year_stats in Neon Postgres
NoteSame multi-building caveat as Enrollment Δ. Schools with missing earliest-year data render as “—”.
Where the numbers come from — and how the system is built.
SportsGPT draws from two distinct sources. First, Newsday publishes official Section XI end-of-season top-25 leaderboards for Passing, Rushing, and Receiving — these are treated as the gold standard and ingested without modification. Second, Newsday publishes per-game box scores for every Section XI game, which the system scrapes, parses, and stores as player-level game stats. Most numbers you see in charts originate from one of these two pipelines. Knowing which source a figure comes from tells you how reliable it is and what edge cases to expect.
SourceNewsday (scores.newsday.com) — official Section XI results
NoteNassau County box scores have occasional gaps due to reporting differences. Box score stats for a given player may be zero if their game was not published by Newsday.
All seasons in the database are identified by the fall year of the school year — the year the season begins. DB season 2024 means the 2024-25 school year (games played in fall 2024). This is the standard used by Newsday, Section XI, and MaxPreps. Everywhere in SportsGPT the season is displayed in school-year format: "2024-25" or "24-25". The raw integer (2024) is an internal DB identifier only and is never shown to the user.
SourceSection XI convention; Newsday URL structure
NoteThe 2021 DB season = 2021-22 school year, the earliest season with complete box score coverage.
The top-25 seasonal leaders published by Newsday are stored as "blessed" rows in the player_season_stats table. These rows are ingested once per season and never deleted or updated — they represent the official Section XI record and carry the highest data authority in the system. When a stat appears in the official leaderboard, that value takes precedence over any other calculation. All other player stats in the table are backfilled from box scores and are clearly distinguished by their source.
SourceNewsday / Section XI official end-of-season leaderboards
NoteOnly the top 25 players per stat type per season appear in the official leaderboard. Players outside the top 25 have box-score-derived stats, which may be lower due to incomplete game coverage.
Box scores have been ingested for all five seasons in the system: 2021-22 through 2025-26. Coverage is near-complete for Suffolk County — for 2024-25, 238 of 240 games are represented; for 2025-26, all 224 games are present. Nassau County schools have occasional gaps because their results are reported differently by Newsday. The total box score archive covers over 1,100 individual games and links player performance directly to game context.
SourceNewsday box scores, ingested via scrape-boxscores.mjs + ingest-boxscores.mjs
NoteA stat of zero for a player in a given game may mean they genuinely did not contribute, or it may mean their game was one of the missing box scores. Nassau County opponents not in the database are excluded from all game-derived computations.
The player_game_stats table stores one row per player per game per stat type, sourced from Newsday box scores. Each row includes the school_slug and player_slug, enabling logos and profile links on every game stat view without any name-matching logic. Stat types covered are Passing, Rushing, Receiving, Kicking, and Defense. This table powers all game detail stat tabs — Box Score, Passing, Rushing, Receiving, Kicking, and Defense — and is the backbone for per-game leaderboards and single-game records charts.
SourceDerived from Newsday box scores; stored in player_game_stats
Noteplayer_game_stats is the authoritative source for game-level stats. game_box_scores.player_stats is a raw JSONB fallback used only in the Game Log side panel and does not drive any chart or stat tab.
Players who appear in box scores but did not make the official Newsday top-25 leaderboard are promoted into player_season_stats via an additive backfill process. The rebuild script (rebuild-player-season-stats.mjs) aggregates per-game stats by player and season, then inserts only new rows — it never deletes or overwrites existing data. Two guards protect integrity: a name+school+season+stat_type match and a slug+season+stat_type match. A final ON CONFLICT DO NOTHING clause handles any within-batch slug collisions. The script is safe to re-run at any time.
SourceDerived from player_game_stats; inserted into player_season_stats
NoteBackfill rows are limited to players with nonzero stat totals. Defense rows require at least one interception, sack, or fumble recovery. Backfill stat totals depend on box score coverage — a player with missing games will have an understated seasonal total.
All 29 charts in SportsGPT are organized into eight metric families: Passing, Rushing, Receiving, Composite, Scoring, Wins, Schedule, and Defense. Each family has a dedicated data module (e.g., src/lib/chart-data/passing.ts) that owns all fetch functions for that family. The family taxonomy is enforced at the config layer — every chart config specifies its metric family, and the chart data registry maps each slug to both its family and its canonical fetch function. This structure makes it possible to add a new chart by writing one function and one registry line.
SourceSportsGPT chart configuration — src/lib/chart-configs.ts + src/lib/chart-data/
NoteFour charts (win-pct-trend, win-pct-by-division, schools-by-enrollment, team-scoring-avg) use inline SQL in the API route and are intentionally excluded from the registry. All others are fully registry-backed.
The chart data registry (src/lib/chart-data/registry.ts) is the single source of truth mapping every chart slug to its metric family and its canonical fetch function. Before this registry existed, the same fetch logic was duplicated across three consumers — the API route, the chart detail page, and the panel page — creating 87 copies of chart SQL spread across the codebase. The registry eliminates that duplication: each of the 29 registered charts has exactly one fetchFn, and all three consumers resolve to the same function via the registry. Slug validation, documentation tooling, and future generic chart loaders all derive from this one file.
SourceSportsGPT data architecture — src/lib/chart-data/registry.ts
NoteThe fetchFn type signature is (seasons: number[]) → Promise<any[]>. No-arg functions (win percentage, winning/losing streaks) are wrapped to accept the seasons argument and ignore it, keeping the interface uniform.
Compiled from Newsday box scores, Section XI official standings, and computations native to SportsGPT. Formulas marked “not yet fully recovered” are preserved from the original dataset and cannot currently be reproduced for new seasons.
Section XI · Live
Pick a category and pull up a chair.