CHS-P1 logo
Focused certification exam prep
Start practice

CHS-P1 Cheat Sheet 2026: One-Page Review of Must-Know Facts

TL;DR
  • The exam is 45 multiple-choice questions in 90 minutes, and you need 60% to pass.
  • Seven official topic groups cover everything: from Data Types and Operators through Lists and Strings.
  • Each voucher buys exactly one attempt; retakes are unlimited but each needs another voucher.
  • A Python reference sheet is provided, but external websites and running code elsewhere are prohibited.

The CHS-P1 Exam on One Page

Key Takeaways

  • The exam is 45 multiple-choice questions in 90 minutes, and you need 60% to pass.
  • Seven official topic groups cover everything: from Data Types and Operators through Lists and Strings.
  • Each voucher buys exactly one attempt; retakes are unlimited but each needs another voucher.
  • A Python reference sheet is provided, but external websites and running code elsewhere are prohibited.
  • Results arrive within 36 hours on school days, and certificates expire after 10 years.

This page condenses what you need to know about the CodeHS Python Level 1 Certification into a single scannable review. CHS-P1 here means the CodeHS credential specifically, not Python Institute's PCEP, a course-completion certificate, or a teacher microcredential. If you are weighing whether to sit for it, start with the facts below, then branch out to deeper guides such as the CHS-P1 study guide and the complete guide to all 7 content areas.

Every fact in this cheat sheet comes from CodeHS's published certification materials, last reviewed October 5, 2026. Where CodeHS has not published a number, this article says so rather than guessing.

Format, Scoring, and Timing Facts

ItemWhat CodeHS Specifies
Issuer and platformCodeHS (Python Level 1 Certification)
Question count45 multiple-choice questions
Time limit90 minutes, completed in one sitting
Passing score60%
DeliveryOnline, at home or at school, with teacher or authorized proctor monitoring
Question selectionRandomly selected questions
Reference materialPython examination reference sheet provided
PrerequisitesNone required; Introduction to Python Programming is recommended preparation

Do the arithmetic once so it does not distract you on exam day: 45 questions in 90 minutes gives you an average of two minutes per question. For a code-tracing item that is generous, which means pacing is rarely the main risk. Careless reading is. For a closer look at the cutoff, see exactly what you need to pass.

Passing score is not a pass rate: The 60% figure is the score a candidate must reach. It is not the share of candidates who pass. CodeHS has not published an official pass rate, and no scored versus unscored item split has been verified. Treat any pass-rate number you see elsewhere with suspicion; our pass rate analysis explains what the available data does and does not show.

Vouchers, Retakes, and Expiration

The money side of CHS-P1 is handled through vouchers rather than a public price tag. CodeHS provides school and district voucher pricing by direct quote, and no public numeric fee was verified for this review. That means you should not trust a specific dollar figure unless it comes from your school or from CodeHS itself. The certification cost breakdown covers how to approach pricing questions.

Voucher Mechanics to Remember

  • Each purchased voucher permits one attempt.
  • Retakes have no numerical limit, but every additional attempt requires another purchased voucher.
  • Unused school or district vouchers expire at the end of the contract term.
  • Vouchers do not roll over between school years, so a teacher with leftover vouchers cannot bank them for next year.

The practical takeaway is that a failed attempt has a real cost to your school or district, which is why preparing before you test is worth the time. Because vouchers lapse with the contract, scheduling matters too. Check your teacher's timeline against your own readiness, and see exam dates and scheduling for how to plan around it. Eligibility questions are answered in the requirements guide.

Exam-Day Rules and Focus Mode

CHS-P1 is proctored through the CodeHS Certifications app and Proctor Dashboard, with a teacher or authorized proctor monitoring. You can test at home or at school. The exam relies on an Honor Code, randomized question selection, and a feature called Focus Mode.

What Focus Mode actually does: Focus Mode blocks navigation to other CodeHS pages during the exam. CodeHS does not describe it as a system-wide browser lockdown. Do not assume it will stop you from doing something prohibited, and do not assume it makes rules optional. The rules below apply regardless.

Allowed

  • The provided Python examination reference sheet
  • Paper, a pencil, and a calculator (all suggested by CodeHS)
  • Extended-time and read-aloud accommodations, which are supported

Prohibited

  • External websites
  • Collaboration with anyone else
  • Copying or sharing exam questions
  • Running code in another website or program

That last item matters for a Python exam. You cannot paste a snippet into an online interpreter to check your answer, so you need to be able to trace code by hand. Practice that skill with paper and pencil, because it is the skill the exam actually tests. Accommodation requests beyond extended time and read-aloud require platform review, so raise them with your teacher well ahead of test day.

The Seven Exam Domains at a Glance

CodeHS lists seven top-level topic groups in its exam overview. These are official exam-topic groups, not course-module counts and not a percentage-weighted blueprint. CodeHS has not published domain weights, so avoid any source that claims to know how many questions come from each area. For the full breakdown, read the domains guide.

Domain 1: Data Types and Operators

The foundation for everything else. Know how Python values behave and how operators combine them.

  • Distinguish integers, floats, strings, and booleans
  • Arithmetic, comparison, and logical operators
  • Order of operations and the difference between / and //
  • Type conversion with int(), float(), and str()

Domain 2: Conditionals

Decision-making with if, elif, and else.

  • Which branch runs when multiple conditions are true
  • Combining conditions with and, or, and not
  • Nested conditionals and indentation as structure

Domain 3: Loops

Repetition with for and while, including the keywords that alter loop flow.

  • How many times a loop body executes, especially with range()
  • Loop control, including continue, which the overview expressly includes
  • Spotting infinite loops and off-by-one errors

Domain 4: Program Structure

How code is organized into reusable pieces.

  • Defining and calling functions
  • Parameters versus arguments, and return values versus printed output
  • Variable scope: what a function can and cannot see

Domain 5: Error Handling

Recognizing and managing problems in running code.

  • Reading what an error message is telling you
  • Telling apart common error categories in Python
  • Using try and except to keep a program from crashing

Domain 6: Lists

Ordered collections, including nested ones. The overview expressly covers one- and two-dimensional lists, list methods, indexing, and slicing.

  • Zero-based indexing and negative indexes
  • Slicing with start, stop, and the exclusive end
  • Methods that change a list versus methods that return a new value
  • Accessing items in a two-dimensional list with grid[row][col]

Domain 7: Strings

Text handling, which shares indexing and slicing logic with lists.

  • Indexing and slicing strings
  • String methods and what they return
  • Concatenation, repetition, and the fact that strings are immutable

Code Patterns Worth Memorizing

The reference sheet helps, but speed comes from recognizing patterns on sight. These are the ones that show up again and again in Python Level 1 material.

Slicing Cheat Sheet

For any list or string x, x[a:b] starts at index a and stops before index b. Leaving a side blank means "from the beginning" or "to the end." A negative index counts from the end, so x[-1] is the last item. Because the stop index is excluded, the length of x[a:b] is b - a when both are in range.

Loop Counting

range(n) produces 0 through n - 1, giving exactly n iterations. range(a, b) starts at a and stops before b. When a question asks how many times a loop runs, count iterations rather than looking at the final value.

Two-Dimensional Lists

The first index selects the row and the second selects the column. A nested loop usually has the outer loop walking rows and the inner loop walking items within each row. If a question prints inside the inner loop versus after it, the output shape changes completely.

Return Versus Print

A function that prints does not hand a value back. If code assigns the result of such a function to a variable, that variable holds None. Questions about program structure often hinge on exactly this distinction.

Key Takeaway

Because you cannot run code during the exam, rehearse tracing on paper: write the variable values after every line. Candidates who trace methodically catch the off-by-one and mutation traps that rushed readers miss.

Common Traps in Python Multiple-Choice Questions

Multiple-choice Python questions rarely ask you to recall a definition in isolation. They show a short program and ask what it outputs, which line causes a problem, or which snippet achieves a goal. The wrong answers are usually plausible results of a specific misunderstanding. Learn the misunderstandings and you can eliminate distractors quickly.

  • Mutating versus returning: Some list methods change the list in place and return nothing useful, so assigning their result to a variable gives None. String methods, by contrast, return a new string and leave the original untouched because strings are immutable.
  • Exclusive stop index: The end of a slice and the end of a range() are both excluded. Many wrong answers are the right answer plus or minus one item.
  • Integer versus float division: / always produces a float, while // floors the result. A distractor often differs only in a trailing .0.
  • Condition ordering: In an if/elif chain, only the first true branch runs. Reordering conditions can change the output even when the conditions look equivalent.
  • Misplaced indentation: Python uses indentation to define blocks, so a line inside versus outside a loop or conditional changes behavior entirely.
  • Using continue versus ending the loop: continue skips the rest of the current iteration but keeps looping. Do not confuse it with stopping the loop altogether.
  • Type mismatches: Combining a string and a number with + raises an error unless one is converted first. Questions in the Data Types and Error Handling areas lean on this.

For a candid look at how demanding these items feel in practice, see how hard the CHS-P1 exam is.

Scheduling Your Review Around the Domains

If you have a few weeks, order your review by dependency rather than by the order topics appear on a list. Lists and Strings reuse indexing and slicing logic, loops depend on conditionals, and Error Handling is easier once you have seen real programs. One reasonable arrangement is below; adjust it to your own gaps.

Week 1

Data Types, Operators, and Conditionals

  • Drill operator precedence and type conversion until predictions are automatic
  • Trace if/elif/else chains with overlapping conditions
Week 2

Loops and Program Structure

  • Count iterations for range() variants and loops using continue
  • Practice return-versus-print and scope questions
Week 3

Lists, Strings, and Error Handling

  • Work slicing and two-dimensional list indexing by hand
  • Sort string and list methods into "changes in place" and "returns a new value"
  • Match common errors to the code that causes them
Week 4

Mixed Review Under Time

  • Take a full timed run of 45 questions in 90 minutes
  • Rework every miss by tracing it on paper

Introduction to Python Programming is the recommended preparation, and CodeHS also lists a matching Level 1 Certification Practice course in its practice catalog. Neither one defines extra exam domains; they are practice resources. For a fuller plan, the study guide expands this outline, and you can test yourself on the CHS-P1 practice test site to find weak domains before you spend a voucher.

Results, Certificate, and Where It Fits

CodeHS releases results within 36 hours on school days. You receive an overall score plus a topic-level performance report, which is useful if you need to retake because it shows which of the seven areas to rebuild. Successful candidates receive a downloadable certificate, and earned certificates expire after 10 years.

After the ExamWhat to Expect
Result timingWithin 36 hours on school days
Score detailOverall score and topic-level performance report
If you passDownloadable certificate, valid for 10 years
If you do not passRetake allowed with no numerical cap; each attempt needs a new voucher

As an entry-level credential, CHS-P1 signals that a student can read and write foundational Python, which is most relevant for school-based pathways, portfolios, and college applications in computing. CodeHS has not published salary or hiring data tied to this certificate, so treat any earnings claim skeptically. The worth-it analysis weighs the value honestly, and the salary guide explains what can and cannot be said about pay.

One-line identity check: This is the CodeHS Python Level 1 Certification. It is not Python Institute PCEP, and its syllabus is not the same as any other Python credential's. If a resource mentions different fees, exam dates, or domain weights, it is probably describing a different exam.

Frequently Asked Questions

How many questions are on the CHS-P1 exam and how long do I have?

The exam has 45 multiple-choice questions and a 90-minute time limit. It must be completed in one sitting, so plan for an uninterrupted block of time.

What score do I need to pass?

You need 60%. That is a score threshold, not a pass rate, and CodeHS has not published an official share of candidates who pass.

Can I use outside resources or run code during the test?

No. External websites, collaboration, sharing exam questions, and running code in another website or program are prohibited. You do get a Python examination reference sheet, and CodeHS suggests paper, a pencil, and a calculator.

What happens if I need to retake it?

There is no numerical limit on retakes, but each attempt requires another purchased voucher. Unused school or district vouchers expire at the end of the contract term and do not roll over between school years.

Do I need a prerequisite course before testing?

No. There are no certification prerequisites. Introduction to Python Programming is recommended preparation, not an eligibility requirement. See the requirements guide for details on who can test.

Use this cheat sheet as your checklist, then pressure-test your knowledge with timed questions on the practice test site so that the rules, the format, and the seven domains all feel familiar before you start your single attempt.

Ready to pass your CHS-P1 exam?

Put this into practice with free CHS-P1 questions across every exam domain.