A fast Fourier transform (FFT) is an efficient algorithm for computing the discrete Fourier transform (DFT) of a finite sequence. The DFT expresses the sequence in terms of frequency components; an FFT computes that same transform with fewer operations than direct calculation. In short, the DFT is the mathematical transform, while an FFT is a family of algorithms for calculating it efficiently.
What does a fast Fourier transform do?
A DFT takes a finite set of sampled values—such as measurements from a digitized signal—and calculates how much of each frequency is represented in those samples. An FFT produces the DFT results; it does not define a different transform or a different kind of spectrum. IEEE describes an FFT as a way to compute the DFT with fewer arithmetic operations: IEEE Technology Navigator: FFT.
As an Amazon Associate I earn from qualifying purchases.
The term “fast Fourier transform” refers to a family of algorithms. The best-known family, Cooley–Tukey, exploits patterns in the DFT’s complex exponential calculations to break a large computation into smaller ones.
Why is an FFT faster than direct DFT calculation?
In a direct calculation, each of the N output frequency values depends on the input sequence, so the amount of work grows roughly with N squared: O(N²). Common FFT methods reduce that growth to O(N log N). These are asymptotic operation counts, not a guarantee of a particular speedup in seconds on every device or for every input size. MIT OpenCourseWare summarizes the definition as “A fast Fourier transform (FFT) is an O(N log N) algorithm to compute the discrete Fourier transform”: MIT OpenCourseWare, Week 14.
#1 Best Overall
- Used Book in Good Condition
| Approach | What it computes | Typical operation growth | Basic structure |
|---|---|---|---|
| Direct DFT | The discrete Fourier transform | O(N²) | Evaluates the defining sums directly |
| FFT | The same discrete Fourier transform | O(N log N) for common FFT methods | Factors the computation into smaller transforms |
How does the Cooley–Tukey FFT work?
For the radix-2 case, Cooley–Tukey separates the input samples into two subsequences: those at even indices and those at odd indices. It computes a smaller DFT for each subsequence, then combines their results using butterfly operations. Repeating the split creates a sequence of stages; each stage does work proportional to the input length, and the number of stages grows logarithmically with that length. Together, those stages give the familiar O(N log N) operation count. Carnegie Mellon University explains the even/odd decomposition and combination: CMU, The fast Fourier transform.
Does an FFT require a power-of-two number of samples?
No. A basic radix-2 FFT is designed for a power-of-two input length, which is why introductory examples often use lengths such as 256 or 1,024. But FFT is a broader family of algorithms: mixed-radix methods and methods for prime lengths can handle other sizes. The exact supported lengths depend on the algorithm or software implementation. See IEEE’s overview of fast Fourier transforms.
Where are FFTs used?
FFTs are widely used for spectral analysis of digitized signals. A spectrum analyzer can apply an FFT to successive, windowed segments of a signal to display its frequency components. Windowing helps reduce spectral leakage, an effect that can occur when a finite segment does not align cleanly with the signal’s cycles. FFTs also support other signal-processing tasks and numerical methods, including work involving integration and partial differential equations. IEEE and MIT OpenCourseWare describe these applications.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →How is the FFT related to the Fourier transform?
The Fourier transform is a mathematical way to describe a signal in terms of frequencies. The DFT is its finite, discrete counterpart for a finite sequence of samples. An FFT is an algorithm for computing that DFT efficiently. This distinction matters: saying that software “runs an FFT” usually means that it computes the DFT using an FFT algorithm, not that it produces a different mathematical result from the direct DFT.
Rank #3
Where did the FFT come from?
Cooley and Tukey’s 1965 publication was a landmark in the modern adoption of FFT methods. The underlying mathematical ideas have earlier history; Berkeley’s numerical-methods text notes related work by Gauss. For an introduction to the algorithm and its background, see Berkeley Python Numerical Methods: Fast Fourier Transform (FFT).
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Further reading
For a deeper treatment of Cooley–Tukey, FFT programs, and applications, the Open Textbook Library lists Fast Fourier Transforms.
Quick Recap
Best Value
Rank #4
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




