In OFDMA, the total available subcarriers are assigned to different users for simultaneous transmission. In case of an unsynchronized uplink OFDMA, each user has a different carrier frequency offset (CFO), which results in loss of orthogonality among subcarriers and causes severe intercarrier interference. In this paper, a self- successive interference canceller (self-SIC) algorithm is proposed for uplink OFDMA systems to mitigate both the self-intercarrier interference and multiuser interference resulting from carrier frequency offsets. We show that for a carrier allocation with larger blocksizes, the proposed compensation algorithm significantly reduces the implementation complexity without performance degradation.