Popular opinion: CF ratings are unrelated to your IOI results. CF contests differ significantly from IOI contests.
❌ False!
Unpopular opinion: A contestant's Codeforces rating is more predictive of their final IOI result than their score on Day 1 is of their score on Day 2.
✅ True!
A higher CF rating, with a gap of at least 50, correlates with an 84% chance of achieving a better placement at IOI. The relationship between IOI placement and CF rating is strongly connected. The Pierson Correlation Coefficient for these two factors is -0.813. At the same time, the Pierson Correlation Coefficient between the scores of day 1 and day 2 of IOI is 0.804.
A side note for IOI participants: If you performed poorly on the first day, just think of it as a single bad Codeforces contest—you can always do better next time! You can likely compensate on the second day. Likewise, if you did a great job on Day 1, don't relax too much; the next day is a new challenge. The 0.804 coefficient shows a strong connection, but just as CF rating!
Correlation between CF rating and IOI placement
Here are the statistics on CF ratings for each medal:
| Medal | Minimum Rating | Median Rating |
|---|---|---|
| 🥇 | 1991 | 2450 |
| 🥈 | 1693 | 2303 |
| 🥉 | 1318 | 2106 |
Additionally, I've discovered an interesting correlation: participants' ratings one year before IOI also correlate with their final ranks; the Pierson Correlation Coefficient is 0.70.
Correlation between CF rating a year before IOI and IOI placement
Based on this insight, I’ve trained a model that can predict your placement at IOI. If you’re curious about your predicted placement for IOI 2026, leave a comment! Note that as time passes, the model can determine your place more accurately. Feel free to comment again in six months to see the updated prediction.
You can check out a similar blog post for IOI 2024 here.
I predicted results for some people in the above blog.
| Predicted Place | Actual Place |
|---|---|
| 49 | 67 |
| 104 | 71 |
| 148 | 156 |
| 80 | 126 |
| 174 | 121 |
| 107 | 274 |
| 254 | 290 |
| 183 | 209 |
| 180 | 194 |
| 59 | 88 |
Update: If you want to make the data more complete, please comment if you know someone from this gist.



