Accurate estimation of power system frequency is essential for monitoring and operation of the smart grid. Traditionally, this has been done using discrete Fourier transform (DFT) coefficients of the positive fundamental frequency. Such DFT-based frequency estimation has been used successfully in phasor measurement units and frequency disturbance recorders in North America. Frequency errors in DFT-based algorithms for single-phase signals arise mainly due to noise and the leakage effect of the negative fundamental frequency. In this paper, a DFT-based frequency estimation algorithm is proposed to introduce three digital filters for reduction of estimate error due to noise and the leakage effect. This algorithm calculates the frequency estimate from the magnitude ratios of DFT coefficients to avoid the leakage effect. It compensates the estimate error, which is induced from the DFT magnitude ratios of three filtered outputs. The enhancement of signal-to-noise ratios is verified through simulations.