BRO Logo

Leagues

How It Works

Early-season league tables can be deceiving. In round-robin formats, tough early fixtures can punish even the best teams. In US-style leagues like the NBA, NFL, NHL, and MLB, the randomness of who you play — sometimes from entirely different conferences or regions — can create huge swings in your position. Toss in scheduling quirks, domestic cups, or overlapping competitions (such as the Champions or Europa Leagues), and the table can be wildly misleading before the season even reaches its midpoint.

Another layer of complexity comes from the offseason. Team rosters can change dramatically between seasons due to new signings, departures, managerial changes, or other structural shifts. Traditional ranking systems that rely heavily on historical data may fail to capture this reset.

The Bootstrapped Recursive Ordering (BRO) algorithm, patent pending, was built to cut through this noise and reveal a truer picture of team performance. Unlike traditional ranking systems like ELO, which build forward from past results, BRO works backwards. It uses today’s league table as a proxy for team strength (the “bootstrapping”), then recalculates the standings, redistributing points based on opponent strength.

And it doesn’t stop there — BRO runs recursively, reordering the table again and again until the standings stabilize and stop changing. The result? A league table that’s fairer, sharper, and more predictive.

The Workflow

The basic workflow of the BRO algorithm for association football is as follows:

BRO Algorithm Workflow

Why It Matters

In round-robin leagues, natural biases typically fade by midseason, making BRO most powerful early on. In American leagues like the NFL, NBA, NHL, and MLB, there’s no round-robin schedule—uneven matchups create even larger random variations in opponent strength, making early-season rankings far more unpredictable and BRO’s insights especially valuable.

We tested the algorithm at the 33% mark of multiple seasons. The results? The BRO algorithm consistently generated tables that were statistically better predictors of the final standings than the official league table.

Flexibility Across Leagues

The BRO algorithm isn’t just for formats with single leagues. It also adapts to leagues with regional divisions like the NHL, MLB, NFL, or NBA. To handle these, the regions are first merged into a single “super league.” The BRO algorithm is then applied, and finally the results are split back into their respective conferences or divisions — giving a consistent, fair ranking system across complex formats.

Beyond the Basics

Of course, BRO can be combined with other data, like preseason estimates of team strength. But even when compared on an all-else-being-equal basis, BRO adds predictive power and a fairer perspective on how teams are really performing.

For association football and the NHL, data is processed using their natural points-based systems, as shown in the flow chart above. The NBA, NFL, and MLB operate differently, since their standings are based on win percentage. To align them with our framework, we first convert results into a points-based system: 1 point for a win, 0.5 points for a draw/tie, and 0 points for a loss. These adjusted results are then processed in the same way as the natural points systems. Finally, before outputting the BRO algorithm tables, we convert the results back into win percentage.

The current parameter sets used for version 1 of the BRO algorithm are as follows:

League Win/Loss Spread Draw Spread Overtime Spread Tiebreaker Threshold
Premier League30.5N/A0.5
La Liga30.5N/A0.5
Serie A30.5N/A0.5
Bundesliga30.5N/A0.5
Ligue 130.5N/A0.5
Champions League30.5N/A0.5
NBA1N/AN/A0.2
NFL10N/A0.2
NHL2N/A0.50.4
MLB10N/AN/A

These parameters were initially selected through manual exploration. We are now systematically exploring the parameter space to identify values that consistently produce robust results — measured as the rank difference from the final league table — across multiple leagues. For instance, we can evaluate all possible combinations of parameters for win/loss and draw spreads, and compute the absolute rank difference between the BRO table (or the natural pre-BRO table) and the final league table for each football league, for example:

BRO Param Space

Here, the bias on the y-axis is defined as the rank difference between the original (pre-BRO) table and the final league table, minus the rank difference between the BRO-adjusted table and the final league table (as explained here). A negative value therefore indicates that the BRO algorithm provides a better prediction of the final league table than leaving the table unadjusted.

🔥 BRO doesn’t just track results — it redefines how we see the league.

Acknowledgements: Input data from fixturedownload.com, football-data.co.uk, and hockey-reference.com. retrosheet.org.