The Butterworth filter equation defines a "maximally flat" magnitude response with zero passband ripple, making it the default choice for audio crossovers, ADC anti-aliasing, and sensor signal conditioning. For an n-th order low-pass filter, the general magnitude response is governed by a single polynomial. However, in practical 2nd-order active Sallen-Key designs, this mathematical requirement forces the quality factor (Q) to exactly 0.7071 (or $1/\sqrt{2}$), which directly dictates your resistor and capacitor ratios.

Below is the complete derivation, symbol mapping, and unit-tracked calculation framework you need to move from a target cutoff frequency to a physical bill of materials.

The Core Butterworth Filter Equation and Symbol Definitions

The general magnitude response for an n-th order Butterworth low-pass filter is:

|H(jω)| = H₀ / √[1 + (ω / ωc)^(2n)]

When translating this to a physical 2nd-order active circuit (the Sallen-Key topology), we use the component-level equations for cutoff frequency (fc) and Quality Factor (Q):

fc = 1 / (2π √(R1·R2·C1·C2))
Q = √(R1·R2·C1·C2) / [R1·C1 + R2·C1 + R1·C2·(1 - K)]

For a true Butterworth response, Q must equal 0.7071. To simplify component sourcing, designers typically use a unity-gain configuration (K = 1) and set R1 = R2 = R. Substituting these into the Q equation reveals that C1 must equal 2 × C2.

Table 1: Symbol Definitions and Standard Units
SymbolParameterStandard SI UnitPractical Unit
|H(jω)|Magnitude response at frequency ωV/V (Dimensionless)dB
H₀DC / Passband gainV/V1 (Unity gain)
ωAngular frequencyrad/s2π × f
ωcCutoff angular frequencyrad/s2π × fc
nFilter order (number of poles)Integer2 (per stage)
fcCutoff frequency (-3dB point)Hertz (Hz)Hz, kHz
QQuality factorDimensionless0.7071 (Butterworth)
R1, R2Feedback/Input resistorsOhms (Ω)
C1, C2Shunt/Feedback capacitorsFarads (F)nF, pF
KOp-amp closed-loop gainV/V1 (Buffer config)

Rearranged Forms for Component Sizing

Assuming the highly practical unity-gain, equal-resistor Sallen-Key topology (K=1, R1=R2=R, C1=2C2), let C2 = C. The cutoff equation simplifies to:

fc = 1 / (2π · R · C · √2)

Here are the rearranged forms to solve for any missing variable. Keep these on your bench:

  • Solving for R: R = 1 / (2π · fc · C · √2)
  • Solving for C (which is C2): C = 1 / (2π · fc · R · √2)
  • Solving for fc: fc = 1 / (2π · R · C · √2)
  • Finding C1: C1 = 2 · C
Callout Tip: The √2 Factor
The √2 (approx 1.4142) in the denominator is the mathematical fingerprint of the Butterworth alignment. If you forget this factor and use the standard RC formula (1/2πRC), your filter will have a Q of 0.5, resulting in a Bessel-like response with a sluggish roll-off and an actual -3dB point much lower than your target.

Worked Examples with Strict Unit Tracking

Abstract formulas fail on the bench when unit prefixes are ignored. Here are two real-world sizing problems with explicit unit tracking.

Problem 1: Audio Subwoofer Crossover at 80 Hz

Goal: Design a 2nd-order Butterworth low-pass filter with fc = 80 Hz. You have a kit of 100 nF (0.1 µF) C0G capacitors. Find R, C1, and C2.

  1. Assign knowns: fc = 80 Hz. Let C2 (which is C) = 100 nF = 100 × 10⁻⁹ F.
  2. Select formula: R = 1 / (2π · fc · C · √2)
  3. Substitute with base SI units:
    R = 1 / (2 · 3.14159 · 80 Hz · 100 × 10⁻⁹ F · 1.4142)
  4. Calculate denominator:
    2 · 3.14159 · 80 · 1.0 × 10⁻⁷ · 1.4142 = 0.00007108
  5. Solve for R:
    R = 1 / 0.00007108 = 14,068 Ω
  6. Select standard part: Choose the nearest 1% E96 resistor value: 14.0 kΩ.
  7. Calculate C1: C1 = 2 · C2 = 2 · 100 nF = 200 nF (Use two 100 nF caps in parallel).

Problem 2: ESP32 ADC Anti-Aliasing at 15 kHz

Goal: The ESP32 SAR ADC samples at roughly 40 kHz. To prevent aliasing, we need a Butterworth filter at fc = 15 kHz. To limit thermal noise, we select R = 4.7 kΩ. Find C2 and C1.

  1. Assign knowns: fc = 15,000 Hz. R = 4,700 Ω.
  2. Select formula: C = 1 / (2π · fc · R · √2)
  3. Substitute with base SI units:
    C = 1 / (2 · 3.14159 · 15000 · 4700 · 1.4142)
  4. Calculate denominator:
    2 · 3.14159 · 15000 · 4700 · 1.4142 = 626,389
  5. Solve for C (C2):
    C = 1 / 626,389 = 1.596 × 10⁻⁹ F = 1.596 nF
  6. Select standard part: Choose nearest standard C0G cap: 1.5 nF (or parallel 1.0nF + 560pF for exactness).
  7. Calculate C1: C1 = 2 · 1.596 nF = 3.19 nF (Select standard 3.3 nF).

When the Formula Applies (and When It Breaks)

The Butterworth filter equation assumes an ideal, linear, time-invariant system. In physical hardware, it applies perfectly only under these conditions:

  • Op-Amp Gain Bandwidth Product (GBP): The op-amp's GBP must be at least 100 × fc × Q. For a 20 kHz filter, you need an op-amp with a GBP > 1.4 MHz. If the GBP is too low, the op-amp's internal phase shift destroys the Butterworth Q, causing peaking or early roll-off.
  • Component Linearity: The capacitors must not exhibit voltage coefficient or microphonics.
  • Parasitics: The formula ignores PCB trace capacitance and op-amp input capacitance. This is negligible at audio frequencies, but above 500 kHz, parasitic capacitance (often 2-5 pF) will shift your fc downward.

When it breaks: If you attempt to use this exact equation for a 5 MHz RF filter using standard through-hole components, lead inductance and stray capacitance will render the calculated values useless. For RF, you must use S-parameters and microwave simulation tools like Keysight ADS.

Common Unit Mistakes and Magnitude Sanity Checks

The most common reason a simulated filter fails on the breadboard is a unit prefix error. Watch for these traps:

Table 2: Unit Traps and Corrections
The MistakeThe ConsequenceThe Fix
Plugging µF directly into the formula without × 10⁻⁶Calculated R is 1,000,000× too small (e.g., 0.01 Ω instead of 10 kΩ)Always convert to base Farads (F) before calculating.
Confusing ω (rad/s) with f (Hz)Cutoff frequency is off by a factor of 2π (6.28×)Use the 2π version of the formula provided above.
Using X7R capacitors for C1/C2Filter shifts under bias voltage; introduces harmonic distortionOnly use C0G/NP0 ceramics or Polypropylene film.

Magnitude Sanity Check: What should your answer look like? For Audio (20 Hz - 20 kHz), realistic resistor values are 1 kΩ to 100 kΩ, and capacitors are 1 nF to 1 µF. For RF / High-Speed (> 1 MHz), resistors drop to 50 Ω - 600 Ω, and capacitors drop to 10 pF - 500 pF. If your audio filter calculation spits out a 2 Ω resistor and a 4,000 µF capacitor, you dropped a decimal or forgot a micro- prefix.

Decision Path: Selecting Your Filter Topology and Components

Use this decision tree to lock in your physical component choices based on your target frequency and application constraints.

Table 3: Filter Implementation Decision Tree
Condition / ConstraintTopology & Component Choice
IF fc < 100 Hz (Sub-bass / Seismic)Use Multiple Feedback (MFB) topology. Sallen-Key requires impractically large capacitors at low frequencies.
IF 100 Hz < fc < 100 kHz (Audio / Sensor)Use Unity-Gain Sallen-Key. Select C0G/NP0 ceramics (e.g., KEMET C1206C series) or WIMA film caps.
IF fc > 100 kHz (IF stages / Fast ADC)Use Sallen-Key with high-GBP op-amp (e.g., OPA838). Drop R to 1kΩ to minimize parasitic RC time constants.
IF ultra-low noise is requiredAvoid >50 kΩ resistors to limit Johnson-Nyquist thermal noise. Scale C up and R down.
IF driving a high-impedance ADC (SAR)Add a 1st-order passive RC (e.g., 100Ω + 1nF) after the active filter to provide charge-kickback filtering.
DEFAULT RECOMMENDATION:
If you are building a general-purpose analog front-end (100 Hz to 50 kHz) and need a guaranteed flat passband, build a unity-gain Sallen-Key Butterworth filter using a Texas Instruments OPA1678 op-amp, 10 kΩ 1% metal film resistors, and C0G/NP0 ceramic capacitors. This combination provides low noise, negligible capacitor voltage coefficient, and a GBP (13 MHz) that easily supports the math without phase-shift degradation.

For automated verification of these manual calculations, cross-check your final component values using the Analog Devices Filter Wizard or consult the foundational theory at Electronics Tutorials to ensure your specific op-amp's input capacitance isn't skewing your high-frequency response.