A Butterworth bandpass filter is an electronic circuit or digital signal processing algorithm that allows a specific range of frequencies to pass while attenuating those outside it, distinguished by a maximally flat amplitude response in the passband with zero ripple. When you insert this filter into a real circuit, it changes the signal chain by isolating your target bandwidth—like an audio midrange or an RF telemetry channel—without introducing the amplitude distortion or "ripple" that plagues other topologies. Beginners commonly confuse it with the Chebyshev filter (which achieves a steeper roll-off but introduces passband ripple) or the Bessel filter (which prioritizes linear phase response for time-domain accuracy but has poor frequency selectivity).
The Anatomy of a Maximally Flat Passband
The defining characteristic of the Butterworth topology is its magnitude response. Mathematically, the gain is as flat as possible at the center frequency, meaning the first 2n-1 derivatives of the gain function with respect to frequency are zero at DC (for low-pass prototypes). When transformed into a bandpass configuration, this translates to a smooth, ripple-free plateau across your target frequency window.
The tradeoff for this perfect flatness is the roll-off rate. A Butterworth filter transitions from the passband to the stopband more gradually than alternatives. If you need to aggressively reject an adjacent interfering signal, a Butterworth might not provide enough attenuation at the -3dB cutoff point.
| Topology | Passband Ripple | Roll-Off Steepness | Phase Linearity | Best Application |
|---|---|---|---|---|
| Butterworth | None (Maximally Flat) | Moderate | Poor | Audio crossovers, general-purpose isolation |
| Chebyshev Type I | Present (Adjustable) | Steep | Very Poor | RF channel selection, anti-aliasing |
| Bessel | None | Shallow | Excellent | Pulse/time-domain signals, video |
| Elliptic (Cauer) | Present (Both bands) | Extremely Steep | Very Poor | Telecom multiplexing, tight spectral masks |
Where You Meet This in Practice
You will encounter Butterworth bandpass filters across several distinct engineering domains, usually implemented as active RC circuits using operational amplifiers or as passive LC networks in RF front-ends.
- Active Audio Crossovers: In bi-amplified or tri-amplified speaker systems, a Butterworth bandpass isolates the midrange driver. The flat passband ensures that vocal frequencies are not artificially colored or boosted by filter ripple before reaching the speaker cone.
- Biomedical Instrumentation: ECG and EEG amplifiers use bandpass filters to isolate the biological signal (e.g., 0.5 Hz to 40 Hz for ECG) while rejecting 50/60 Hz mains hum and DC electrode offset. The flat passband ensures the diagnostic morphology of the P-QRS-T wave is preserved.
- Software-Defined Radio (SDR): While often implemented digitally (FIR/IIR) in the FPGA or DSP stage, the underlying math relies on Butterworth coefficients to extract a specific intermediate frequency (IF) channel without distorting the digital modulation envelope.
Worked Numeric Example: Sizing a 2nd-Order Audio Bandpass
Let us design a 2nd-order active Butterworth bandpass filter for a subwoofer crossover. We want a center frequency (f0) of 50 Hz. For a 2nd-order Butterworth response, the required Quality Factor is exactly Q = 0.707.
First, we calculate the -3dB bandwidth (BW):
BW = f0 / Q = 50 / 0.707 = 70.72 Hz
Next, we must find the lower (f1) and upper (f2) cutoff frequencies. A common mistake is assuming the bandwidth is split symmetrically on a linear scale (i.e., 50 ± 35.36 Hz). In reality, bandpass filters are symmetric on a logarithmic scale, meaning the geometric mean of the cutoffs equals the center frequency:
- f2 - f1 = 70.72 (Bandwidth equation)
- f1 × f2 = 50² = 2500 (Geometric mean equation)
Substitute f2 = f1 + 70.72 into the second equation:
f1(f1 + 70.72) = 2500
f1² + 70.72f1 - 2500 = 0
Using the quadratic formula to solve for the positive root:
f1 = (-70.72 + √(70.72² - 4(1)(-2500))) / 2
f1 = (-70.72 + √15001.3) / 2 = 25.88 Hz
Therefore, f2 = 25.88 + 70.72 = 96.60 Hz.
Notice that the passband spans from 25.88 Hz to 96.60 Hz. The lower transition band is ~24 Hz wide, while the upper transition band is ~46 Hz wide. If you were to blindly design a high-pass at 14.6 Hz and a low-pass at 85.4 Hz (linear symmetry), your filter would fail to achieve the maximally flat Butterworth response and would introduce a dip or peak at the center frequency.
Component Selection and Real-World Parasitics
Theoretical math assumes ideal components. On the bench, parasitics will destroy your Butterworth response if you select the wrong parts. According to Analog Devices' Filter Wizard documentation, component tolerance and dielectric absorption are the primary culprits for passband deviation.
- Resistors: Use 1% tolerance metal film resistors (e.g., Vishay RN55 or CMF series). Carbon composition resistors introduce thermal noise and drift, which will shift your f0 as the circuit warms up.
- Capacitors: For RF or high-precision audio, use C0G/NP0 ceramic capacitors or polypropylene film capacitors (like WIMA FKP2). Never use X7R or Y5V dielectrics in the frequency-determining network; their capacitance drops significantly with applied DC bias voltage and they exhibit microphonic piezoelectric effects that inject noise into the passband.
- Op-Amps: The Gain-Bandwidth Product (GBW) of your operational amplifier must be at least 50 to 100 times higher than the upper cutoff frequency (f2). For our 96.6 Hz subwoofer filter, a standard TL072 (GBW ~3 MHz) is more than adequate. For an RF bandpass at 1 MHz, you would need a high-speed op-amp like the OPA656 (GBW 230 MHz).
Frequently Asked Questions
Why is the Butterworth bandpass filter preferred for audio crossovers?
In audio, the human ear is highly sensitive to amplitude variations within the critical midrange band (300 Hz to 3 kHz). A Chebyshev filter might provide better rejection of out-of-band driver resonances, but its passband ripple causes audible coloration—making vocals sound "hollow" or "nasal" as certain frequencies are boosted by up to 1 dB or 3 dB. The Butterworth's zero-ripple passband guarantees that the original amplitude relationships of the musical transients are preserved exactly as recorded.
How do I calculate the component values for a 4th-order Butterworth bandpass?
A 4th-order bandpass is typically built by cascading two 2nd-order Sallen-Key or Multiple Feedback (MFB) stages. You do not use Q = 0.707 for both stages. Instead, you must use the normalized Butterworth polynomial coefficients. For a 4th-order design, the first stage requires a Q of 0.5412, and the second stage requires a Q of 1.3066. Both stages are tuned to the same center frequency. The Texas Instruments SLOA088 application report provides the exact resistor-ratio formulas for translating these Q values into physical component values.
Can I implement a Butterworth bandpass filter digitally on an ESP32 or Arduino?
Yes, by using an Infinite Impulse Response (IIR) digital filter. You calculate the analog Butterworth transfer function and apply the Bilinear Transform to convert it into digital coefficients (a0, a1, a2, b1, b2). On an ESP32, you can run this efficiently using the ESP-DSP library's IIR functions. However, be aware of quantization noise; a 12-bit ADC (like the one on the ESP32) limits your dynamic range to roughly 72 dB, meaning high-order digital Butterworth filters may suffer from coefficient quantization errors that cause limit-cycle oscillations in the stopband. For high-precision digital filtering, use an external 24-bit ADC (like the ADS1256) and a 32-bit floating-point DSP.






