RIVALRY LAB ยท METHODS & SOURCES

HOW RIVALRY LAB WORKS

Rivalry Lab is a historical matchup simulator, not a record book or a prediction service. It keeps the source of each claim visible: observed history, derived ratings, or synthetic game output.

OPEN THE LAB

READ THE LABEL

WHAT THE LAB SHOWS

OBSERVED

Season and rivalry history

Team-season identities, records, scoring context, rankings, coaches, and archival Ohio State-Michigan meetings are historical facts carried into the public snapshot when source coverage is available.

DERIVED

Ratings and matchup expectations

The Lab translates season ratings into a common scoring environment. Expected scores, win probabilities, rank summaries, and score advantages are model outputs, not historical results.

SIMULATED

Every played game

Drive timelines, final scores, turning points, series records, and volatility are synthetic outcomes generated from the derived matchup baseline and the selected seed.

THE PROCESS

FROM SEASON TO MATCHUP

  1. Choose two seasons. The selector only offers seasons included in the public Rivalry Lab snapshot.
  2. Rate every season with SRS. The Simple Rating System scores each team by its average scoring margin adjusted for opponent strength, computed iteratively across every game of the season and split into offense, defense, overall, and schedule-strength components.
  3. Use the exported cross-era ratings. Each SRS component is converted to a within-season z-score (standard deviations above that season's average team), so the matchup API compares eras on one scale instead of raw season point values.
  4. Set the neutral baseline. Each team is translated from its own offensive and defensive environment into the same neutral scoring environment.
  5. Set simulation coverage before the run. Every matchup uses the derived score and schedule context. Imported game data (possession pace, turnover rate per drive, scoring efficiency, red-zone finishing) joins the simulation only when both selected seasons carry rich coverage; a mixed pair never uses one team's imported data alone. Rich coverage exists for 2004 and later, with drive data from 2001.
  6. Adjust for opponents. Imported season measures are adjusted for schedule (version opp-adjust-v1): a team's efficiency is compared against what its opponents allowed everyone else, relative to the league average for that season.
  7. Run one seeded simulation plus the repeated set. One Simulate action plays the displayed game and a repeated run of the same matchup on the server. The repeated-game count (currently 5,000) was selected by a stability harness: the smallest count where win rates and typical scores stop moving between seeded replicates within set thresholds. The browser receives the displayed game and the aggregate summary only.
  8. Replay by seed. The same teams, seed, model versions, and data version reproduce the same displayed game and the same summary. Changing the seed creates a different synthetic sequence around the same derived baseline and coverage level.

READING THE CALL

RESULT DEFINITIONS

  • Favorite. The team with a pregame win probability above 50%.
  • Upset. A win by the underdog; the underdog win rate is the upset rate.
  • Typical score. The middle (median) simulated score for each team.
  • One-score game. A final margin of eight points or fewer.
  • Blowout. A final margin of 17 points or more.

The model's results section reports the repeated run: win rates, typical scores, margins, overtime, and turnovers, with one game from that run shown drive by drive. It does not offer tactics, game plans, player judgments, coaching advice, or conditions either team would need to win.

The underdog check compares two layers of the model. The pregame number comes from the rating formula's probability curve; the simulated rate comes from playing the games drive by drive. The gap between the two is itself a result.

PUBLIC RELEASE

SOURCES & COVERAGE

The site consumes a reduced public product snapshot from the Rivalry Lab model workspace. The snapshot includes the derived ratings, era translation configuration, simulation configuration with the harness-selected run count, coverage labels for every team-season, approved observed season aggregates (yards per play, rush share, third-down rate, turnovers, possessions, first downs, red zone), derived simulation inputs, and links for covered rivalry games. When both selected seasons carry rich coverage, the Lab labels that before and during the simulated game.

It does not import the private historical warehouse, credentials, or purchased data packages. A season profile may show an unavailable field when the public snapshot does not report it. Missing fields are not filled with guesses.

The Tape screen names the snapshot versions used for the current release. That provenance panel is the source of record for the version loaded by the simulator.

BOUNDARIES

WHAT IT DOES NOT CLAIM

A simulated final score is not a replay of a historical game, evidence that one team would certainly beat another, or a forecast of a future Ohio State-Michigan meeting. Ratings summarize the information represented in the released model; they do not capture every player, injury, coaching choice, weather condition, or counterfactual.

Rivalry Lab is unaffiliated with Ohio State University and the University of Michigan.