Check these before the FFT
- Sampling rate: points per second. A 0.001 s interval means 1000 Hz.
- Highest frequency you can see (Nyquist): half the sampling rate — 500 Hz for data sampled at 1000 Hz. Anything higher folds back (aliases) to a lower frequency.
- Frequency resolution: roughly 1 ÷ the analyzed duration. Ten seconds of data gives about 0.1 Hz.
- Even sampling: an FFT assumes evenly spaced samples. Gaps and time jumps shift the frequencies.
Running an FFT in Excel
Excel can compute an FFT with the Analysis ToolPak's Fourier Analysis tool, with some friction:
- The number of values must be a power of 2 (1024, 2048, …) and at most 4096, so long records must be cut.
- Results come out as complex numbers; you convert them with IMABS and build the frequency column yourself.
- Window functions have to be applied in a separate column first.
Excel is fine for a one-off check. To compare many series or re-run over different time ranges, a tool with a built-in FFT is much faster.
Choosing a window and a quantity
| Window | Best for |
|---|---|
| Hann | Everyday use — the safe default |
| Flat top | Reading amplitudes accurately (peaks get wider) |
| Rectangular (none) | Signals whose record length is an exact number of periods |
Pick the vertical quantity by what you want to read: amplitude (0-p) or RMS for the size of a sine component, PSD (power spectral density) to compare noise levels. PSD does not depend on the number of points, so records of different lengths can be compared. The Welch method averages segments, smoothing the noise floor so it is easier to read.
Running an FFT in LOGADEC
- Start it from Try it in your browser, or download the free version and open the extracted HTML file in Google Chrome or Microsoft Edge.
- Load your CSV file with CSV/Excel, then tick the series you want in the [Series] tab.
- Click [FFT] on the toolbar. Each series gets its own spectrum, and its label shows the strongest frequency.
- In the [Analysis] tab, under "FFT view", choose the Quantity (amplitude, RMS, PSD, …) and the Window function.
- To analyze only part of the record, set Target to "Current display range". Show that time span in the time view (Overlay or Stacked), then switch back to [FFT].
When the X axis is in milliseconds, frequencies are still shown in Hz. For frequencies that change over time, use STFT or wavelets; to remove a frequency, use a filter (low-pass, notch, …). See Frequency Analysis in the user manual.
How the calculation works
- The FFT uses the values drawn on the chart (after unit conversion and filters).
- Above 65,536 points, the data is anti-alias averaged and then reduced. High-frequency components get smaller, and the label shows a warning mark. To see high frequencies accurately, analyze a shorter span with "Current display range".
- If X goes backwards or repeats, the data cannot be treated as one evenly spaced record and no FFT is computed. If the spacing varies widely, the FFT is computed with a warning.