This study investigated the use of code-switching by an English teacher in an EFL classroom at SMAN 3 Ponorogo. Code-switching is the alternation between two languages in a discourse. In Indonesian EFL classes, teachers use both English and Indonesian to deliver classroom instructions. The aims of the study were to explore the types of code-switching that the teacher used in the classroom and the teacher’s rationales in using each type. The researchers used a case study with a qualitative approach using classroom observation and an interview with the teacher. The data were analyzed using the interactive model of analysis, which includes data condensation, data display, and conclusion drawing/verification. Furthermore, the teacher’s code-switching utterances were classified using Poplack’s code-switching framework. The study found that the teacher used three types of code-switching: tag switching, inter-sentential switching, and intra-sentential switching. Intra-sentential switching was the most commonly used type, with more than half of the use, and tag switching was the least used type. The teacher employed code-switching to clarify instructions, introduce new vocabulary, explain complex concepts, enhance communication, and promote classroom engagement. The findings suggest that code-switching is a valuable scaffolding strategy for facilitating comprehension and participation for low-proficiency learners. The study highlights the importance of code-switching in building a meaningful English atmosphere for novice learners by providing them with understanding, gradual immersion, and a stress-free environment.