In this paper, a fuzzy inference system for sleep staging was developed. Nine input variables including temporal and spectrum analyses of the EEG, EOG, and EMG signals were extracted and normalization was applied to these variables to reduce the effect of individual variability. A fuzzy inference system contains fourteen fuzzy rules was designed to classify the 30-s sleep epochs as five sleep stages. Finally, a smoothing process was applied to the scoring results for fine-tuning. The average accuracy of the proposed method applied to 16 all-night polysomnography (PSG) recordings compared with the manual scorings can reach 87 %. This method can integrate with various PSG systems for sleep monitoring in clinical or homecare applications.