BEHIND THE DATA · DATA & LIMITS

Data and limits

Where the numbers come from, which seasons carry which fields, and what is left out on purpose. The gaps are stated because a model is only as good as the reader's ability to check it.

COVERAGE41 SEASONS

Not every field reaches back as far as the schedule does. Three inputs come from ESPN rather than the NBA feeds, and the table says which seasons carry which.

FIELDFROMSOURCENOTE
Schedules, scores, results1985-86NBA feedsComplete across every covered season.
Overtime periods~2002ESPNEarlier seasons read 0, which means unknown — not 'no overtime'.
Tip-off times~2002ESPNWithout one, the back-to-back multiplier falls back to its flat value.
Neutral-site venues2013ESPNEarlier international games are scored at the listed host's arena.
Shot locations1996-97hoopR / play-by-playShot Value only. No defender or tracking fields exist in public data.

The consequence, plainly: the fatigue model is a slightly different model before and after 2002. Terms are applied where their data exists rather than back-filled with guesses, so a 1994 score and a 2024 score are not built from identical information.

EXCLUDED ON PURPOSEAND WHY
Playoff gamesExcludedfrom the fatigue model
Orlando bubbleExcludedJul–Oct 2020, every model
PreseasonExcludedrotations are not real

Playoff games are excluded from the regular-season fatigue model because a fixed two-team series breaks its travel assumptions — the opponent never changes and the itinerary is known weeks ahead. They are modelled separately, at series grain, on the Playoff Rest page.

The 2019-20 Orlando bubble is excluded because every game was played at a single site: there is no travel to measure and no home crowd to weigh. That is a statement about roughly 88 games between 30 July and 11 October 2020, not about the season. The 971 games that season played before the 11 March suspension were reached by flying to them, and they are in.

This is narrower than it used to be. Until 30 July 2026 the whole of 2019-20 was absent, and those ~970 ordinary games went with it. The rule was written as a calendar window — October to April — which caught the bubble only by coincidence of dates, and along the way dropped 179 legitimate games from seasons that did not run October to April: 135 from 2020-21, which ran to 16 May, and 44 from the 1998-99 lockout season. Naming the abnormal stretch excludes exactly what it means to.

One surface still withholds the season in full. Schedule Edge ranks teams against each other within a single season, and 2019-20 stopped with teams having played between 63 and 67 games. A team with four fewer games has four fewer chances to accumulate an edge, so its total would move without the schedule having favoured anyone. That is a different objection from the bubble one — not how the games were played, but that there are unequal numbers of them — and it applies to no other season on record, where the widest spread is a single game.

The lockout seasons are kept for the same reason 2020-21 is: 1998-99 ran 50 games and 2011-12 ran 66, both with normal travel and both complete. A short season is only a problem for this site when it is also interrupted.

ACCURACY OF THE TRAVEL FIGUREAN ESTIMATE WITH EXACT INPUTS

Which cities a team played in, in what order, on what dates, is exact — it comes from the game log. What is assumed is the itinerary between them: teams are modelled as flying venue to venue, returning home only when the next game is at home. No public source records what they actually did.

The error is one-sided and bounded. A team that really did fly home mid-trip flew extra miles, but also slept at home — so the unmodelled distance arrives with unmodelled recovery, and the two partly cancel. Distances are great-circle rather than routed, and this is the same convention published travel studies use.

WHAT THIS SITE DOES NOT DOA CHOICE, NOT A GAP

FullCourt measures what the schedule does to teams. It is not a prediction service, so nothing here takes opponent strength, betting lines, or favourites and underdogs as an input to a pick, and it never forecasts who will be available tonight. Availability is measured only after the fact, once the box score says who actually played — see Availability cost, which prices an absence against the same schedule terms and uses team strength as a control rather than a signal.

Those inputs are what a forecast is built from, and adding them would make this a tipping site that happens to track rest. The historical win rates here are associational for the same reason: they describe what has followed a rest gap, not what causes a team to win.

KNOWN GAPSNOT YET FIXED
  • Pre-2002 overtime is unknown rather than zero. Basketball-Reference carries it and could close this gap; it has not been done.
  • Neutral-site games before 2013 are unmarked, so Mexico City games from 1997 and the 2011-12 London games are geolocated at the listed host's arena. Basketball-Reference marks them.
  • Arena coordinates are era-correct for relocations, but neutral-site venues rely on a small hand-maintained list of cities.