Our general course recommendations can be found on our Recommendations page. A special note to parents whose students are finishing up Art of Problem Solving's elementary school curriculum, Beast Academy, can be found on this page.
If you are new to AoPS, you may have heard from other AoPS students and parents that our classes are very challenging. That's true. It's not unusual for students to struggle at first with this sudden increase in difficulty before hitting their stride and adjusting to the greater complexity of our curriculum. Our core curriculum may appear to parallel the standard prealgebratocalculus school curriculum, but our classes have much greater depth both in mathematical content and in problemsolving strategies. It's not unusual that an AoPS student who has already taken a course at his or her local school chooses to "retake" the samenamed course in our online school. This allows the student to explore some familiar topics indepth while learning new problemsolving strategies and developing their ability to think more creatively about math.
Our Prealgebra 1, Prealgebra 2, and Introduction to Algebra A courses are offered in both a standard format and a selfpaced format. See our Weekly Live or SelfPaced? page for help choosing between these formats.
On this page:
 Course Syllabi
 Pre and PostTests
 Contest Preparation Courses
 MathWOOT
 Science Courses
 Computer Science Courses
 Course Selection FAQs
Course Syllabi
Each of our Subject and Computer Science courseshas a syllabus that includes a brief description, as well as a few sample problems from the course.
Math Subject Courses
 Prealgebra 1
 Prealgebra 2
 Introduction to Algebra A
 Introduction to Counting & Probability
 Introduction to Number Theory
 Introduction to Algebra B
 Introduction to Geometry
 Intermediate Algebra
 Precalculus
 Intermediate Counting & Probability
 Intermediate Number Theory
 Calculus
 Olympiad Geometry
 Group Theory
Computer Science Courses
Science Subject Courses
Pre and PostTests
Each of our Subject and Computer Science courses has a pretest ("Are you ready?") and posttest ("Do you need this?") to help you determine which course will be the right fit.
Math Subject Courses
 Prealgebra 1: [Are you ready?] [Do you need this?]
 Prealgebra 2: [Are you ready?] [Do you need this?]
 Introduction to Algebra A: [Are you ready?] [Do you need this?]
 Introduction to Counting & Probability: [Are you ready?] [Do you need this?]
 Introduction to Number Theory: [Are you ready?] [Do you need this?]
 Introduction to Algebra B: [Are you ready?] [Do you need this?]
 Introduction to Geometry: [Are you ready?] [Do you need this?]
 Intermediate Algebra: [Are you ready?] [Do you need this?]
 Precalculus: [Are you ready?] [Do you need this?]
 Intermediate Counting & Probability: [Are you ready?] [Do you need this?]
 Intermediate Number Theory: [Are you ready?] [Do you need this?]
 Calculus: [Are you ready?] [No posttest]
 Olympiad Geometry: [Are you ready?] [Do you need this?]
 Group Theory: [Are you ready?] [No posttest]
Computer Science Courses
 Introduction to Programming with Python: [Are you ready?] [Do you need this?]
 Intermediate Programming with Python: [Are you ready?] [Do you need this?]
Science Subject Courses
 Introduction to Physics: [Are you ready?] [Do you need this?]
Contest Preparation Courses
For a comparison between the MATHCOUNTS/AMC 8 Basics and Advanced courses, please see our MATHCOUNTS/AMC 8 Basics vs. Advanced Guide.
The AMC 10, AMC 12, and AIME courses each list a suggested mathematical background and score range on the respective test below the "Who Should Take?" heading on each course's information page. If your child has not yet competed in any of these contests, you might have them try a few practice or past AMCs or AIMEs under test conditions to help determine which of the courses would be the best fit for them at this time. You can find past years' exams linked from this page. These pages on our usermaintained Wiki describe each of the test formats and scoring process, so that you can calculate an approximate score: AMC 10, AMC 12, and AIME.
MathWOOT
MathWOOT is designed for students preparing for math olympiads. Students enrolling in this course should be able to consistently score at least 5 on the American Invitational Mathematics Exam (AIME). The MathWOOT syllabus rotates each year and is linked on the MathWOOT information page.
Science Courses
Students enrolling in these courses should have an interest in science. For beginning scientists, our Introduction to Physics course will give a starting point to enter the world of physics. We recommend having taken Introduction to Algebra A or having the equivalent math knowledge to be successful in this course.
For physics students interested in preparing for physics contests, our F=ma Problem Series course focuses on classical mechanics as well as problemsolving strategies specific to the F=ma exam. Students can refer to this diagnostic test to see if they're ready for F=ma Problem Series.
For advanced scientists we have two advanced Olympiadlevel courses: PhysicsWOOT and ChemWOOT. Students enrolling in these courses should have a solid background in their respective domains. A student can build this background by selfstudying, or by taking a good Honors level or AP level course. To help decide if you're ready, we offer diagnostic tests for ChemWOOT and PhysicsWOOT.
Computer Science Courses
For students interested in learning programming we offer three courses in computer science. For budding computer scientists, our Introduction to Programming with Python is a first course in computer programming using the Python programming language. This course covers basic programming concepts such as variables, data types, iteration, flow of control, input/output, and functions.
For students with some computer science background, Intermediate Programming with Python explores intermediate programming concepts such as recursion, objectoriented programming, graphical user interfaces, and eventdriven programming.
For students with advanced computer science skills we have CodeWOOT, a 7month Olympiad training program, which prepares students for the USA Computing Olympiad. To help decide if you're ready, we offer a diagnostic test for CodeWOOT.
Course Selection FAQs
How old should I be to take a certain class?
Our courses do not have age restrictions. We work with many oustanding students, for whom their ages often do not tell us much about their content experience.For this reason, we base our recommendations on whatlevel of math or science students have already studied, rather than their numerical ages.
The AoPS online school offers classes beginning at Prealgebra 1, which is designedfor students who have completed an elementary school math curriculum (up through grade 5/6).If you're beyond Prealgebra 1, check out theRecommendations page page for some guidance aboutwhat class could be a good starting place for you. If you aren't quite ready for forPrealgebra 1, please see our recommendations here.
Parents, if you are concerned about enrolling your especially young student inone of our Prealgebra courses, note that our Prealgebra instructors are particularlymindful of the fact that their students are often new to online courses and even to typing.It's also fine if it takes a student time to adjust to the format of our online courses.Students can ask questions both in the live classes or on the course message board ifthey're not sure how a particular component of the course works.
What if I'm not ready for Prealgebra 1?
Students who aren't quite ready for Prealgebra 1 should consider our elementary curriculum,Beast Academy andBeast Academy Online.
As with all the curriculum developed by Art of Problem Solving, this series covers the corefundamentals and then goes well beyond these basics to present material at a deeper and morechallenging level than a typical math curriculum. You can use the preassessments onthis page to help you determine which level to start with.
A student who has completed the Beast Academy series through level 5D should be ready forAoPS Prealgebra 1.

Do I really need to take Intro Counting & Probability and Introduction to Number Theory?
While these subjects typically aren't covered in standard mathematics curricula, we consider it important for students to study discrete math subjects like counting & probability or number theory. We included Introduction to Counting & Probability in our core curriculum in particular because the material covered in that course is especially useful for "real world" math problems and for many areas of study beyond mathematics (such as computer science and statistics, which are in turn widely used in many other academic fields). You can read more about this in our Why Discrete Math is Important article.
We suggest that students take one or both of these courses after taking our Introduction to Algebra A course (or completing an Algebra 1 class elsewhere) as a way to reinforce their basic algebra skills while studying a different subject, before they move on to the more advanced algebra in Introduction to Algebra B. However, since the material in these classes are not prerequisite for the other core classes, students can take either or both of these courses at a later time, as their schedules allow.
What do I do if my class is way too easy or too difficult?
We want to make sure you're in the course that suits you best. If you feel that your class is much too difficult or too easy, please contact us at classes@aops.com, and we'll be glad to help you find the right class!
Also, for any online course that has at least five classes, our drop policy is that students can withdraw from the course at any point before the third class session for a full refund. So, you'll have two full weeks to make sure a class is right for you.
Do I need to take all the subject courses and contest courses?
The core curriculum highlighted in light green at the top of our Recommendations page provides a rigorous and complete curriculum on its own. This core curriculum parallels the standard prealgebratocalculus school curriculum, but in much greater depth both in mathematical content and in problemsolving skills.
We also encourage students to take other noncore courses (including other subjects courses, contestpreparation courses, science, or computer science courses) as their time and interests allow.