A method of operating a non-volatile memory device changes a read voltage by determining a degree that threshold voltages of memory cells are changed and overlap each other. The method of operating the non-volatile memory device includes performing a least significant bit (LSB) program of memory cells and determining a first error rate, performing a most significant bit (MSB) program of the memory cells and determining a second error rate, and setting a read voltage corresponding to a value at which the first and second error rates are minimum values.