NewAI Part GeneratorFree to get started
FREE TOOL

Sallen-Key filter calculator

Pick a Butterworth, Bessel or Chebyshev response and this Sallen-Key filter calculator gives the resistors for a unity-gain low-pass or high-pass stage, rounded to standard values. It also runs in reverse: enter the four parts you have and read off f0, Q, the −3 dB frequency and the Bode plot.

Solve for
Examples
Filter type
Hz

−3 dB point for Butterworth and Bessel; edge of the ripple band for Chebyshev.

F
F

Optional. Blank picks the smallest E12 value that reaches the Q (C2 ≥ 4Q² × C1).

Resistor series
Hz

Optional: gain and phase at this frequency.

R1 and R2 (nearest E96)

7.87 kΩ, 14.7 kΩ

exact 7.86 kΩ and 14.6 kΩ

C2 (feedback)
22 nF smallest E12 ≥ 4Q²·C1 = 20 nF
R1 exact
7.861 kΩ input resistor
R2 exact
14.65 kΩ to the + input
Pole frequency f0
1 kHz fc × 1.0000
Q
0.7071
Cutoff with standard parts
997.6 Hz −0.24%
Q with standard parts
0.7068 −0.04%
Attenuation at 10 × f0
40 dB
Op-amp GBW (rule of thumb)
100 kHz ≈1 % gain error

Butterworth cutoff is the −3 dB point. Gain is exactly 1 (0 dB) in the passband because the op amp is a follower.

Frequency response (Bode plot)
-80-60-40-200-150-100-500101001k10k100kFrequency (Hz)Gain (dB)Phase (°)−3 dBfc 1 kHz
Gain (dB)Phase (°)

C2 choices for C1 = 10 nF (E12 capacitors, nearest E96 resistors)

C2R1R2CutoffQ
22 nF7.87 kΩ14.7 kΩ997.6 Hz (−0.24%)0.707
27 nF5.49 kΩ16.9 kΩ1.006 kHz (+0.56%)0.707
33 nF4.22 kΩ18.2 kΩ999.7 Hz (−0.03%)0.710
39 nF3.4 kΩ19.1 kΩ1 kHz (+0.01%)0.707
47 nF2.74 kΩ19.6 kΩ1.002 kHz (+0.18%)0.711

How do you calculate the Sallen-Key cutoff frequency and Q?

For a unity-gain low-pass, f0 = 1 ÷ (2π√(R1R2C1C2)) and Q = √(R1R2C1C2) ÷ ((R1 + R2)C1); f0 is the −3 dB cutoff only for a Butterworth response. For a 1 kHz Butterworth (Q = 0.7071) with C1 = 10 nF and C2 = 33 nF, R1 = 4.19 kΩ and R2 = 18.3 kΩ; the nearest 1 % values 4.22 kΩ and 18.2 kΩ give 999.7 Hz. The feedback capacitor must be at least 4Q² times C1.

Sallen-Key filter formula and topology

A Sallen-Key stage is two RC sections with positive feedback from the op amp output into the middle node. The feedback raises Q above the 0.5 limit of a passive RC-RC network. With the op amp as a follower (K = 1), the passband gain is exactly 1.

f0 = 1 ÷ (2π√(R1 R2 C1 C2))     Q = √(R1 R2 C1 C2) ÷ ((R1 + R2) C1)
R1, R2
low-pass: R1 from the input, R2 into the + input
C1
low-pass: + input to ground
C2
low-pass: R1/R2 junction to the output (feedback)
f0, Q
natural frequency in Hz and quality factor

The high-pass swaps the parts: C1 and C2 in series with the signal, R1 from the + input to ground and R2 from the capacitor junction to the output. Its Q has the same form with the roles exchanged:

f0 = 1 ÷ (2π√(R1 R2 C1 C2))     Q = √(R1 R2 C1 C2) ÷ (R2 (C1 + C2))

For a Sallen-Key filter design, look up Q and the frequency scaling factor FSF for the response, then set the pole frequency to f0 = FSF × fc for a low-pass or fc ÷ FSF for a high-pass. With R1 = mR, R2 = R, C1 = C and C2 = nC (TI SLOA049, Appendix A.1.2), Q = √(mn) ÷ (m + 1), which needs n ≥ 4Q²:

m = [(n − 2Q²) − √(n² − 4nQ²)] ÷ 2Q²     R = 1 ÷ (2π f0 C √(mn))

For the equal-capacitor high-pass, R1 = Q ÷ (π f0 C) and R2 = 1 ÷ (4π Q f0 C).

Sallen-Key filter design: worked examples

Example 1: 1 kHz Butterworth low-pass (TI SLOA049 Table 10-1)

Q = 0.7071 and FSF = 1, so f0 = 1 kHz. With C1 = 10 nF and C2 = 33 nF, n = 3.3 and m = 0.2288. R = 1 ÷ (2π × 1 kHz × 10 nF × √(mn)) = 18.3 kΩ, so R2 = 18.3 kΩ and R1 = m × R = 4.19 kΩ. Rounded to E96, 4.22 kΩ and 18.2 kΩ give f0 = 999.7 Hz and Q = 0.710. TI lists 4.22 kΩ and 18.4 kΩ for the same circuit.

Example 2: 20 Hz subsonic high-pass with 220 nF capacitors

For a Butterworth high-pass, f0 = fc = 20 Hz. R1 = 0.7071 ÷ (π × 20 × 220 nF) = 51.2 kΩ and R2 = 1 ÷ (4π × 0.7071 × 20 × 220 nF) = 25.6 kΩ, a 2:1 ratio. The E96 values 51.1 kΩ and 25.5 kΩ give 20.04 Hz. Film capacitors suit this: an X7R ceramic in the signal path loses capacitance with bias and adds distortion.

Example 3: what equal parts give (TI SLOA024B test circuit)

R1 = R2 = 1 kΩ and C1 = C2 = 1 nF: f0 = 1 ÷ (2π × 1 µs) = 159.2 kHz and Q = √(10⁻¹²) ÷ (2 × 10⁻⁶) = 0.50, matching the 159 kHz and Q = 1/2 TI quotes. Because Q is below 0.707, the −3 dB point is lower than f0, at 102.4 kHz.

Q, FSF and capacitor ratio for each response

Second-order values computed from the pole positions of each response. They match TI SLOA049 Tables 9-1 to 9-4 within 0.13 % (TI rounds the Bessel FSF to 1.2736 from rounded pole values) and Op Amps for Everyone Table 16-6 for the 0.5 dB Chebyshev. Gains are for a low-pass, relative to the DC gain.

ResponseQFSF (f0/fc)Min C2/C1PeakGain at 2fcGain at 10fc
Butterworth0.70711.00002.000none−12.3 dB−40.0 dB
Bessel0.57741.27201.333none−9.8 dB−35.9 dB
Chebyshev 0.5 dB0.86371.23132.984+0.50 dB−7.9 dB−36.3 dB
Chebyshev 1 dB0.95651.05003.660+1.00 dB−10.4 dB−39.1 dB
Chebyshev 3 dB1.30470.84146.809+3.00 dB−14.0 dB−43.0 dB

Sallen-Key Butterworth filter values for common low-pass cutoffs

Unity gain, C1 the E6 value nearest 1/(2π fc × 10 kΩ), C2 the smallest E12 value of at least 2 × C1, resistors rounded to E96. The last column is f0 with those rounded parts.

fcC1C2R1R2Actual f0
100 Hz150 nF330 nF5.23 kΩ9.76 kΩ100.1 Hz
1 kHz15 nF33 nF5.23 kΩ9.76 kΩ1.001 kHz
3.4 kHz4.7 nF10 nF5.36 kΩ8.87 kΩ3.367 kHz
10 kHz1.5 nF3.3 nF5.23 kΩ9.76 kΩ10.01 kHz
20 kHz680 pF1.5 nF5.76 kΩ10.7 kΩ20.07 kHz
50 kHz330 pF680 pF5.62 kΩ8.06 kΩ49.92 kHz

What goes wrong in real Sallen-Key filters

Use C0G/NP0 ceramic or film capacitors and 1 % resistors: Q depends on part ratios, and X7R capacitance moves with DC bias and temperature. TI SLOA049 suggests resistors from a few hundred ohms to a few kilohms and capacitors of at least 10 pF, so keep the capacitors well above the op amp’s input capacitance. A low-pass Sallen-Key does not keep attenuating forever: well above the cutoff the signal couples through C2 to the op amp output, whose output impedance rises with frequency, so the stopband floor is set by the amplifier (SLOA024B, section 3.5). A small RC after the output fixes it if you need deep high-frequency rejection. A high-pass is really a band-pass whose upper edge is the op amp’s bandwidth. The source impedance adds to R1 of a low-pass, so drive the filter from a low-impedance source or fold the source resistance into R1. Bessel tables differ in how they normalize: the FSF of 1.2720 used here puts the −3 dB point at fc, while tables normalized for unit group delay put the poles elsewhere, so check which one a reference uses before mixing values (a 1 kHz Bessel with C1 = 10 nF takes C2 = 15 nF here).

Glossary

Natural frequency (f0)
The frequency of the pole pair, 1 / (2π√(R1R2C1C2)). It equals the −3 dB cutoff only for a Butterworth response.
Quality factor (Q)
Sets the shape of the corner: 0.577 for Bessel, 0.707 for Butterworth, higher for Chebyshev, which peaks before it rolls off.
FSF
Frequency scaling factor in TI’s tables: the pole frequency divided by the cutoff for a low-pass stage.
Butterworth
The flattest possible passband; −3 dB at fc and 40 dB per decade for a second-order stage.
Bessel
Near-constant group delay, so a step passes with almost no overshoot, at the cost of a softer corner.
Chebyshev
Allows ripple in the passband in exchange for a steeper drop just past the cutoff.
Unity gain
The op amp is wired as a voltage follower, so the passband gain is exactly 1 (0 dB).

Related guides

Frequently asked questions

What is the Sallen-Key topology?

Two RC sections around an op amp, with positive feedback from the output into the middle node. The feedback raises Q above the 0.5 limit of a passive RC-RC network, and with the op amp as a follower the passband gain is exactly 1.

What is the Sallen-Key filter formula for a low-pass?

For the unity-gain low-pass, f0 = 1 / (2π √(R1 R2 C1 C2)) and Q = √(R1 R2 C1 C2) / ((R1 + R2) C1), where C1 goes from the op-amp + input to ground and C2 is the feedback capacitor. For a Butterworth response f0 equals the −3 dB cutoff and Q = 0.7071.

What is the Sallen-Key Q factor with equal resistors and capacitors?

Q = 0.5 at unity gain, below a Bessel (0.577). The −3 dB point then sits at 0.644 × f0: with 1 kΩ and 1 nF, f0 = 159.2 kHz but the −3 dB point is 102.4 kHz. To get a sharper corner at unity gain, make the feedback capacitor C2 larger than C1.

Why does C2 have to be at least 4Q² times C1?

At unity gain the highest Q a low-pass can reach is √(C2/C1) / 2, which happens with equal resistors. A Butterworth (Q = 0.7071) needs C2/C1 ≥ 2, a Bessel ≥ 1.33 and a 3 dB Chebyshev ≥ 6.81. Leave C2 blank in the calculator and it picks the smallest E12 value that works.

How do I design a Sallen-Key high-pass filter?

Swap the resistors and capacitors. With two equal capacitors C, R1 (to ground) = Q / (π f0 C) and R2 (feedback) = 1 / (4π Q f0 C). For a 20 Hz Butterworth with 220 nF that is 51.2 kΩ and 25.6 kΩ. For Bessel and Chebyshev the pole frequency is fc divided by the same FSF the low-pass multiplies by.

Sallen-Key or multiple feedback (MFB): which should I use?

TI SLOA049 sums it up: the unity-gain Sallen-Key filter has the best gain accuracy because its gain does not depend on component values, while the MFB is less sensitive to component variation and keeps attenuating better at high frequency. Sallen-Key is non-inverting; MFB inverts.

What op amp bandwidth does a Sallen-Key filter need?

TI’s rule of thumb (Op Amps for Everyone, section 16.8.4) for about 1 % gain error is a unity-gain bandwidth of 100 × the −3 dB frequency for Q below 1, and 100 × Q × f0 × √((Q² − 0.5)/(Q² − 0.25)) above it. A 1 kHz Butterworth needs 100 kHz; a 1 kHz, 3 dB Chebyshev about 99.9 kHz.

How do I build a fourth-order or higher Sallen-Key filter?

Cascade second-order stages, each with its own f0 and Q from a filter table (TI SLOA049 section 9), plus one RC section for odd orders. A fourth-order Butterworth uses stages with Q = 0.5412 and 1.3065, both at fc. Put the lowest-Q stage first to reduce clipping.

More free PCB tools

See all free electronics tools →

Sources

Design the whole board, not one number

ProtoFlow is free AI PCB design software: describe a circuit and get a schematic with real parts, PCB layout with an autorouter, SPICE simulation and Gerber files. Native KiCad, Altium and EAGLE import and export. Free on macOS, Windows and Linux.

Get for Mac

Free to start. No card required.