Computer Science Principles

Video thumbnail

Bring CS Principles to your school!

Computer Science Principles introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. More than a traditional introduction to programming, it is a rigorous, engaging, and approachable curriculum that explores many of the foundational ideas of computing so all students understand how these concepts are transforming the world we live in.

This year-long curriculum can be taught as an introductory class and as an AP course - no prerequisites required for students or for teachers new to computer science! In addition, our curriculum is available at no cost for anyone, anywhere to teach. And, professional learning opportunities are available!

Why should you teach CS Principles with

It's endorsed by the College Board. AP CSP Endorsed is recognized by the College Board as an endorsed provider of curriculum and professional development for AP® Computer Science Principles. This endorsement affirms that all components of's CS Principles offerings are aligned to the AP Curriculum Framework standards and the AP CS Principles assessment. This affords schools access to resources including an AP CS Principles syllabus pre-approved by the College Board’s AP Course Audit , and officially recognized professional development that prepares teachers to teach this curriculum.

It's backed by research.

Six different studies show: students who study computer science perform better in other subjects, excel at problem-solving, and are more likely to attend college.

Students who take AP Computer Science Principles, in particular, are 12% more likely to enroll in college compared to similarly-situated peers, and students who take AP exams are more likely to graduate 4-year college, regardless of their score on the exam. AP computer science students also earn better AP Calculus scores than comparable students who don’t take AP computer science.

CS Principles is designed for beginners.

Our team designed the CS Principles curriculum to support students and teachers new to the discipline. The curriculum includes daily lesson plans made up of inquiry-based activities, videos, assessments, and computing tools, allowing teachers to guide and learn alongside students as they discover core computing concepts.

Every lesson plan and activity is tested by a diverse mix of classrooms around the country to make sure it’s appropriate and engaging for all students.

Students learn about the challenges of supporting a giant network like the world wide web, while solving problems about encoding and transmitting data using the Internet Simulator.

Students get hands on experience with concepts like binary and pixels, text compression, cryptography, and more through computational widgets, which are directly integrated into the platform.

Using the JavaScript language, students learn about algorithms and program design as they create a series of real working, shareable apps with App Lab.


We support you every step of the way with extensive teacher resources.

Check out the Curriculum Guide to learn more about the classroom and student practices that flow throughout the class, overviews of each unit, implementation considerations, and guidance for navigating course tools and teacher resources.

The CS Principles curriculum page is where teachers can access daily lesson plans. Along with integrated discussion goals, teaching tips, and assessment opportunities, our lesson plans come with detailed pacing instructions, activity guides, required resources, and more!

Create and manage your classroom sections, check student progress, administer assessments, and integrate with your Google or Clever classroom, all from your Teacher Dashboard! (Sign in required.)


Our Professional Learning Program comes recommended by more than 100,000 teachers.

Video thumbnail

Interested in professional learning? Find out more!

Compared with similarly-situated schools, a school's participation in the Professional Learning program causes an estimated five-fold increase in the number of students that take, and earn qualifying scores on the AP Computer Science Principles exam. And teachers love it! Over 90% rank it the best professional development ever.

Whether you’re brand new to computer science or an experienced teacher looking for the best way to use the curriculum, our Professional Learning Program is a great way to get started.

Our approach to teaching programming: EIPM

Video thumbnail

Want to learn more about each lesson type? View our video playlist.

EIPM is a structured approach to teaching programming in CS Principles. It introduces concepts in a scaffolded and approachable way to encourage student collaboration, support independent creation, and clarify the role of the teacher throughout the learning process. Each letter represents a different type of lesson (E - Explore, I - Investigate, P - Practice, M - Make), which are taught in sequence for each major programming concept.

For more on the development of this lesson sequence, watch the video or read up on this introduction to EIPM.

“Can I just say I LOVE It's my first year teaching AP CS Principles (actually 1st year it is offered at our school) - and both the kids and I are having a blast.”
Jennifer Douglass, CS Principles Teacher

Getting started with CS Principles!

Stay connected

Let us know how we're doing

We are always looking for ways to improve our courses. If something's not quite working, or you have ideas about features that you'd like to see, we'd love to hear from you!

Subscribe for the latest news

Sign up for our monthly emails, which contain the latest news about tools, videos, and other important updates for CS Principles.

Chat about CS Principles in the forum

We have forums for educators to discuss and trade ideas about the CS Principles curriculum. forums are used for all of our courses, K-12.

Spread the word about CS Principles

Inspire students to enroll in CS Principles:

Video thumbnail

Play this video.

Send home these fliers.

Hang these posters in your classroom and around your school:

image image image image

Check out the full poster gallery for even more decorating options!

Frequently Asked Questions

For answers to our most frequently asked questions, click on the questions below!

Is CS Principles mapped to standards?

CS Principles was written using the AP CS Principles Framework and prepares students for the AP CS Principles exam. The curriculum has also been aligned to the newly revised 2017 CSTA standards. A summary of standards mappings can be found here. A google sheet version of the standards can be found at CSP Standards 2021.

How much does it cost to teach CS Principles?

Our curriculum and platform are available at no cost for anyone, anywhere, to teach!

How/Where can I get professional development for CS Principles?

Our Professional Learning Program offers year-round support. The program kicks off with a 5-day summer workshop where you'll have an opportunity to work hands-on with the curriculum and meet other teachers from your area. Throughout the year, we offer forum support and follow-up workshops. You don't need any prior computer science experience to get started. And teachers love it! 90% rank it the best professional development ever. Click here to apply and learn more.

Have questions about professional development? Provide your contact information to a Regional Partner in your area.

If you previously participated in the Professional Learning Program for CS Principles, your Regional Partner may be hosting a follow-up workshop to help support your transition to the new course. Please contact your Regional Partner for more details.

What is the recommended timing for teaching CS Principles?

We recommend that CS Principles be taught as a full year class, assuming that you meet with students daily or nearly daily for 45 or more minutes.

It is possible to teach CS Principles on a semester block schedule, though we highly recommend this implementation only be used in the fall semester. Since the AP Performance Tasks are due in late April and require 20 dedicated hours of class time to complete, most schools find there is not enough time to complete the course on a block schedule in the spring.

What materials do I need for CS Principles?

Required Materials:

CS Principles requires that students have access to computers with a modern web browser. At this time, our courses are not optimized for tablets or mobile devices. For more details, check out's technology requirements.

Many lessons have handouts that are designed to guide students through activities. While these handouts are not required, we highly recommend their use.

In addition to handouts, several lessons call for specific items. You can find these listed below as well as our suggestions for alternatives:

  • Unit 1, Lesson 2: Assortment of craft materials for constructing physical devices. Recommendations: cups, string/yarn, construction paper, flashlights, slinkies, noise makers, markers, and glue, etc. Alternative: none.
  • Unit 2, Lesson 2: String for table groups to build a network connecting them. Alternative: Students draw their network but don't actually build it.
  • Unit 3, Lesson 5: A handful of LEGO® blocks for every pair of students. Alternative: Sticky notes, construction paper.
  • Unit 4, Lessons 1 & 5: Plastic bags, sticky notes, dry erase markers. Alternative: Envelopes.
  • Unit 5, Lesson 1: Plastic bags, gallon-sized plastic bags, sticky notes, dry erase markers, tape. Alternative: Envelopes.
  • Unit 6, Lessons 2 & 3: Sticky notes. Alternative: Scraps of paper.
  • Unit 6, Lesson 4: Decks of cards. Alternative: Any item that could be combined into two categories (e.g. change with even / odd year).
  • Unit 7, Lessons 1 & 5: Sticky notes, envelopes, plastic bags, file folders. Alternative: Scraps of paper, folders made of a folded sheet of paper, etc.

Optional Materials

The following supplies are completely optional but will be useful to have on hand for various lessons:

  • Graph paper
  • Chart paper
  • Markers
  • Post-it notes

How can I access answer keys?

With an approved teacher account you can find answer keys in a blue "Teacher Only" panel that shows in the online lessons and activities.

Teachers in our Professional Learning Program will automatically be approved to view answer keys. If you need an approved teacher account, you can apply for access to protected teacher-only materials (answer keys, etc) through this form. Please keep in mind that it may take 3-5 business days to verify your account.

How was the curriculum developed?

Our CS Principles curriculum has always been designed as part of a broader vision of supporting high quality, engaging, and equitable computer science instruction in classrooms across the country. Our Curriculum Values continue to guide us, and in particular our focus on expanding access to those who historically have been denied opportunities to learn about the exciting and impactful field of computing.

While our vision and values remain unchanged, the landscape of CS education is rapidly developing. For the 2020-21 school year the College Board has made some significant updates to the CS Principles framework and AP assessment to ensure that CS Principles remains relevant and aligned with equivalent university courses. CS education research continues to reveal new insights on how students learn about computing, and feedback from the thousands of classrooms now using our CS Principles curriculum has identified opportunities to further improve our courses, tools, and recommended pedagogy. The goal of the updates to our curriculum is to navigate these developments in a way that remains committed to our vision and values and supports the many teachers, schools, classrooms, and districts that are already a part of our broader CS Principles community. We remain deeply thankful for you joining us on this mission to make our collective vision a reality.

For more information about our goals and approach to our courses, please see our curriculum values and our professional learning values.

Beyond CS Principles

Have some time after the AP Exam? Explore these exciting units which will expand your students' knowledge.

Creating Apps with Devices

Every day, we interact with devices that shape our world. In this unit, students will learn how to program devices to take in inputs and create new outputs.

AI and Machine Learning

Artificial intelligence (AI) and machine learning (ML) are shaping the world around us. As these technologies touch more and more of our daily lives, they have become an essential part of foundational computer science education. In this unit which spans roughly 5 weeks, students can learn the fundamentals of these technologies and discuss their ethical implications.

AP® is a registered trademark of the College Board.