A Butterworth filter is an electronic signal processing filter designed to provide a maximally flat frequency response in the passband, meaning it passes your target frequencies without any amplitude ripple before smoothly rolling off unwanted frequencies. In a real circuit or installation, inserting a Butterworth topology changes how your signal chain handles noise: it strips out high-frequency interference without introducing the amplitude modulation or 'waviness' in your baseline signal that other filter types cause. If you are conditioning a delicate strain gauge signal or building an audio crossover, this flat passband ensures your baseline amplitude stays exactly where it should be.
To visualize the physics, think of a water system with a surge tank (the capacitor) and a narrow pipe (the resistor). A sudden pressure spike (high frequency) gets absorbed by the tank, while steady, slow water flow (low frequency) passes through the pipe uninterrupted. A Butterworth design specifically sizes that tank and pipe so the steady flow never experiences pressure ripples before the restriction kicks in.
Beginners commonly confuse the Butterworth response with Chebyshev filters (which offer a steeper roll-off but introduce passband ripple) or Bessel filters (which preserve phase and time-domain step response but have a very slow, gradual roll-off).
The Core Trade-Off: Flatness vs. Roll-Off Steepness
Every analog filter design is a compromise. You cannot have a perfectly flat passband, an infinitely steep roll-off, and perfect linear phase all at the same time. The Butterworth filter sacrifices roll-off steepness to guarantee absolute flatness in the passband. Mathematically, its magnitude response has no derivatives greater than zero at DC (for low-pass), resulting in a smooth, monotonic curve.
| Filter Type | Passband Ripple | Roll-Off Steepness | Phase Linearity | Best Application |
|---|---|---|---|---|
| Butterworth | None (Maximally Flat) | Moderate (-12dB/oct per 2nd order) | Poor | Audio crossovers, general sensor conditioning |
| Chebyshev Type I | High (Configurable) | Steep | Very Poor | RF channel selection, strict noise rejection |
| Bessel | None | Very Slow | Excellent | Pulse/step signals, digital data lines |
Where You Meet This in Practice
You will rarely see a Butterworth filter used for power supply filtering; its math is optimized for signal integrity, not current handling. You will encounter it primarily in three bench scenarios:
- Anti-Aliasing for ADCs: When feeding an analog signal into an ESP32 or STM32 ADC, you must cut frequencies above the Nyquist limit. A Butterworth low-pass ensures your DC and low-frequency sensor readings aren't skewed by passband ripple before the cutoff.
- Audio Crossovers: In active speaker crossovers, amplitude flatness is critical for tonal accuracy. A Chebyshev filter would cause noticeable volume bumps in the midrange.
- Biomedical Sensors: ECG and EEG amplifiers use Butterworth band-pass stages to isolate specific biological frequencies without distorting the baseline amplitude of the waveform.
Worked Numeric Example: Designing a 1kHz Active Low-Pass
Let's design a 2nd-order, unity-gain Sallen-Key Butterworth low-pass filter targeting a 1000 Hz cutoff frequency ($f_c$). We will use an op-amp like the TL072 or LM358.
For a unity-gain Sallen-Key Butterworth response, the damping factor requires the capacitor ratio to be exactly $C_1 = 2C_2$, while the resistors are equal ($R_1 = R_2 = R$). The cutoff formula simplifies to:
$f_c = \frac{1}{2 \pi R C_2 \sqrt{2}}$
- Pick a standard resistor: Let's choose 15 kΩ (an E24 standard value) for $R$.
- Calculate ideal $C_2$: $C_2 = \frac{1}{2 \pi \times 15000 \times 1000 \times 1.414} = 7.5 \text{ nF}$.
- Select real E12 capacitors: The closest standard value is 6.8 nF for $C_2$. Therefore, $C_1$ should be $2 \times 6.8 = 13.6 \text{ nF}$. We will use the standard 15 nF value for $C_1$.
- Verify actual cutoff: $f_c = \frac{1}{2 \pi \times 15000 \times \sqrt{15\text{n} \times 6.8\text{n}}} = \frac{1}{94247 \times 1.0099 \times 10^{-8}} \approx \textbf{1051 Hz}$.
This 5% deviation is perfectly acceptable for most bench and hobbyist applications. According to Electronics Tutorials, maintaining the precise resistor ratio is often more critical for the Q-factor than exact capacitor values, so use 1% tolerance metal film resistors.
Real-World Scenario Walkthrough: The 60Hz Hum Disaster
The Setup: A maker was building a high-speed data logger using an ESP32 to read a 0-10Hz vibration sensor. The signal was being swamped by 60Hz mains hum from a nearby VFD (Variable Frequency Drive). They designed a 2nd-order Butterworth low-pass filter with a 20Hz cutoff to clean the signal before the ADC.
The Numbers: The design called for large capacitance values to keep resistor noise low: $R = 100\text{k}\Omega$, $C_1 = 100\text{nF}$, $C_2 = 47\text{nF}$. To save space, they used 0603 surface-mount MLCCs (Multi-Layer Ceramic Capacitors) with an X5R dielectric rated at 16V.
The Outcome: On the bench, the 60Hz hum was successfully attenuated by -24dB. However, when they installed the board in the field and powered it from a 12V battery (regulated to 5V for the op-amp), the filter started oscillating violently, and the ADC readings maxed out.
What Went Wrong: They ignored the DC bias effect of ceramic capacitors. Under a 5V DC bias, the capacitance of a 100nF X5R capacitor in a small 0603 package can drop by up to 60%. The actual $C_1$ on the board was behaving like 40nF. This destroyed the $C_1/C_2$ ratio required for the Butterworth damping factor, pushing the filter's Q-factor so high that it peaked and broke into oscillation. The Fix: They redesigned the board using C0G/NP0 dielectric capacitors (which have zero DC bias coefficient) and larger 1206 footprints to accommodate the physical size of stable dielectrics. For deeper insights into active filter stability, All About Circuits provides excellent primers on component parasitics.
Frequently Asked Questions
Can I cascade two 1st-order RC filters to make a 2nd-order Butterworth?
No. A simple passive RC cascade yields a Q-factor of 0.5, which results in an overdamped response with a very sluggish roll-off. A true 2nd-order Butterworth requires a Q of 0.707. You must use an active topology (like Sallen-Key or Multiple Feedback) with an op-amp to achieve the necessary complex conjugate poles.
Why does my Butterworth filter ring when I feed it a square wave?
Butterworth filters have poor step responses compared to Bessel filters. Because the Butterworth prioritizes frequency-domain flatness over time-domain phase linearity, a sharp square wave edge (which contains infinite high-frequency harmonics) will cause the filter to exhibit time-domain ringing or overshoot at the cutoff frequency. If your signal relies on sharp edges, switch to a Bessel topology.
Does the op-amp choice matter for a low-frequency Butterworth filter?
Yes, primarily due to input bias currents and slew rate. If you use high-value resistors (e.g., >100kΩ) to keep capacitor sizes small, the input bias current of a bipolar op-amp like the LM358 will create a massive DC offset voltage. For high-impedance filter networks, always use a JFET or CMOS input op-amp like the TL072 or MCP6001.






