Tracking Standings and Rankings
The Postgame Standings feed carries the conference tables: conference, division, and subdivision ranks, records, win percentage, points for and against, streaks, strength of schedule and victory, and record splits by setting and by opponent level, updating after games conclude. The Rankings (By Week) and Rankings (Current Week) feeds carry the top 25 polls: the Associated Press, Amway Coaches, College Football Playoff, FCS Media, and AFCA FCS Coaches polls.
This scenario is commonly used to:
- Render conference standings tables
- Publish the weekly top 25 for each poll, with movement from the previous week
- Show conference, home, and road record splits
- Feed tiebreaker and strength-of-schedule displays
Standings versus rankingsIn college football, standings and rankings (polls) serve different purposes. Standings reflect a team's performance within a conference, based on its win-loss record and conference record; they determine eligibility for conference championships and bowl games. Rankings are subjective assessments of teams by sports writers, coaches, and analysts; the key polls are the AP Poll, the Coaches Poll, and the College Football Playoff (CFP) Rankings, and they weigh factors like win-loss record, strength of schedule, performance, and voter opinion. Rankings influence postseason matchups and national championship contenders.
Relevant Feeds
| Feed | Use |
|---|---|
| Postgame Standings | The tables themselves, by {season_year}/{season_type} |
| Rankings (By Week) | The top 25 for a given poll, year, and week |
| Rankings (Current Week) | The current top 25 for a given poll |
| Seasons | Season catalog; confirm a season is on file before requesting its tables |
Reading the Table
Standings nest divisions[] > conferences[] > teams[]: the top level is the NCAA division (I-A, alias FBS, in the sample; the I-AA division, alias FCS, holds conferences such as the Coastal Athletic Association in the same way), then each conference (Big Ten, alias BIG-TEN), then its teams. Every team that appeared on a Division I schedule is listed under its own division, so Division II, Division III, NAIA, and USCAA programs appear alongside FBS and FCS; rank is populated for FBS and FCS teams and is usually absent below Division I, so filter to those two divisions before sorting by rank. The season block names the year and type the tables belong to (the 2023 regular season below). The first Big Ten rows in the response:
GET https://api.sportradar.com/ncaafb/trial/v7/en/seasons/2023/REG/standings/season.json
x-api-key: YOUR_API_KEY{
"season": {
"id": "f58c6dbf-9dfe-487e-8b0b-af66af887206",
"year": 2023,
"type": "REG",
"name": "REG"
},
"divisions": [
{
"id": "43d3cede-6b8f-4158-bc7f-c3c7365e5b32",
"name": "I-A",
"alias": "FBS",
"conferences": [
{
"id": "cddff7c9-65e1-4fe0-b052-87fd4213fbfe",
"name": "Big Ten",
"alias": "BIG-TEN",
"teams": [
{
"id": "1cdf66a2-f157-4b4f-ad37-bd31e268f0ae",
"name": "Spartans",
"market": "Michigan State",
"alias": "MSU",
"rank": {
"conference": 13,
"division": 98,
"subdivision": 6
},
"streak": {
"type": "loss",
"length": 1,
"desc": "Lost 1"
},
"strength_of_schedule": {
"sos": 0.652,
"wins": 103,
"total": 158
},
"strength_of_victory": {
"sov": 0.449,
"wins": 22,
"total": 49
},
"wins": 4,
"losses": 8,
"ties": 0,
"win_pct": 0.333,
"points_for": 191,
"points_against": 340,
"records": [
{
"category": "d2",
"wins": 0,
"losses": 0,
"ties": 0,
"win_pct": 0,
"points_for": 0,
"points_against": 0
},
{
"category": "division",
"wins": 3,
"losses": 8,
"ties": 0,
"win_pct": 0.273,
"points_for": 146,
"points_against": 326
},
{
"category": "road",
"wins": 1,
"losses": 4,
"ties": 0,
"win_pct": 0.2,
"points_for": 79,
"points_against": 139
},
{
"category": "home",
"wins": 3,
"losses": 4,
"ties": 0,
"win_pct": 0.429,
"points_for": 112,
"points_against": 201
},
{
"category": "fbs",
"wins": 3,
"losses": 8,
"ties": 0,
"win_pct": 0.273,
"points_for": 146,
"points_against": 326
},
{
"category": "naia",
"wins": 0,
"losses": 0,
"ties": 0,
"win_pct": 0,
"points_for": 0,
"points_against": 0
},
{
"category": "fcs",
"wins": 1,
"losses": 0,
"ties": 0,
"win_pct": 1,
"points_for": 45,
"points_against": 14
},
{
"category": "conference",
"wins": 2,
"losses": 7,
"ties": 0,
"win_pct": 0.222,
"points_for": 108,
"points_against": 278
},
{
"category": "d3",
"wins": 0,
"losses": 0,
"ties": 0,
"win_pct": 0,
"points_for": 0,
"points_against": 0
},
{
"category": "uscaa",
"wins": 0,
"losses": 0,
"ties": 0,
"win_pct": 0,
"points_for": 0,
"points_against": 0
}
]
},
{
"id": "2d824a5f-e706-45b8-9d20-434ed5dd5c2f",
"name": "Fighting Illini",
"market": "Illinois",
"alias": "ILL",
"rank": {
"conference": 11,
"division": 87,
"subdivision": 6
},
"streak": {
"type": "loss",
"length": 2,
"desc": "Lost 2"
},
"strength_of_schedule": {
"sos": 0.552,
"wins": 85,
"total": 154
},
"strength_of_victory": {
"sov": 0.5,
"wins": 32,
"total": 64
},
"wins": 5,
"losses": 7,
"ties": 0,
"win_pct": 0.417,
"points_for": 294,
"points_against": 353
},
{
"id": "485dd62f-108c-4e32-b171-27f5d493552d",
"name": "Boilermakers",
"market": "Purdue",
"alias": "PUR",
"rank": {
"conference": 12,
"division": 81,
"subdivision": 7
},
"streak": {
"type": "win",
"length": 1,
"desc": "Won 1"
},
"strength_of_schedule": {
"sos": 0.59,
"wins": 92,
"total": 156
},
"strength_of_victory": {
"sov": 0.42,
"wins": 21,
"total": 50
},
"wins": 4,
"losses": 8,
"ties": 0,
"win_pct": 0.333,
"points_for": 287,
"points_against": 365
}
]
}
]
}
]
}The response is shown trimmed to three Big Ten rows, with the ten record splits kept on the first row. The rows render straight into a conference table (the conference record from the conference split in records[], plus overall wins, losses, and win percentage); club marks are placeholders for your own or licensed assets:
Row Anatomy
id,name,market, andaliasidentify the team; key rows onidrankcarries the team'sconferenceandsubdivisionpositions; a conference that plays in two divisions is ranked as one list, sorank.conferenceruns 1 to 14 across the Sun Belt rather than restarting for each divisionwins/losses/tiesare the record, withwin_pctcalculated from them; the essential input for determining standingsstreakcarries the kind, the length, and a display string (Lost 1): the team's current run and a read on recent formpoints_for/points_againstare season totals, reflecting offensive and defensive effectiveness and useful for tiebreakers and assessing overall strengthstrength_of_scheduleandstrength_of_victoryare objects carrying the computed value (sos,sov) plus the wins and total games behind it; a higher SOS indicates tougher opponents, a higher SOV reflects the strength of the teams defeated, and both add context beyond the win-loss recordrecords[]is a list of split records bycategory, each with its own wins, losses, ties,win_pct, and points for and against, showing how effective the team is in each setting:division: games against teams in the same division, the basis for divisional standings and playoff implicationsconference: games against every team in the conference, the input to conference rankingshomeandroad: results at home (home-field advantage) and away from itfbs,fcs,naia,d2,d3, anduscaa: results against each level of competition, so a schedule against FBS opponents reads differently from one padded with NAIA games; a split stays at zero when no such game was played
Rankings Anatomy
Both rankings feeds return one poll per request, addressed by the poll alias. Five polls are available:
-
AP25: The Associated Press -
EU25: Amway Coaches -
CFP25: College Football Playoff -
FCS25: FCS Media -
FCSC25: AFCA FCS Coaches -
pollcarries the poll'sid,alias, andname;season,week, andeffective_timeplace the edition in the calendar (week 5 of 2023 in the sample) -
rankings[]lists the top 25, each with the team'sid,name,market(typically the school or the team's location), andrank, its position relative to other teams in the nation -
wins/losses/tiesare the team's current record, crucial to its rank -
prev_rankis the team's rank in the previous week, showing how its position has changed; it is present only for teams ranked the week before -
pointsrank the teams, reflecting the collective votes of the poll's voters;fp_votescounts the voters who placed the team first, offering additional context on how strongly the team is viewed, and appears only for teams that received a first-place vote -
candidates[]lists teams that received votes but did not make the top 25, each with its record and the number ofvotesreceived (and aprev_rankwhen the team dropped out of the top 25); these are the teams on the cusp of being ranked -
A poll mixes objective performance (wins and losses) with subjective assessment (points and first-place votes) and shifts weekly; rankings play a significant role in postseason opportunities and the national championship
Integration Steps
1. Confirm the season
To avoid confusion and ensure you're accessing available data, refer to our Seasons feed. This resource lists all the seasons for which we have data.
For example: To ensure data availability for future seasons, such as a schedule in advance of when a season begins, first check the Seasons feed to verify that data for that specific season is already provided.
Starting with this feed can prevent unnecessary errors and streamline your data retrieval process.
The Seasons feed is the catalog, and the standings path takes the same {season_year}/{season_type} pair; every entry is REG. The response below is trimmed to the first and the two most recent entries:
GET https://api.sportradar.com/ncaafb/trial/v7/en/league/seasons.json
x-api-key: YOUR_API_KEY{
"league": {
"id": "26c1246a-2fc3-4b7e-8999-1685d3ab4676",
"name": "NCAA Football",
"alias": "NCAAFB"
},
"seasons": [
{
"id": "7010df8f-1e08-4021-91b8-ed09676c33de",
"year": 2013,
"start_date": "2013-08-29",
"end_date": "2014-01-14",
"status": "closed",
"type": {
"code": "REG"
}
},
{
"id": "754e4990-efc7-11ef-bb2a-5d2d22b9215e",
"year": 2025,
"start_date": "2025-08-23",
"end_date": "2026-01-26",
"status": "closed",
"type": {
"code": "REG"
}
},
{
"id": "fc822580-0db7-11f1-baa3-21a52b3e3c8d",
"year": 2026,
"start_date": "2026-08-29",
"end_date": "2027-02-01",
"status": "scheduled",
"type": {
"code": "REG"
}
}
]
}2. Pull the standings postgame
Standings are updated on a two-minute timer after each game is moved to complete, so pull once games reach complete rather than on a fast timer: 2 to 5 minutes after a game moves to complete for the quickest updates, and every hour or less otherwise, depending on your use case. The request and response shape are shown under Reading the Table.
3. Pull a week's poll
Rankings (By Week) is addressed by {poll_type}/{season_year}/{week_number} and returns that edition of the poll. The Associated Press poll for week 5 of the 2023 season, shown trimmed to three ranked rows (1, 6, and 23) and two vote-getters so that every field behavior appears:
GET https://api.sportradar.com/ncaafb/trial/v7/en/polls/AP25/2023/5/rankings.json
x-api-key: YOUR_API_KEY{
"poll": {
"id": "aef92d2e-6f2d-462a-972b-f38859ddb96f",
"alias": "AP25",
"name": "Associated Press Top 25"
},
"season": 2023,
"week": 5,
"effective_time": "2023-09-24T18:11:00+00:00",
"rankings": [
{
"id": "2eef738d-c637-4b12-b8df-4b79efcce71e",
"name": "Bulldogs",
"market": "Georgia",
"rank": 1,
"wins": 4,
"losses": 0,
"ties": 0,
"prev_rank": 1,
"points": 1562,
"fp_votes": 55
},
{
"id": "eeb3ce19-6ddd-4c91-afab-811c6cc81974",
"name": "Nittany Lions",
"market": "Penn State",
"rank": 6,
"wins": 4,
"losses": 0,
"ties": 0,
"prev_rank": 7,
"points": 1244
},
{
"id": "772536c7-c3e8-40d1-ac6e-232d719dc052",
"name": "Tigers",
"market": "Missouri",
"rank": 23,
"wins": 4,
"losses": 0,
"ties": 0,
"points": 197
}
],
"candidates": [
{
"id": "0dd26ea7-79fb-4ea8-bf48-7c31108e14a3",
"name": "Wildcats",
"market": "Kansas State",
"wins": 3,
"losses": 1,
"ties": 0,
"votes": 57
},
{
"id": "a18d7cf8-1263-45f2-a938-04032d2f7cf5",
"name": "Buffaloes",
"market": "Colorado",
"wins": 3,
"losses": 1,
"ties": 0,
"prev_rank": 19,
"votes": 32
}
]
}4. Track the current poll
Rankings (Current Week) drops the week from the path and returns the latest edition in the same shape. Rankings are updated within 15 minutes after their release to the public: the AP and Coaches polls typically on Sundays, the two FCS polls on Mondays, and the CFP rankings, which begin after week 10, on Tuesdays. Pull every hour or less on those days during the season, depending on your use case:
GET https://api.sportradar.com/ncaafb/trial/v7/en/polls/AP25/2023/rankings.json
x-api-key: YOUR_API_KEY5. Catch off-cycle corrections with the Daily Change Log
Standings and rankings typically remain stable once games conclude and results are recorded, but rare changes can occur: an adjustment following a review of play outcomes, a correction of a data error, or a late-reported result that affects standings. When a game ID appears in the results node of the Daily Change Log, some data associated with that game has changed (not necessarily the final score), so refetch the Postgame Standings for that game's season and the current Rankings, compare against what you have stored, and update your records accordingly. Polling cadence, the league-day window, and change-log samples are on Monitoring Data Changes.
Best Practices
- Sort standings rows by the
rankvalues rather than by list position; the rows above arrive as conference ranks 13, 11, and 12, and rank within the FBS and FCS divisions, where every row carries one - Key standings and rankings rows by the team
idso a poll position joins to the team's record, and treatname,market, andaliasas display data - Store rankings per poll alias and week, and keep
effective_timeso a re-pulled poll replaces the right edition - Refresh standings after each game day completes, rankings on release days, and both again whenever the Daily Change Log lists a game from the season you display
- Cache values and pull cadence for every feed on this page are on Update Frequencies
Updated 12 days ago
