USACO
USA Computing Olympiad
Free, worldwide algorithmic contests on a four-division ladder, and the route to Team USA at the IOI.
Run by USA Computing Olympiad
Key facts
- Eligible grades
-
Pre-college students
USACO does not publish a grade range. The online contests are open to anyone with a free account. Training camp and USA team selection for the IOI are limited to US pre-college students.Source, checked 2026-09-01
- Official divisions
-
Four divisions by demonstrated skill rather than age: Bronze, Silver, Gold and Platinum. Everyone starts in Bronze, which assumes only basic programming, and is promoted by performance. Your division, not your grade, sets the difficulty you face.
Based on the organiser's own divisions.
- Eligible ages
-
Not confirmed. This organiser may set eligibility by grade rather than age. We do not convert one into the other.USACO publishes no age limits for the online contests.
- Individual or team
- Individual
- Where it runs
- Online · International
- Entry cost
- FreeUSACO states participation is free and open to all. A free usaco.org account is the only requirement.
- Registration deadline
- Set locally, not published as a single national date There is no registration deadline. You create an account and compete within any contest window. The binding constraint is the contest window itself, and the 2026-27 windows have not been published.
- Competition dates
- 2026-27 dates have not yet been published by USACO. For reference only, the 2025-26 season ran online contests on 9 to 12 January, 30 January to 2 February and 20 to 23 February, with the US Open on 28 March. Do not plan around those dates: USACO changed its structure in 2025-26, dropping the December contest that older guides still describe, and making the US Open a proctored in-person invitational whose results are the primary basis for training camp invitations.
- Difficulty
- CompetitiveSerious preparation over a season. Advancing past the first round separates prepared students from unprepared ones.
- Prizes
- Promotion, finalist status and IOI team selectionNo cash prizes. The pathway leads to a training camp and selection for the US team at the International Olympiad in Informatics.
What USACO is
USACO runs a season of algorithmic programming contests in four divisions: Bronze, Silver, Gold and Platinum. You are given a small set of problems, you write programs that solve them, and an automated grader scores your submissions out of 1000 against hidden test cases. It is free, open to students anywhere in the world with only a free account, and it is the single most recognised programming credential a pre-college student can hold.
How the competition works
Web-based algorithmic programming contests during the academic year, usually four in total from December through early spring. A normal contest runs four continuous hours; the US Open runs five. You may schedule that block anywhere within a Friday-to-Monday contest weekend, and your timer starts when you log in and download the problems. The final contest, the US Open, carries more weight and serves as the national championship exam.
Eligibility notes
The online contests are open to anyone from any country at no cost. Training camp and selection for the USA IOI team are limited to US pre-college students.
Is USACO right for you?
- Experience needed
- You must already program. Bronze assumes you can write loops, arrays and functions unaided.
- Time commitment
- Months. Promotion through divisions is measured in seasons, not weeks.
- What you actually do
- A four-hour window you start when you choose, three problems, solutions judged automatically against hidden test cases. You get instant feedback and no partial credit for elegant code that fails a case.
A good fit if
- You already code and want a rigorous ladder
- You want something completely free and open worldwide
- You are willing to study algorithms systematically
Probably not for you if
- Complete beginners, who should learn a language first
- Students who want a team or project format
Common mistakes
- Learning algorithms without solving problems. USACO rewards implementation speed, not theory.
- Ignoring the certified-score rule: Gold and Platinum promotion requires starting at the published time.
- Skipping the official training pages in favour of random practice sites.
How to register
- Create a free account at usaco.org. That is the entire registration process.
- Read the rules page before your first contest. Generative AI and pre-written templates are banned and violations carry a lifetime ban from all USACO activities.
- Practise on the free archive of past problems first so the submission system is familiar.
- During a contest window, click through from the homepage and start when you are ready. Your timer starts the moment you open the problems.
- For Gold and Platinum, start at 12:00 ET on the Saturday if you want a certified score.
What skills you need
- C++, Java or Python
- Sorting and searching
- Graph algorithms
- Dynamic programming
- Complexity analysis
- Debugging under time pressure
Recommended resources
-
USACO official site and problem archive
Registration, rules, the season schedule, and years of past problems with official analyses and a live judge.
-
USACO Guide
A free, community-built curriculum organised by division, with ordered modules and practice problems. The standard starting point.
-
USACO training pages
The original official training programme. Older in style but still the recommended first pass through the fundamentals.
-
Codeforces
Frequent short contests. Useful for volume once you are past Bronze, though the problem style differs from USACO.
-
Competitive Programmer's Handbook by Antti Laaksonen
Free PDF covering the full Silver to Platinum algorithm syllabus clearly and concisely.
Past problems and materials
Only materials the organiser or an authorised archive publishes openly are listed here.
- Complete USACO contest archive with official analyses
Every past contest, free, with solutions and the ability to submit code for judging.
- CSES Problem Set
Free 300-problem set covering the standard algorithm syllabus, widely used alongside USACO practice.
Helpful videos
- William Lin, competitive programming
Screencasts of contest solving by a former IOI medallist. Watching someone think in real time is the fastest way to learn contest pacing.
- Errichto
Algorithm lectures and contest analysis pitched at Silver through Platinum.
Frequently asked questions
Is USACO free?
Yes, completely. The online contests are free and open to students anywhere in the world; a free account on usaco.org is the only requirement. Only the training camp and USA IOI team selection are restricted to US pre-college students.
What language should I use?
C++ is the most common choice for speed and its standard library, but Java and Python are fully supported. Bronze and Silver problems are reliably solvable in Python; at Gold and Platinum the time limits start to favour C++.
How long does it take to reach Gold?
There is no fixed answer, but a student starting with solid programming ability and studying consistently commonly takes a season or two. Students who start in the off-season and work through the official training material in order progress considerably faster than those who begin in December.
Can I use AI tools to help during a contest?
No. Generative AI and pre-written templates are explicitly banned, you must work alone, and violations carry a lifetime ban from all USACO activities. Read the rules on usaco.org before your first contest.
Reviews, tips and resources from other students
Posts are public. Do not share your full name, school, address or contact details.
Something out of date?
If a deadline, fee or eligibility rule on this page no longer matches the official site, flag it and it goes into the review queue.
You might also look at
- Grades6 to 12
- CostFree
- FormatEither
- WhereOnline
- Grades1 to 12
- Cost$125 to $175
- Grades6 to 12
- CostFree
- Grades7 to 12
- CostUp to $20