Computer Science · Middle school / High school · US

USA Computing Olympiad

USACO is the programming credential that US STEM admissions officers know best and that is hardest to fake: divisions are public, judging is automatic, entry is free and open, so the result speaks entirely for itself. In an applicant pool as crowded as Irvine's, simply saying a student "can code" carries no weight, while a Gold or Platinum division instantly places them among the few thousand strongest pre-college algorithmists in the country. For students targeting top CS programs (MIT, CMU, Stanford, UC Berkeley EECS, or UCI's ICS honors track), the USACO division is effectively a line reviewers look for by default.

USA Computing Olympiad
2026-27Latest season

Photo: Syirwan Ainu / Pexels

  1. Registration opensTBA
  2. Registration deadlineTBA
  3. Contest datesTBA
  4. ResultsTBA

Dates not yet published for this season; check the official site. · usaco.org

Organizer
USA Computing Olympiad (USACO)
Eligibility
The online contests and training pages are open to anyone worldwide, of any age, who registers an account. However, only pre-college (K-12) students studying in the USA can qualify as finalists, be invited to the spring training camp, and compete for a place on the US IOI/EGOI teams. There is no minimum grade level, so middle schoolers can start in the Bronze division.
Format
A fully online, self-scheduled algorithmic programming contest. A season normally has three online contests plus a proctored spring US Open. Each contest opens a window of roughly three to four days; within that window a competitor picks their own contiguous 4-to-5-hour block and solves 3-4 algorithmic problems. Submissions are auto-judged on hidden test cases. C, C++, Java and Python are supported, with a 2-second per-test-case limit for C/C++ and 4 seconds for Java/Python. Competitors sit in one of four divisions (Bronze, Silver, Gold, Platinum) and are promoted on strong results, with an immediate in-contest promotion for a perfect score. Discussing problems, using generative AI, or using pre-written template code is banned and carries a lifetime ban.
Fees
Completely free. The official site states plainly that there is never any fee for participation.
Awards
Each contest publishes scores and division standings; reaching the cutoff promotes a competitor from Bronze to Silver, Gold and finally Platinum, and promotions have traditionally carried across seasons. After the US Open, the strongest US pre-college students are named Finalists and invited to the spring training camp, from which the US teams for the International Olympiad in Informatics (IOI) and EGOI are selected. For college applications the recognizable tiers are Gold, Platinum, and Finalist.

About the competition

USACO is run by the USA Computing Olympiad and is the most credible pre-college algorithmic programming competition in the United States, as well as the single selection path to the US team for the International Olympiad in Informatics. A season usually runs from winter through spring with three online contests plus a proctored US Open.

Everything happens online: within each contest window a student chooses their own contiguous four-to-five-hour block, solves three or four problems, and submits C, C++, Java or Python code that is auto-judged on hidden test data. Four divisions create a clear difficulty ladder. Bronze rewards careful brute force, simulation and basic data structures.

Silver adds sorting, binary search, prefix sums, union-find and elementary graph traversal. Gold demands dynamic programming, shortest paths and tree algorithms. Platinum reaches advanced data structures, heavy DP, number theory and game theory. A perfect score promotes a student mid-contest, and promotions generally persist across seasons, so progress compounds year over year.

As a pathway, younger students can build computational thinking through Bebras, learn contest mechanics and number-system fundamentals through ACSL, then move to USACO in high school alongside AP Computer Science A. The strongest Platinum competitors are invited to the spring training camp and can earn a place on the US IOI team.

How to prepare

  • Settle the language before the algorithms. Almost all high scorers use C++ because it gets the most generous time limits and is the only language supported at IOI. If a student started in Python, migrate to C++ before Silver, or the time limits will block progress beyond Gold.
  • Practice by division rather than chasing hard problems. In Bronze, focus on reading problems precisely, writing clean brute force and handling edge cases. In Silver, drill sorting plus binary search, prefix sums, union-find and BFS/DFS, doing 15-20 past official problems per topic and simulating full four-hour contests.
  • Build the habit of writing the brute force first and then optimizing, and test with small self-generated data. USACO awards partial credit per test case, and partial points often decide promotion, so a small stress-testing script raises reliability enormously on contest day.
  • Treat the season as cumulative: build fundamentals over the summer, train intensively in the fall, compete in winter. Because promotions carry across seasons, starting Bronze early leaves time to reach Gold or Platinum before application season.

Frequently Asked Questions

Can a middle schooler in Irvine do USACO?

Yes — eligibility does not depend on school or district. The USACO online contests have no age or grade restriction, and many students start in Bronze during middle school; even without a school club, a student can register directly on the USACO site. Only pre-college students studying in the USA can be named Finalists, attend the spring training camp, and compete for a spot on the US IOI or EGOI team.

How does promotion between USACO Bronze, Silver, Gold and Platinum work?

Each contest is scored out of 1000. Afterwards USACO sets a cutoff based on how hard that contest turned out — in recent seasons usually between 650 and 850 — and anyone at or above it moves up a division. A perfect score triggers immediate in-contest promotion, so you can keep going at the higher level that same day. There is no demotion. Promotions have traditionally carried across seasons, but USACO notes the policy can change, so check the current rules each year. For an Irvine student, this pacing lines up naturally with AP Computer Science A at school: build Bronze and Silver skills outside class time, then push for Gold in the later high school years.

Should my child use Python or C++ for USACO?

Python is fine for Bronze and clears most Silver problems, but Gold and Platinum effectively require C++. Python and Java do get double the time limit — 4 seconds per test case versus 2 for C and C++ — yet the constant-factor gap still causes timeouts at the higher divisions. The practical advice is to switch to C++ before pushing for Gold. USACO officially supports C, C++, Java and Python.

How long does it take to go from beginner to USACO Platinum?

USACO publishes no timeline and it varies enormously. A realistic pattern for a student with solid coding fundamentals is one to two seasons to reach Silver, another one to two to reach Gold, and typically three-plus seasons of sustained training for Platinum. Because a season only offers three online contests plus the US Open, starting Bronze early gives far more chances before application season.

Is USACO Bronze worth much on an Irvine student's application?

Only marginally. Bronze signals entry-level competence and carries little weight on its own for competitive CS programs. Silver starts to register, Gold is generally treated as a genuine plus for UC system engineering and CS programs, and Platinum or Finalist status puts a student in the national top tier. Competition for programs like UC Berkeley EECS or UCI's ICS honors track is intense, so if Bronze is where a student is, present it as part of a broader coding narrative rather than as a headline award.

How should an Irvine student schedule around USACO?

Not at the time we checked — the USACO contests page still listed only the 2025-26 schedule; the 2026-27 dates are not out yet. The recent pattern is three online contests in winter plus a proctored US Open at the end of March, and in 2025-26 those fell on January 9-12, January 30-February 2, February 20-23, and March 28. Each contest window lets a competitor pick their own continuous four-to-five-hour block, so check the confirmed dates at usaco.org and place that block outside AP exam week at school.

Does USACO cost anything for Irvine students, and do we need a school CS club?

It is completely free — the official rules state there is never any fee for participation. No school, teacher or club involvement is needed either: a student registers an account at usaco.org and, during the three-to-four-day contest window, picks their own continuous four-to-five-hour block to compete from home. Only the spring training camp is invitation-only.

Can you look things up or use ChatGPT during a USACO contest?

No. USACO rules require you to work entirely alone. Discussing problems with anyone, using generative AI such as ChatGPT or Copilot, and using pre-written template code are all prohibited; during the contest you may consult only official documentation for your programming language. The penalty is severe — the rules state violations can carry a lifetime ban.

Train for it with EDUBUSUSA AI Olympiad SprintAdvanced prep for USAAIO and other top AI competitions, grades 9 to 11, taught in small in-person classes based in Irvine alongside regular coursework.Learn More →

Preparing for USACO? Start with a 30-minute call

Share the grade and the goal. An Irvine-based course advisor reaches out within one business day with a first, actionable course and study plan. Direction first, courses later.

  • EDUBUS WeChat QR code, WeChat ID EDUBUSer
    Scan to reach a course advisor on WeChatHotline: (949) 383-4877WeChatEDUBUSerCopy the ID and add a course advisor in WeChat

We reply within one business day. Your details are used only for this consultation. By submitting you confirm you have read our privacy policy.