International Olympiad in Informatics (IOI): A Complete Guide

January 16, 2026

By Eric Eng

Founder/CEO of AdmissionSight
BA, Princeton University

Students working at computers in a library computer lab, preparing for the International Olympiad in Informatics (IOI)

The International Olympiad in Informatics (IOI) is widely considered the top programming competition for high school students. First held in Bulgaria in 1989 after early support from UNESCO, the IOI is now hosted by a different country each year and includes students from over 90 countries, with the 2025 competition held in Bolivia.

This blog explains how the IOI works, including who can participate, how students qualify, and what skills are tested. It also covers IOI medals and awards, past winners, and how students prepare for high-level competitive programming.

What Is the International Olympiad in Informatics (IOI)?

The International Olympiad in Informatics (IOI) is one of the most prestigious computer science competitions for secondary and high school students worldwide. It focuses on algorithmic problem solving, where students solve complex problems using advanced algorithms and data structures. The goal is to test how well students can turn ideas into correct and efficient code.

students checking laptop for the class rank reporting on the common app

Each participating country sends a team of up to four students, selected through national competitions. Students compete over two days by solving informatics problems, while the remaining days are reserved for cultural and recreational activities. Although students compete individually, they represent their countries as part of a national team.

The IOI is one of several international science olympiads and was created to encourage interest in computing and information technology among young students. The 2026 IOI will be held in Tashkent, Uzbekistan, from August 9–16, 2026. Future host countries include Germany in 2027, Japan in 2028, and Bulgaria in 2029.

International Olympiad in Informatics (IOI) Awards and Prizes

After the contest ends, each student’s scores from both competition days are added together. At the award ceremony, medals are given based on their relative total score. At the IOI, no more than half of all contestants receive a medal, which makes earning any medal highly competitive.

Medal

Who Receives It

What It Means

Gold Medal

About one out of every twelve students Highest total scores overall
Silver Medal Enough students so gold and silver together include about one quarter of all contestants

Next highest total scores

Bronze Medal

Enough students so about half of all contestants receive a medal

Scores high enough to place in the top half

Here’s the gist: Gold medals go to at least the top one-twelfth of all contestants. Silver medals are then awarded to the next group of students, so that gold and silver together account for about one quarter of all contestants. Bronze medals are added after that, but only until about half of all contestants have received a medal. No medals are awarded beyond this point.

For students who don’t earn a medal, the IOI awards Honourable Mentions for strong individual performance. These are given to students who score higher than at least half of the contestants on one of the two competition days, even if their total score isn’t high enough for a medal.

How to Qualify for the International Olympiad in Informatics (IOI)

Qualifying for the IOI is different from joining most academic competitions. Students can’t register on their own and must advance through their country’s official selection process while meeting eligibility rules set by the IOI and their national team.

Eligibility

To be eligible as a contestant, you must:

  • Be enrolled in secondary school or lower in the country you represent for most of the period from September 1 to December 31 in the year before the IOI.
  • Not be enrolled in a tertiary (university-level) degree program with a half-time or greater course load during the same period.
  • Be no older than 20 years old on July 1 of the year you compete in the IOI.

If studying abroad, you may represent the country of your nationality instead of the country where you attend school. Any exceptions to these rules must be formally requested and approved by the IOI International Committee.

Each participating country selects and submits a team of up to four students through its official national selection process. Students should consult their country’s IOI member page and national competition organizers for specific document requirements and contact information.

Contest fees

There’s no direct contest fee for individual students to participate in the Olympiad. Teams are selected through national qualifying systems, and national organizations typically cover major costs such as travel, accommodation, and official participation. Unlike other competitions, selected IOI team members don’t pay an entry fee to compete at the international event.

Registration deadline

There’s no single IOI registration deadline because it depends on each country’s national selection process. Generally, national registrations close months before the main IOI event.

man wearing glasses typing in laptop

Because dates vary by country and year, you’ll need to check your national organization’s website for official dates, especially for upcoming events like the IOI 2026 in Uzbekistan.

How to Get into the International Olympiad in Informatics (IOI)

Getting into the IOI is a multi-step process that requires performing well in national programming contests. Students progress through their country’s official selection system, which typically includes multiple rounds of competitions and training before a final team is chosen.

Here’s how you typically qualify and earn a place on your country’s IOI team:

1. Verify your eligibility.

Verify your eligibility by confirming that your school status and age meet IOI requirements, and consult your country’s IOI committee if anything is unclear. 

Generally, students must still be in secondary education, not enrolled in a university degree program, and be under 20 years old by July 1 of the competition year to take part in the IOI.

2. Research your country’s selection process.

Once you’ve confirmed your eligibility, find out how your country selects students for the IOI. Each country runs its own national competitions and training programs, with different timelines and requirements.

For example, in the United States, students compete through the USA Computing Olympiad (USACO), where only top performers advance to the training program that selects the IOI team. Other countries follow similar multi-stage selection systems using national contests and training camps.

3. Prepare for national selection rounds.

Prepare for the national selection rounds and the Olympiad itself. This involves developing strong problem-solving skills, understanding core algorithms, and writing reliable code.

Grading systems for algorithmic contests typically evaluate your program using multiple test inputs. Your solution must give the exact correct output and stay within time and memory limits. A correct idea isn’t enough if the code is too slow or fails on any test, so both correctness and efficiency are required.

If you need additional support while preparing for national selection rounds, our Olympiad Training program offers personalized 1-on-1 tutoring. Students work with experienced coaches to practice contest problems, review solutions, and improve performance in competitions like USACO and other national qualifiers.

4. Compete in selection rounds.

Compete in your country’s official selection rounds and aim for high scores or rankings. Contest format, scoring, and timing vary by country, so research the structure in advance and plan accordingly. Your performance determines whether you can represent your country at the IOI.

A female teacher and a male student doing code in one of the best computer science competitions for high school students.

For example, the USACO consists of four online contests, where students solve 3–4 algorithmic problems in C++, Java, or Python. Programs are graded automatically, and high scores allow students to advance through divisions. Only the top performers earn invitations to the training camp that selects the U.S. IOI team.

5. Final training and team selection.

After the national selection rounds end, top students are usually invited to a training camp. This stage gives selected students a final opportunity to improve their programming skills and prepare for the level of difficulty expected at the international competition.

At the end of the training camp, the national committee announces the students who’ll represent the country at the International Olympiad in Informatics (IOI). If selected, you’ll receive official instructions and next steps for the event.

How to Win the International Olympiad in Informatics (IOI)

Winning the IOI requires more than knowing how to code. Students who succeed are strong at algorithmic thinking, write efficient and accurate programs, and perform well under pressure. Here’s how you can prepare to compete at that level:

1. Understand mathematics and programming more deeply.

To perform well at the IOI, you need a strong foundation in both mathematics and programming. While IOI problems are solved by writing code, the real challenge is often understanding the mathematics behind the problem, not the coding itself.

Many IOI tasks are based on concepts such as probability, statistics, and number theory, as well as other areas of mathematics. Success depends on breaking down the math correctly and then applying the right algorithms and data structures to turn that reasoning into an efficient and correct program.

Before each competition, IOI publishes an official Syllabus that outlines the topics students are expected to know. Reviewing the Syllabus helps you understand the scope of problems and focus your preparation on the concepts most likely to appear.

Below are some of the topics included in the 2025 IOI syllabus:

Category

Topics
Mathematics

Functions, relations, and sets, basic logic, proof techniques, discrete probability

Computing Science

Distributed algorithms, basic computability, automata and grammars, cryptographic algorithms
Algorithms and Complexity (AL)

Algorithmic analysis, strategies, data structures, distributed algorithms, computability, complexity classes (P, NP), automata, grammars, geometric algorithms, parallel algorithms

Software Engineering (SE)

Software design, software evolution, software processes, specialized systems development
Computer Literacy

Computer structure and operation (CPU, memory, and I/O), graphical user interface usage, basic file management skills

2. Use official IOI resources.

Besides the Syllabus, the IOI publishes official materials to help students understand what to expect from the competition. These resources are designed to reflect the style, difficulty, and topics covered in IOI problems and are a reliable starting point for preparation.

These materials include past contest problems, official solutions, and recommended reading materials. Working through these helps you recognize common patterns, improve problem analysis, and understand how efficient solutions are built.

The IOI website also offers C++ tutorials and programming resources, which can help you implement algorithms correctly and prepare for IOI-level contests.

3. Practice under real contest conditions.

It isn’t glamorous, but the saying “practice makes perfect” really does apply here. IOI problems are highly complex, and students need to become very familiar with this style of problem well before the competition.

You’ll get the most out of practice by training under real contest conditions. One effective way to do this is by taking mock tests and solving past IOI problems at home using the same time limits as the actual competition.

Set a timer for about 5 hours and work through multiple difficult problems in one sitting, without taking breaks. This helps you manage your time, maintain focus, and adjust to the length of the Olympiad. You’ll find many practice problems available on the IOI website.

4. Stay mentally and physically prepared.

Competition day isn’t just about what you know but about how you feel. Get enough sleep and eat well before the contest to help you stay focused during long problem-solving sessions. A rested mind is better able to concentrate, manage stress, and think clearly under time limits.

At the same time, don’t forget to have fun! Remember, the IOI isn’t only about competition. Non-contest days include meeting students from around the world and learning about new cultures. Qualifying for and participating in the IOI is already a huge achievement, so take the time to appreciate the experience.

International Olympiad in Informatics (IOI) Previous Winners

Below is a look at the results of past Olympiads from the last ten years. These results list the absolute winners of each IOI and show the highest individual scores achieved each year, highlighting the level of performance required to place at the very top of the competition.

Year

Host Country and City Absolute Winner Country Represented Absolute Score

Relative Score

2015

Almaty, Kazakhstan Jeehak Yoon Republic of Korea 600 100%
2016 Kazan, Russia Ce Jin China 597

99.50%

2017

Tehran, Iran Yuta Takaya Japan 589.52 98.25%
2018 Tsukuba, Japan Benjamin Qi USA 499

83.17%

2019

Baku, Azerbaijan Benjamin Qi USA 547.09 91.18%
2020 Singapore (Online) William Lin USA 600

100%

2021

Singapore (Online) Mingyang Deng China 600 100%
2022 Yogyakarta, Indonesia Jiangqi Dai, Shaoxuan Tang China 600

100%

2023

Szeged, Hungary Tingqiang Xu China 580 96.67%
2024 Alexandria, Egypt Kangyang Zhou China 600

100%

2025

Sucre, Bolivia Hengxi Liu China 591.23

98.54%

The most recent winner, Hengxi Liu of China, achieved the top score at IOI 2025 in Sucre, Bolivia. Over the past several years, Chinese students have appeared frequently among the top finishers, highlighting China’s strong and consistent performance at the IOI.

Frequently Asked Questions

1. What is the age limit for the IOI?

To compete in the IOI, a student must be no older than 20 years old on July 1 of the competition year. There’s no minimum age requirement, as long as the student is enrolled in secondary school or lower and meets all other eligibility rules.

2. What skills are tested in the IOI?

The IOI mainly tests algorithmic problem-solving. Students must analyze complex problems, design efficient algorithms and data structures, write correct programs, and test their solutions carefully. Logical thinking and the ability to turn ideas into working code are both essential.

3. Is the IOI harder than ICPC?

The International Olympiad in Informatics (IOI) and the International Collegiate Programming Contest (ICPC) are challenging in different ways. The IOI focuses on individual algorithmic problem-solving, while the ICPC is a team-based contest with fewer problems and intense time pressure.

Because the formats are different, it’s hard to say one is strictly harder than the other. The difficulty depends on whether a student performs better in solo problem solving or team-based competition.

Takeaways

  • The International Olympiad in Informatics (IOI) is a top-level programming competition where students solve challenging algorithmic problems as part of a national team.
  • Students cannot register directly and must qualify through their country’s national selection process while meeting age and school enrollment requirements.
  • The next IOI will take place on August 9–16, 2026 in Tashkent, Uzbekistan.
  • Strong preparation includes mastering algorithms and data structures, using official IOI resources, practicing past problems, and training under real contest conditions.
  • Looking for support with IOI preparation and your college application? Work with an admissions expert to position your academic and competition experience effectively for selective colleges.

Leave a Comment

Your email address will not be published. Required fields are marked *

Sign up now to receive insights on
how to navigate the college admissions process.

Please register to continue

You need an AdmissionSight account to post and respond. Please log in or sign up (it’s free).