A method for evaluating multi-level cognitive load, on a user, corresponding to a stimulus, the method comprising: receiving electroencephalogram data of the user from an EEG device, wherein the EEG data is generated corresponding to the stimulus, wherein the stimulus corresponds to one or more mental tasks performed by the user, and the stimulus impart a plurality of levels of cognitive load, and wherein the EEG data comprise signal range variation for the same user for different experiments, wherein the signal range variation occurs due to spatial shift in positioning of leads of the EEG device from one experiment to another experiment; splitting the EEG data into a plurality of slots, wherein a slot of the plurality of slots comprises a subset of the EEG data, wherein each slot of the EEG data is corresponding to a predefined time span; extracting one or more EEG features from the subsets of the EEG data, wherein the one or more EEG features are represented in one of a frequency domain and a time domain; and grouping a plurality of data points present in the one or more EEG features into two or more clusters using an unsupervised learning technique, and labeling the two or more clusters using the one or more EEG features corresponding to a cluster center to determine a plurality of levels of the cognitive load, wherein the two or more clusters comprise one or more data points of the plurality of data points, wherein the one or more EEG features extracted are grouped into the two or more clusters based on similarity of the one or more data points, wherein the one or more data points are grouped into the two or more clusters to partition the one or more data points into non-overlapped clusters to determine the cluster center, and wherein the one or more data points correspond to the plurality of levels of the cognitive load, thereby evaluating the plurality of levels of cognitive load on the user corresponding to the stimulus, wherein the receiving, the splitting, the extracting, the grouping and the labeling are performed by a processor using programmed instructions stored in a memory. receiving electroencephalogram data of the user from an EEG device, wherein the EEG data is generated corresponding to the stimulus, wherein the stimulus corresponds to one or more mental tasks performed by the user, and the stimulus impart a plurality of levels of cognitive load, and wherein the EEG data comprise signal range variation for the same user for different experiments, wherein the signal range variation occurs due to spatial shift in positioning of leads of the EEG device from one experiment to another experiment; splitting the EEG data into a plurality of slots, wherein a slot of the plurality of slots comprises a subset of the EEG data, wherein each slot of the EEG data is corresponding to a predefined time span; extracting one or more EEG features from the subsets of the EEG data, wherein the one or more EEG features are represented in one of a frequency domain and a time domain; and grouping a plurality of data points present in the one or more EEG features into two or more clusters using an unsupervised learning technique, and labeling the two or more clusters using the one or more EEG features corresponding to a cluster center to determine a plurality of levels of the cognitive load, wherein the two or more clusters comprise one or more data points of the plurality of data points, wherein the one or more EEG features extracted are grouped into the two or more clusters based on similarity of the one or more data points, wherein the one or more data points are grouped into the two or more clusters to partition the one or more data points into non-overlapped clusters to determine the cluster center, and wherein the one or more data points correspond to the plurality of levels of the cognitive load, thereby evaluating the plurality of levels of cognitive load on the user corresponding to the stimulus, wherein the receiving, the splitting, the extracting, the grouping and the labeling are performed by a processor using programmed instructions stored in a memory.