If you've been here a few seasons, you'll remember that IthicaHawk used to post weekly ELO ratings. His explanation article here. If you are unfamiliar, ELO is a rating system mostly rooted in chess, but can be used for any head to head competition as far as I can tell. You start with a base score of 1500, which gets increased or decreased based on wins and losses. The score will increase more for a win versus a highly rated opponent than versus a low rated opponent, and similarly the score will decrease more for a loss versus a low rated opponent than versus a highly rated opponent. Also, for as much as the winning team's rating increases, the losing team's rating will decrease by the same amount. So at the end of the day, all ratings will still average out to 1500.
Calculation
Rating Difference ("D")
The first step is to find the difference in ELO score between the two teams that are playing each other. Now you just do the basic subtraction of one ELO score from the other. But there is another factor that gives one team an edge over the other that we need to account for here, home field advantage. This can be done easily enough, but just assigning a value to home field advantage, and essentially adding it to the home team's score and subtracting it from the away team's score. But what should that value be?
If we look at S26, home teams had a record of 61-51, a 54.5% win percentage, which if I had to guess is likely lower than the league typically sees. And now in the new sim, home field advantage seems to be less of a factor, as through 11 weeks of S27, home teams have a record of 40-37, a 51.9%. So let's take two league average teams (ELO rating exactly 1500). If we calculate the expected win percentage (which will be explained soon) with no home field adjustment, each team will have a 50% win rate. Shocking. But if we give home field advantage a factor of 40, in this same example the home team would have effectively an ELO of 1520 and the away team 1480, which would calculate as a 55.7% win rate for the home team. Looking at some ELO calculations done for the NFL by FiveThirtyEight (here), they use a factor of 65. This matches what IthicaHawk used in his previous media. However, this calculates as a 59.2% win rate for home teams, which just doesn't seem to be the case for our league right now. Therefore, for this article I am instead using a factor of 30 (54.3%), which is in line with S26, and although its more aggressive than what we have seen in S27, I'm basically just making the executive decision that we have just seen a small sample size so far, and home field advantage is probably stronger than we've had so far.
Expected Win Percentage ("E")
So long story short, take the difference between the two scores as well as the home field advantage factor to get the "D" (heh) number. Then the formula for calculate the expected win percentage is: E = 1 / (1 + 10^(D / 400)) . Then the expected win percentage for the opponent is obviously just one minus that number.
K Factor ("K")
As I mentioned in the introduction, ELO will go up if a team wins, and down when it loses. The K Factor relates to how big that change will be. Jumping ahead a bit, the simple formula is: Starting ELO + K * (Actual Win % - Expected Win %) = Ending ELO. Now how do you determine the ideal K Factor? Honestly I have no idea. That's a question for people much smarter than me. Again, it determines how much scores will move week to week, therefore a really high factor can cause wild fluctuations and possibly overrate the team's most recent results. Too low of a factor and maybe you aren't properly accounting for a team making improvements throughout the season. IthacaHawk used a K Factor of 20, which again matches what FiveThirtyEight uses for NFL ELO. I was going to try to mess with this number to optimize it based on the results I have so far, but I could already hear the smart stat people yelling at me about retrofitting your model to fit a small sample size of results. I'll just stick with 20.
So again to use the example of two average 1500 rated teams, but now the home team has an "E" of 54.3%. If the home team wins, the calculation would be: 1500 + 20 * (1 - 0.543) = 1509.14. If the home team loses, the calculation is 1500 + 20 * (0 - 0.543) = 1489.14. As you can see, if they win, they get roughly +9, but if they lose -11. That inequality is because they are favored to win. The more likely you are to win, the less reward you get for winning.
Margin of Victory Factor ("M")
Chess has three game outcomes, win, lose, and draw. Football does too, but beyond that we have margin of victory for additional context. Winning by 30 shows you have a better team than winning by 1 does. The formula to account for this is the same used by IthacaHawk and FiveThirtyEight, M = ln(Margin of Victory +1) * (2.2 / (2.2 + 0.001 * D)). Again, this part of it is not something I would be able to explain well, I just trust that smarter people have done this correctly. Anyway, K is multiplied by M, making the full formula for week to week changes:
Starting ELO = K * M * (Actual Win % - Expected Win %) = Ending ELO
Results
I have calculated ELO for S26 and through week 11 of S27. I started each team at 1500 in S26, and used a K Factor of 20 and a home field advantage factor of 30.
Legend for the chart was being annoying, so I'll just type out, from top to bottom based on "Week 17" ELO (final regular season numbers):
YKW - 1660.2
ARI - 1590.8
CHI - 1581.9
NOLA - 1531.4
NYS - 1522.7
SJS - 1512.5
AUS - 1508.3
BER - 1497.1
OCO - 1477.2
BAL - 1470.1
COL - 1458.9
SAR - 1451.7
PHI - 1380.8
HON - 1376.4
Yellowknife's 13-3 record was the best in the league by a nice margin, so no surprise that they are at the top. Oh also, I didn't factor in playoff games. Mostly because I didn't think of it until just now. Colorado and Sarasota being at the bottom is a bit odd, but I guess it might be because both finished kind of poorly.
Now for S27, I have been going back and forth on whether to use the S26 final numbers as the base pre-week 1 ELO, or to start over at 1500 for everyone, or some other option. So much like the rest of this article, I'm just gonna copy what IthicaHawk did, and use the prior season's numbers, regressed by 33% back to the mean 1500.
As it stands after Week 11:
ARI - 1662.4
CHI - 1623.0
SAR - 1570.1
YKW - 1569.1
COL - 1547.6
NYS - 1546.8
HON - 1530.8
NOLA - 1521.6
SJS - 1454.2
BER - 1438.0
OCO - 1426.6
AUS - 1411.5
PHI - 1403.4
BAL - 1294.9
Again, no major surprises there. So what other fun information do I have with this data?
Highest Expected Win %
Week 10 - Orange County (1390.3) at Arizona (1650.9) - Orange County 20, Arizona 32 - Arizona 84.1% Win Probability
Week 9 - Arizona (1640.9) at Baltimore (1327.7) - Arizona 51, Baltimore 20 - Arizona 83.6% Win Probability
Week 6 - Philadelphia (1396.1) at Yellowknife (1640.0) - Yellowknife 27, Philadelphia 24 - Yellowknife 82.9% Win Probability
Biggest Upsets
Week 7 - New York (1472.8) at Yellowknife (1644.3) - New York 42, Yellowknife 28 - 23.9% Win Probability
Week 5 - Colorado (1448.1) at Chicago (1608.4) - Colorado 28, Chicago 23 - 25.1% Win Probability
Week 9 - San Jose (1557.3) at Philadelphia (1367.4) - San Jose 17, Philadelphia 27 - 28.5% Win Probability
Week 12 Predictions
Now just to note, backtesting these probabilities, the ELO numbers have called 58% of games correctly. OK, but not all that great. However, in the past 5 weeks that number is 69% (nice), which either means the system does better with more data, or its just a lucky streak. Just fair warning before you go and trust these numbers to earn you TPE.
Yellowknife at Sarasota (54.4%)
Chicago at Arizona (59.9%)
Colorado (65.9%) at Philadelphia
Baltimore at Berlin (73.0%)
New York at New Orleans (50.7%)
Honolulu (60.5%) at Orange County
San Jose (51.8%) at Austin
Calculation
Rating Difference ("D")
The first step is to find the difference in ELO score between the two teams that are playing each other. Now you just do the basic subtraction of one ELO score from the other. But there is another factor that gives one team an edge over the other that we need to account for here, home field advantage. This can be done easily enough, but just assigning a value to home field advantage, and essentially adding it to the home team's score and subtracting it from the away team's score. But what should that value be?
If we look at S26, home teams had a record of 61-51, a 54.5% win percentage, which if I had to guess is likely lower than the league typically sees. And now in the new sim, home field advantage seems to be less of a factor, as through 11 weeks of S27, home teams have a record of 40-37, a 51.9%. So let's take two league average teams (ELO rating exactly 1500). If we calculate the expected win percentage (which will be explained soon) with no home field adjustment, each team will have a 50% win rate. Shocking. But if we give home field advantage a factor of 40, in this same example the home team would have effectively an ELO of 1520 and the away team 1480, which would calculate as a 55.7% win rate for the home team. Looking at some ELO calculations done for the NFL by FiveThirtyEight (here), they use a factor of 65. This matches what IthicaHawk used in his previous media. However, this calculates as a 59.2% win rate for home teams, which just doesn't seem to be the case for our league right now. Therefore, for this article I am instead using a factor of 30 (54.3%), which is in line with S26, and although its more aggressive than what we have seen in S27, I'm basically just making the executive decision that we have just seen a small sample size so far, and home field advantage is probably stronger than we've had so far.
Expected Win Percentage ("E")
So long story short, take the difference between the two scores as well as the home field advantage factor to get the "D" (heh) number. Then the formula for calculate the expected win percentage is: E = 1 / (1 + 10^(D / 400)) . Then the expected win percentage for the opponent is obviously just one minus that number.
K Factor ("K")
As I mentioned in the introduction, ELO will go up if a team wins, and down when it loses. The K Factor relates to how big that change will be. Jumping ahead a bit, the simple formula is: Starting ELO + K * (Actual Win % - Expected Win %) = Ending ELO. Now how do you determine the ideal K Factor? Honestly I have no idea. That's a question for people much smarter than me. Again, it determines how much scores will move week to week, therefore a really high factor can cause wild fluctuations and possibly overrate the team's most recent results. Too low of a factor and maybe you aren't properly accounting for a team making improvements throughout the season. IthacaHawk used a K Factor of 20, which again matches what FiveThirtyEight uses for NFL ELO. I was going to try to mess with this number to optimize it based on the results I have so far, but I could already hear the smart stat people yelling at me about retrofitting your model to fit a small sample size of results. I'll just stick with 20.
So again to use the example of two average 1500 rated teams, but now the home team has an "E" of 54.3%. If the home team wins, the calculation would be: 1500 + 20 * (1 - 0.543) = 1509.14. If the home team loses, the calculation is 1500 + 20 * (0 - 0.543) = 1489.14. As you can see, if they win, they get roughly +9, but if they lose -11. That inequality is because they are favored to win. The more likely you are to win, the less reward you get for winning.
Margin of Victory Factor ("M")
Chess has three game outcomes, win, lose, and draw. Football does too, but beyond that we have margin of victory for additional context. Winning by 30 shows you have a better team than winning by 1 does. The formula to account for this is the same used by IthacaHawk and FiveThirtyEight, M = ln(Margin of Victory +1) * (2.2 / (2.2 + 0.001 * D)). Again, this part of it is not something I would be able to explain well, I just trust that smarter people have done this correctly. Anyway, K is multiplied by M, making the full formula for week to week changes:
Starting ELO = K * M * (Actual Win % - Expected Win %) = Ending ELO
Results
I have calculated ELO for S26 and through week 11 of S27. I started each team at 1500 in S26, and used a K Factor of 20 and a home field advantage factor of 30.
Legend for the chart was being annoying, so I'll just type out, from top to bottom based on "Week 17" ELO (final regular season numbers):
YKW - 1660.2
ARI - 1590.8
CHI - 1581.9
NOLA - 1531.4
NYS - 1522.7
SJS - 1512.5
AUS - 1508.3
BER - 1497.1
OCO - 1477.2
BAL - 1470.1
COL - 1458.9
SAR - 1451.7
PHI - 1380.8
HON - 1376.4
Yellowknife's 13-3 record was the best in the league by a nice margin, so no surprise that they are at the top. Oh also, I didn't factor in playoff games. Mostly because I didn't think of it until just now. Colorado and Sarasota being at the bottom is a bit odd, but I guess it might be because both finished kind of poorly.
Now for S27, I have been going back and forth on whether to use the S26 final numbers as the base pre-week 1 ELO, or to start over at 1500 for everyone, or some other option. So much like the rest of this article, I'm just gonna copy what IthicaHawk did, and use the prior season's numbers, regressed by 33% back to the mean 1500.
As it stands after Week 11:
ARI - 1662.4
CHI - 1623.0
SAR - 1570.1
YKW - 1569.1
COL - 1547.6
NYS - 1546.8
HON - 1530.8
NOLA - 1521.6
SJS - 1454.2
BER - 1438.0
OCO - 1426.6
AUS - 1411.5
PHI - 1403.4
BAL - 1294.9
Again, no major surprises there. So what other fun information do I have with this data?
Highest Expected Win %
Week 10 - Orange County (1390.3) at Arizona (1650.9) - Orange County 20, Arizona 32 - Arizona 84.1% Win Probability
Week 9 - Arizona (1640.9) at Baltimore (1327.7) - Arizona 51, Baltimore 20 - Arizona 83.6% Win Probability
Week 6 - Philadelphia (1396.1) at Yellowknife (1640.0) - Yellowknife 27, Philadelphia 24 - Yellowknife 82.9% Win Probability
Biggest Upsets
Week 7 - New York (1472.8) at Yellowknife (1644.3) - New York 42, Yellowknife 28 - 23.9% Win Probability
Week 5 - Colorado (1448.1) at Chicago (1608.4) - Colorado 28, Chicago 23 - 25.1% Win Probability
Week 9 - San Jose (1557.3) at Philadelphia (1367.4) - San Jose 17, Philadelphia 27 - 28.5% Win Probability
Week 12 Predictions
Now just to note, backtesting these probabilities, the ELO numbers have called 58% of games correctly. OK, but not all that great. However, in the past 5 weeks that number is 69% (nice), which either means the system does better with more data, or its just a lucky streak. Just fair warning before you go and trust these numbers to earn you TPE.
Yellowknife at Sarasota (54.4%)
Chicago at Arizona (59.9%)
Colorado (65.9%) at Philadelphia
Baltimore at Berlin (73.0%)
New York at New Orleans (50.7%)
Honolulu (60.5%) at Orange County
San Jose (51.8%) at Austin