The purpose of conducting this study is to find out the kinds of code mixing and code switching used by teacher and students in English class and some factors that make the teacher and students use code mixing and code switching in English class. This research used qualitative method. The researcher use basic technique in analyzing the data which are recording the entire content, transcribing the utterances, classifying and organizing the data, grouping data and the last is analyzing data. Based on the data found by the researcher, the result of the research shows 4 types of code mixing and code switching namely outer code mixing (English with Indonesia and Indonesian with English) and external code switching (English into Indonesian and Indonesian into English). There are 51 utterances total of code mixing and switching in English class. And some factors that make they use code mixing and switching because the teacher often found out that the students confused or did not understand, the students lack of vocabulary and English knowledge, feel afraid of being wrong in using English and they are not used to talking only in English.