FFT Analyzer Calculator
FFT magnitude spectrum, dominant frequencies, and THD from generated or custom time-domain signals
This free online fft analyzer calculator provides instant results with no signup required. All calculations run directly in your browser — your data is never sent to a server. Supports both metric (SI) and imperial units with built-in unit selection dropdowns on every input field, so you can work in whatever units your problem provides. Designed for engineering students and professionals working through coursework, design projects, or quick reference calculations.
FFT Analyzer Calculator
Compute the discrete Fourier transform of a signal: magnitude spectrum, dominant frequencies, phase, RMS, and total harmonic distortion.
Method & Formulas
Discrete Fourier Transform
Magnitude spectrum
Single-sided normalized amplitude (plotted on the bar chart)
Frequency resolution & Nyquist limit
Root-mean-square value
Total Harmonic Distortion (top-5 harmonics)
Sources: Oppenheim & Schafer, Discrete-Time Signal Processing3e, Ch. 8; Wikipedia: Discrete Fourier Transform. See the References & Further Reading section below for direct links.
fs = 128 Hz · N = 128 · Δf = 1.000 Hz · Nyquist = 64.000 Hz
Signal RMS
0.7071
THD
0.00%
Dominant Freq
5.000 Hz
Peak A[k]
1.0000
Time Domain Signal (first 128 of 128 samples)
Frequency Spectrum (first 64 of 65 bins)
Time-Domain Signal (full resolution, N = 128)
t = n / fs. All 128 samples. Scrollable.
| n | t (s) | x(t) |
|---|---|---|
| 0 | 0.000000 | 0.000000 |
| 1 | 0.007813 | 0.242980 |
| 2 | 0.015625 | 0.471397 |
| 3 | 0.023438 | 0.671559 |
| 4 | 0.031250 | 0.831470 |
| 5 | 0.039063 | 0.941544 |
| 6 | 0.046875 | 0.995185 |
| 7 | 0.054688 | 0.989177 |
| 8 | 0.062500 | 0.923880 |
| 9 | 0.070313 | 0.803208 |
| 10 | 0.078125 | 0.634393 |
| 11 | 0.085938 | 0.427555 |
| 12 | 0.093750 | 0.195090 |
| 13 | 0.101563 | -0.049068 |
| 14 | 0.109375 | -0.290285 |
| 15 | 0.117188 | -0.514103 |
| 16 | 0.125000 | -0.707107 |
| 17 | 0.132813 | -0.857729 |
| 18 | 0.140625 | -0.956940 |
| 19 | 0.148438 | -0.998795 |
| 20 | 0.156250 | -0.980785 |
| 21 | 0.164063 | -0.903989 |
| 22 | 0.171875 | -0.773010 |
| 23 | 0.179688 | -0.595699 |
| 24 | 0.187500 | -0.382683 |
| 25 | 0.195313 | -0.146730 |
| 26 | 0.203125 | 0.098017 |
| 27 | 0.210938 | 0.336890 |
| 28 | 0.218750 | 0.555570 |
| 29 | 0.226563 | 0.740951 |
| 30 | 0.234375 | 0.881921 |
| 31 | 0.242188 | 0.970031 |
| 32 | 0.250000 | 1.000000 |
| 33 | 0.257813 | 0.970031 |
| 34 | 0.265625 | 0.881921 |
| 35 | 0.273438 | 0.740951 |
| 36 | 0.281250 | 0.555570 |
| 37 | 0.289063 | 0.336890 |
| 38 | 0.296875 | 0.098017 |
| 39 | 0.304688 | -0.146730 |
| 40 | 0.312500 | -0.382683 |
| 41 | 0.320313 | -0.595699 |
| 42 | 0.328125 | -0.773010 |
| 43 | 0.335938 | -0.903989 |
| 44 | 0.343750 | -0.980785 |
| 45 | 0.351563 | -0.998795 |
| 46 | 0.359375 | -0.956940 |
| 47 | 0.367188 | -0.857729 |
| 48 | 0.375000 | -0.707107 |
| 49 | 0.382813 | -0.514103 |
| 50 | 0.390625 | -0.290285 |
| 51 | 0.398438 | -0.049068 |
| 52 | 0.406250 | 0.195090 |
| 53 | 0.414063 | 0.427555 |
| 54 | 0.421875 | 0.634393 |
| 55 | 0.429688 | 0.803208 |
| 56 | 0.437500 | 0.923880 |
| 57 | 0.445313 | 0.989177 |
| 58 | 0.453125 | 0.995185 |
| 59 | 0.460938 | 0.941544 |
| 60 | 0.468750 | 0.831470 |
| 61 | 0.476563 | 0.671559 |
| 62 | 0.484375 | 0.471397 |
| 63 | 0.492188 | 0.242980 |
| 64 | 0.500000 | 0.000000 |
| 65 | 0.507813 | -0.242980 |
| 66 | 0.515625 | -0.471397 |
| 67 | 0.523438 | -0.671559 |
| 68 | 0.531250 | -0.831470 |
| 69 | 0.539063 | -0.941544 |
| 70 | 0.546875 | -0.995185 |
| 71 | 0.554688 | -0.989177 |
| 72 | 0.562500 | -0.923880 |
| 73 | 0.570313 | -0.803208 |
| 74 | 0.578125 | -0.634393 |
| 75 | 0.585938 | -0.427555 |
| 76 | 0.593750 | -0.195090 |
| 77 | 0.601563 | 0.049068 |
| 78 | 0.609375 | 0.290285 |
| 79 | 0.617188 | 0.514103 |
| 80 | 0.625000 | 0.707107 |
| 81 | 0.632813 | 0.857729 |
| 82 | 0.640625 | 0.956940 |
| 83 | 0.648438 | 0.998795 |
| 84 | 0.656250 | 0.980785 |
| 85 | 0.664063 | 0.903989 |
| 86 | 0.671875 | 0.773010 |
| 87 | 0.679688 | 0.595699 |
| 88 | 0.687500 | 0.382683 |
| 89 | 0.695313 | 0.146730 |
| 90 | 0.703125 | -0.098017 |
| 91 | 0.710938 | -0.336890 |
| 92 | 0.718750 | -0.555570 |
| 93 | 0.726563 | -0.740951 |
| 94 | 0.734375 | -0.881921 |
| 95 | 0.742188 | -0.970031 |
| 96 | 0.750000 | -1.000000 |
| 97 | 0.757813 | -0.970031 |
| 98 | 0.765625 | -0.881921 |
| 99 | 0.773438 | -0.740951 |
| 100 | 0.781250 | -0.555570 |
| 101 | 0.789063 | -0.336890 |
| 102 | 0.796875 | -0.098017 |
| 103 | 0.804688 | 0.146730 |
| 104 | 0.812500 | 0.382683 |
| 105 | 0.820313 | 0.595699 |
| 106 | 0.828125 | 0.773010 |
| 107 | 0.835938 | 0.903989 |
| 108 | 0.843750 | 0.980785 |
| 109 | 0.851563 | 0.998795 |
| 110 | 0.859375 | 0.956940 |
| 111 | 0.867188 | 0.857729 |
| 112 | 0.875000 | 0.707107 |
| 113 | 0.882813 | 0.514103 |
| 114 | 0.890625 | 0.290285 |
| 115 | 0.898438 | 0.049068 |
| 116 | 0.906250 | -0.195090 |
| 117 | 0.914063 | -0.427555 |
| 118 | 0.921875 | -0.634393 |
| 119 | 0.929688 | -0.803208 |
| 120 | 0.937500 | -0.923880 |
| 121 | 0.945313 | -0.989177 |
| 122 | 0.953125 | -0.995185 |
| 123 | 0.960938 | -0.941544 |
| 124 | 0.968750 | -0.831470 |
| 125 | 0.976563 | -0.671559 |
| 126 | 0.984375 | -0.471397 |
| 127 | 0.992188 | -0.242980 |
Frequency Spectrum (all 65 bins)
f = k · Δf where Δf = 1.000 Hz. Nyquist = 64.000 Hz. Phase in degrees.
| k | f (Hz) | |X[k]| | A[k] | phase (°) |
|---|---|---|---|---|
| 0 | 0.0000 | 0.000000 | 0.000000 | 180.000 |
| 1 | 1.0000 | 0.000000 | 0.000000 | -125.417 |
| 2 | 2.0000 | 0.000000 | 0.000000 | -47.785 |
| 3 | 3.0000 | 0.000000 | 0.000000 | 120.308 |
| 4 | 4.0000 | 0.000000 | 0.000000 | -149.672 |
| 5 | 5.0000 | 64.000000 | 1.000000 | -90.000 |
| 6 | 6.0000 | 0.000000 | 0.000000 | -10.722 |
| 7 | 7.0000 | 0.000000 | 0.000000 | -45.092 |
| 8 | 8.0000 | 0.000000 | 0.000000 | 32.262 |
| 9 | 9.0000 | 0.000000 | 0.000000 | 144.870 |
| 10 | 10.0000 | 0.000000 | 0.000000 | -35.019 |
| 11 | 11.0000 | 0.000000 | 0.000000 | 81.286 |
| 12 | 12.0000 | 0.000000 | 0.000000 | -2.955 |
| 13 | 13.0000 | 0.000000 | 0.000000 | -152.770 |
| 14 | 14.0000 | 0.000000 | 0.000000 | -30.581 |
| 15 | 15.0000 | 0.000000 | 0.000000 | 149.906 |
| 16 | 16.0000 | 0.000000 | 0.000000 | 177.973 |
| 17 | 17.0000 | 0.000000 | 0.000000 | -99.045 |
| 18 | 18.0000 | 0.000000 | 0.000000 | -15.379 |
| 19 | 19.0000 | 0.000000 | 0.000000 | -79.775 |
| 20 | 20.0000 | 0.000000 | 0.000000 | -44.888 |
| 21 | 21.0000 | 0.000000 | 0.000000 | 111.721 |
| 22 | 22.0000 | 0.000000 | 0.000000 | 159.246 |
| 23 | 23.0000 | 0.000000 | 0.000000 | 1.352 |
| 24 | 24.0000 | 0.000000 | 0.000000 | -145.541 |
| 25 | 25.0000 | 0.000000 | 0.000000 | -93.569 |
| 26 | 26.0000 | 0.000000 | 0.000000 | 110.562 |
| 27 | 27.0000 | 0.000000 | 0.000000 | 26.357 |
| 28 | 28.0000 | 0.000000 | 0.000000 | -92.705 |
| 29 | 29.0000 | 0.000000 | 0.000000 | -91.590 |
| 30 | 30.0000 | 0.000000 | 0.000000 | -122.929 |
| 31 | 31.0000 | 0.000000 | 0.000000 | -116.112 |
| 32 | 32.0000 | 0.000000 | 0.000000 | -102.128 |
| 33 | 33.0000 | 0.000000 | 0.000000 | -3.999 |
| 34 | 34.0000 | 0.000000 | 0.000000 | -153.322 |
| 35 | 35.0000 | 0.000000 | 0.000000 | 33.973 |
| 36 | 36.0000 | 0.000000 | 0.000000 | -68.708 |
| 37 | 37.0000 | 0.000000 | 0.000000 | 118.305 |
| 38 | 38.0000 | 0.000000 | 0.000000 | 127.273 |
| 39 | 39.0000 | 0.000000 | 0.000000 | 123.026 |
| 40 | 40.0000 | 0.000000 | 0.000000 | -157.027 |
| 41 | 41.0000 | 0.000000 | 0.000000 | -56.170 |
| 42 | 42.0000 | 0.000000 | 0.000000 | -24.647 |
| 43 | 43.0000 | 0.000000 | 0.000000 | -86.986 |
| 44 | 44.0000 | 0.000000 | 0.000000 | 82.614 |
| 45 | 45.0000 | 0.000000 | 0.000000 | 92.262 |
| 46 | 46.0000 | 0.000000 | 0.000000 | -171.604 |
| 47 | 47.0000 | 0.000000 | 0.000000 | 50.409 |
| 48 | 48.0000 | 0.000000 | 0.000000 | -16.159 |
| 49 | 49.0000 | 0.000000 | 0.000000 | 72.718 |
| 50 | 50.0000 | 0.000000 | 0.000000 | 72.763 |
| 51 | 51.0000 | 0.000000 | 0.000000 | 101.565 |
| 52 | 52.0000 | 0.000000 | 0.000000 | 80.344 |
| 53 | 53.0000 | 0.000000 | 0.000000 | -74.665 |
| 54 | 54.0000 | 0.000000 | 0.000000 | -177.442 |
| 55 | 55.0000 | 0.000000 | 0.000000 | 29.685 |
| 56 | 56.0000 | 0.000000 | 0.000000 | -74.931 |
| 57 | 57.0000 | 0.000000 | 0.000000 | 100.340 |
| 58 | 58.0000 | 0.000000 | 0.000000 | 87.735 |
| 59 | 59.0000 | 0.000000 | 0.000000 | -78.343 |
| 60 | 60.0000 | 0.000000 | 0.000000 | -43.956 |
| 61 | 61.0000 | 0.000000 | 0.000000 | -114.096 |
| 62 | 62.0000 | 0.000000 | 0.000000 | -39.318 |
| 63 | 63.0000 | 0.000000 | 0.000000 | 137.304 |
| 64 | 64.0000 | 0.000000 | 0.000000 | 155.526 |
Dominant Frequencies (ranked by A[k])
THD (top-5) is computed from the top five ranked bins of this table.
| Rank | f (Hz) | |X[k]| | A[k] | phase (°) |
|---|---|---|---|---|
| 1 | 5.0000 | 64.000000 | 1.000000 | -90.000 |
| 2 | 52.0000 | 0.000000 | 0.000000 | 80.344 |
| 3 | 29.0000 | 0.000000 | 0.000000 | -91.590 |
| 4 | 42.0000 | 0.000000 | 0.000000 | -24.647 |
| 5 | 45.0000 | 0.000000 | 0.000000 | 92.262 |
How to Use This Calculator
Enter your input values
Fill in all required input fields for the FFT Analyzer Calculator. Most fields include unit selectors so you can work in your preferred unit system — metric or imperial, whichever matches your problem.
Review your inputs
Double-check that all values are correct and that you have selected the right units for each field. Incorrect units are the most common source of calculation errors and can produce results that are off by factors of 2, 10, or more.
Read the results
The FFT Analyzer Calculator instantly computes the output and displays results with units clearly labeled. All calculations happen in your browser — no loading time and no data sent to a server.
Explore parameter sensitivity
Try adjusting individual input values to see how the output changes. This is a quick and effective way to develop intuition about how different parameters influence the result and to identify which inputs have the largest effect.
Formula Reference
FFT Analyzer Calculator Formula
See calculator inputs for the governing equation
Variables: All variables and their units are labeled in the calculator interface above. Input fields accept values in multiple unit systems — select your preferred unit from the dropdown next to each field.
When to Use This Calculator
- •Use the FFT Analyzer Calculator when solving homework or exam problems that require quick numerical verification of your hand calculations — instant feedback helps identify arithmetic errors before they propagate.
- •Use it during the early design phase to rapidly iterate on parameters and narrow down feasible configurations before committing time to detailed finite element simulations or full design packages.
- •Use it when reviewing a colleague's calculation or checking a vendor's data sheet for plausibility — a quick sanity check can prevent costly downstream errors.
- •Use it to generate reference data for a technical report or presentation without manual computation, ensuring consistent, reproducible numbers throughout the document.
- •Use it in the field when a quick estimate is needed and a full engineering software package is not available.
About This Calculator
The FFT Analyzer Calculator is a precision engineering calculation tool designed for students, engineers, and technical professionals. FFT magnitude spectrum, dominant frequencies, and THD from generated or custom time-domain signals All calculations are performed using established engineering formulas from the relevant scientific literature and standards. Inputs support both metric (SI) and imperial unit systems, with unit conversion handled automatically — simply select your preferred unit from the dropdown next to each field. Results are computed instantly in the browser without sending data to a server, ensuring both speed and privacy. This calculator is intended as a supplementary tool for learning and design exploration; always verify results against authoritative references for safety-critical applications.
The Theory Behind It
The Fast Fourier Transform (FFT) converts a time-domain signal x(t) into a frequency-domain representation X(f), decomposing the signal into its constituent sinusoidal components. For a discrete signal with N samples at sampling rate f_s, the FFT produces N/2 + 1 complex coefficients X_k at frequencies f_k = k·f_s/N for k = 0, 1, ..., N/2. The magnitude |X_k| gives the amplitude of the sinusoidal component at frequency f_k, and the phase gives the corresponding phase angle. FFT is the key tool in signal processing, vibration analysis, audio analysis, and spectrum analysis. Key parameters: sampling rate f_s must satisfy Nyquist criterion (f_s > 2·f_max), frequency resolution Δf = f_s/N (smaller N means coarser resolution), and bin width determines what frequency separation can be resolved. Windowing (Hamming, Hann, flat-top) is used to reduce spectral leakage — the smearing of energy into adjacent frequency bins when the signal isn't exactly periodic in the measurement window. Rectangular window has maximum leakage; flat-top has the best amplitude accuracy; Hamming/Hann are general-purpose compromises. Total harmonic distortion (THD) is Σ(harmonic amplitudes)²/(fundamental amplitude²), expressed as a percentage. The calculator performs FFT on input time data, computes the magnitude spectrum, identifies dominant frequencies, and calculates THD.
Real-World Applications
- •Vibration analysis: FFT of vibration signals from accelerometers identifies rotation speeds, bearing fault frequencies, and resonances in rotating machinery.
- •Audio frequency analysis: musical tone identification, speech spectrum analysis, and audio equalization all use FFT-based spectral analysis.
- •Power quality monitoring: FFT of AC waveforms identifies harmonic distortion caused by nonlinear loads, important for regulatory compliance.
- •Structural health monitoring: changes in natural frequencies indicate structural damage; FFT of ambient vibration provides in-situ measurement.
- •Electrocardiogram analysis: FFT of ECG signals identifies heart-rate frequencies and diagnostic spectral features.
Frequently Asked Questions
What is FFT?
Fast Fourier Transform, an algorithm that efficiently computes the discrete Fourier transform (DFT) of a signal. It converts time-domain samples into frequency-domain coefficients, revealing the sinusoidal components (frequencies) present in the signal. FFT is the basis of modern spectrum analysis.
What's the Nyquist frequency?
The Nyquist frequency f_N = f_s/2 is the highest frequency that can be uniquely represented by a discrete signal at sampling rate f_s. Signals above f_N will 'alias' — appear at incorrect lower frequencies. To measure a signal up to f_max, you need f_s > 2·f_max. In practice, use f_s ≈ 2.5-5× f_max to allow for imperfect anti-aliasing filters.
What is frequency resolution?
Δf = f_s/N is the spacing between FFT frequency bins. Smaller Δf (finer resolution) requires more samples N at the same sampling rate f_s. For example, 1024 samples at 1000 Hz gives Δf = 0.98 Hz. To resolve two frequencies 1 Hz apart, you need at least Δf < 1 Hz, so N > 1000 samples. Improving resolution takes a longer measurement time (T = N/f_s).
What's windowing and why do I need it?
Windowing multiplies the signal by a tapered function (Hamming, Hann, flat-top) to reduce spectral leakage — the smearing of energy into adjacent bins when the signal isn't exactly periodic within the measurement window. Rectangular (no) window has maximum leakage. Hann window balances leakage and resolution. Flat-top has the best amplitude accuracy for measuring specific tones. Use Hann for general spectrum analysis and flat-top for precise amplitude measurement of tones.
What's THD?
Total Harmonic Distortion measures how much a signal deviates from a pure sine wave by computing the energy ratio of all harmonics to the fundamental: THD = √(Σ V_k²) / V_1, where k = 2, 3, 4, ..., expressed as a percentage. For AC power: THD < 5% is considered good; audio amplifiers: < 0.1% for good quality. High THD indicates nonlinear distortion that degrades signal quality and can cause electromagnetic interference.
Related Calculators
Free Vibration SDOF Calculator
Natural frequency, damping ratio, and free response of a single-DOF spring-mass-damper system with decay envelope plot
Forced Vibration SDOF Calculator
Steady-state amplitude ratio, phase angle, and frequency response for harmonically forced SDOF systems
Vibration Isolation Calculator
Transmissibility, isolation efficiency, and required mount stiffness for vibration isolation systems
Critical Speed Calculator
First critical speed of a rotating shaft with disk masses using Dunkerley's and Rayleigh's methods
Dynamic Vibration Absorber Calculator
Design a tuned mass damper: optimal absorber tuning, anti-resonance frequency, and primary system response
2-DOF Natural Frequencies Calculator
Natural frequencies, mode shapes, and frequency response for a 2-degree-of-freedom spring-mass system