Skip to main content Skip to secondary navigation

Email forwarding for is changing. Updates and details here.


BS | Frequently Asked Questions

Main content start


If your inquiries aren't addressed below, you are welcome to connect with any of the CS student services team that specializes in the Bachelor's program.

  1. What are the steps to declare the CS major and would you need to choose a track immediately? You do not need to choose a track immediately. To declare the CS major, students will need to meet with the course advisor ( to provide an unofficial transcript and completed declaration form. Once students submit those items, they will then declare the CS major in Axess. After receiving all materials, the CS Department student services team will review and approve the declaration in Axess. If students have any additional questions, they can refer to their course advisor. 
  2. What are the steps to declare the CS minor? Students will declare in Axess and the CS student services team will connect with them regarding next steps. The CS student services team will inform students that they need to complete a program sheet which will be an attachment to the electronic declaration form they need to submit. After the program sheet is reviewed, the CS student services team will approve the declaration in Axess.
  3. How do students choose a track and what are good courses to take as an introduction into the CS major? The Computer Science Department has each track synopsis detailed, which allows students to explore their options. Each program sheet describes course requirements which may vary depending on the year and track you are viewing. It's important to note that students can complete any program sheet starting from the academic year they matriculated into Stanford. Additionally, you can change your track as many times as you’d like, as long as you complete a program sheet before applying to graduate. The Department doesn't keep track of how many times you have changed your track, they just need to ensure they have the most up-to-date version of your program sheet when you are in consideration to graduate. 
  4. How does the double majoring process work with one of them being CS? If you are a student that is double majoring with CS as one of your majors, there will be courses that you can and can not double count towards both majors. The general rule is that Depth, Track, and Elective courses cannot be double-counted. If you have any questions, Darlene Lazar ( in the School of Engineering's Office of Student Affairs will be your best resource.
  5. What are the best practices for finding, choosing, and getting in touch with a CS major advisor? For undergraduates, your assigned or chosen faculty advisor can be a valuable resource for information on research opportunities and your general path. General questions about course selection should still go to the course advisor, but faculty members have a depth of experience and domain knowledge that can be a great utility. See a list of faculty available to advise CS undergraduates on the people page.
  6. Is it necessary to choose a CS major advisor before declaring the CS major or can one be automatically assigned to me? Students are welcome to choose their CS major advisor, however, it's not required. After you complete your major declaration, the CS course advisor will assign you to a major advisor.
  7. Do you declare the CS minor before you finish the requirements or once you have completed the courses? Students can declare the CS minor at any time. They will need to submit their program sheet with the units and courses they are planning to take or have already taken. The program sheet doesn't need to include the grades if the course has not been taken or completed yet.
  8. What is the process of petitioning or having exemptions from certain core classes? The petition process varies depending on the requirement you are requesting an exception. To ensure that you submit the proper petition, please review the Petitions/Deviations/Transfer Credits page for guidance. 
  9. Is there a list of already approved petitions for the CS major? There isn't a list of already approved petitions, however, if you have any questions regarding a course that you'd like to petition then you can connect with the CS student services team. 
  10. What's the process in applying to graduate? Does this application happen in the Spring? Students that are interested in applying to graduate must fill out a program sheet found on the Computer Science website. Once the program sheet is completed, submit it through our SmartSheet form for review. Once you receive approval, then students will apply to graduate in Axess. As a note, you should submit your program sheet early so that you can receive feedback and make any necessary changes to your plans if needed prior to the quarter you plan to graduate. 
  11. When will I receive confirmation that I am set to graduate? The Registrar’s office will send out a notification, confirming whether your degree has been awarded or not, to your Stanford email address the day after the official conferral of degrees.
  12. Can I take classes on my program sheet credit/no credit? All courses taken to satisfy major requirements (including the requirements for Mathematics, Science, Engineering Fundamentals, and Technology in Society) must be taken for a letter grade, if the instructor offers that option. A 2.0 minimum combined GPA (grade point average) for all courses in Engineering Fundamentals and CS Core, Depth, and Senior Project (combined) is required. For any individual course, a D-, is the minimum passing grade.
  13. When do I fill out a program sheet? Fill out a program sheet as soon as you are pretty sure you know what classes you are going to take to graduate. Once the program sheet is completed, submit it through our SmartSheet form for review. You can always fill out another program sheet if you change your mind about the courses you want to take. Having an approved one on file makes your life easier because you know your plan is approved for graduation. It also makes our student services teams lives a lot easier if you fill out your sheet early instead of waiting until the last minute. 
  14. Which program sheet should I use? You can use a program sheet from any year since the first year you enrolled at Stanford. However, you cannot mix requirements between program sheets. 
  15. How do I get transfer credit? In order to receive transfer credit for anything on the front side of the program sheet, you must petition through the School of Engineering. More information on the process is available from the undergraduate engineering handbookAnything on the back side of the program sheet requires the approval of the CS Department. To request an approval, email Jerry Cain ( that includes the Stanford class for which you are requesting credit, where and when you took the course, it's name and number, for how many units you took the course, a syllabus, and a textbook list.
  16. How do I get deviations to the program sheet approved? Any changes to the front of the program sheet must be approved by the School of Engineering. More information is available from the undergraduate engineering handbook. Changes to the back side of the program sheet are approved by the CS Department. Email the CS petitions committee ( with a description of the change you are requesting and a justification.
  17. Does cross-listed courses count towards program sheet requirements? Yes!
  18. Are undergraduate students eligible to be course assistants? No. Undergraduate students are not eligible to be course assistants, however, they are able to be section leaders. Section leaders are hired by the CS198 group.