Sallen-Key Filter Calculator
Design a second-order Sallen-Key low-pass or high-pass filter from a cutoff frequency and a Butterworth, Bessel or Chebyshev response, or work out the cutoff and Q of one you have built.
How to Use
- Pick Low-pass or High-pass, then Design (find the parts) or Analyse (check parts you already have).
- To design, enter the cutoff frequency and pick Butterworth, Bessel, 1 dB or 3 dB Chebyshev, or a custom Q.
- Choose the circuit: unity gain with equal resistors (low-pass) or equal capacitors (high-pass), unity gain from two capacitors you pick, or equal parts with gain setting Q.
- Enter the capacitor values with their units (pF, nF or µF); you can also type 10n or 4.7k straight into a field.
- Read the resistor values, the pole frequency and the gain at cutoff beside the schematic and frequency plot, then round to standard parts and use Analyse to check the result.
Worked Example
A 1 kHz Butterworth low-pass. TI’s table gives Q = 0.7071 and a scaling factor of 1, so the poles sit at the 1 kHz cutoff. With unity gain and equal resistors, Q = ½√(C2/C1), so C2 = 4Q² × C1 = 2 × 10 nF = 20 nF, and R1 = R2 = 1 ÷ (2π × 1,000 × 2 × 0.7071 × 10 nF) = 11.25 kΩ. Rounded to 11.3 kΩ, the Analyse task gives a pole frequency of 995.9 Hz with Q still 0.7071.
The matching high-pass. Swap the parts: C1 = C2 = 100 nF in series, R1 to ground and R2 as feedback. For 100 Hz, R1 = 2Q ÷ (2π × 100 × 100 nF) = 22.51 kΩ and R2 = 1 ÷ (2Q × 2π × 100 × 100 nF) = 11.25 kΩ, a ratio of 4Q² = 2.
The common mistake: using the table Q without the scaling factor. A 1 kHz Bessel stage needs Q = 0.5773, but its poles must sit at 1.2736 × 1 kHz = 1.274 kHz. Designing them at 1 kHz (R = 13.78 kΩ with 10 nF and 13.33 nF) puts the −3 dB point at 786 Hz, 21 % low. The right parts are R1 = R2 = 10.82 kΩ, C1 = 10 nF and C2 = 13.33 nF.
Show Work
Formulas
Background: Sallen, Key and the Filter Tables
R. P. Sallen and E. L. Key of MIT’s Lincoln Laboratory described the circuit in 1955. A plain two-stage RC ladder can never reach a Q above ½, which is too low for most filters. Sallen and Key fed part of the amplifier output back through one of the capacitors, so the positive feedback lifts the response near the cutoff and almost any Q becomes possible. With a unity-gain follower the circuit needs just two resistors, two capacitors and one amplifier.
The responses are older. Stephen Butterworth published the maximally flat filter in 1930, W. E. Thomson the flat-delay filter now called Bessel in 1949, and the Chebyshev response takes its name from the 19th-century mathematician whose polynomials give its equal ripple. A second-order section only has two numbers to set, its pole frequency and its Q, so each response comes down to a Q and a frequency scaling factor. This calculator uses the second-order rows of the Butterworth, Bessel, 1 dB and 3 dB Chebyshev tables in TI application note SLOA049 (Active Low-Pass Filter Design, Jim Karki, revised 2023). The circuit equations are from TI’s SLOA024 (Analysis of the Sallen-Key Architecture, 2002), and the high-pass comes from the low-pass by the RC-to-CR swap in TI’s OA-26.
Real op-amps set the limits. SLOA024 shows that well above the cutoff a low-pass response climbs back up as the amplifier’s output impedance rises, and that a high-pass is really a band-pass whose top edge is the op-amp’s own bandwidth. It also advises avoiding capacitors below 100 pF and using resistors of a few hundred ohms to a few kilohms.
About This Calculator
This calculator designs and analyses second-order Sallen-Key filters, low-pass and high-pass, on one page. In Design it applies the scaling factor for the response you pick, so a Bessel or Chebyshev filter really cuts off where you asked. It then solves the parts for one of three circuits and checks them by analysing the result. In Analyse it takes the four parts and the op-amp gain and gives the pole frequency, Q, the half-power frequency, which response that Q matches, and the gain at which the circuit would oscillate. The schematic is labelled with your values, and the frequency plot shows the shape, the peaking and the −3 dB points.
For filters above second order, cascade sections with the Q and scaling factor of each stage from a filter table, lowest Q first. Everything runs in your browser; nothing you enter is sent anywhere.
Related calculators: Notch Filter Calculator, All-Pass Filter Calculator, and Anti-Alias Filter Order Calculator.
Frequently Asked Questions
How do I design a 1 kHz Butterworth Sallen-Key low-pass filter?
A Butterworth stage needs Q = 0.7071. With unity gain and equal resistors, Q = ½√(C2/C1), so the feedback capacitor C2 must be 4Q² = 2 times the capacitor to ground C1. With C1 = 10 nF, C2 = 20 nF and R1 = R2 = 1 ÷ (2π × 1 kHz × 2Q × 10 nF) = 11.25 kΩ.
Why is a Bessel filter’s cutoff not at 1 ÷ (2π√(R1R2C1C2))?
That formula gives the pole frequency f0, which equals the −3 dB cutoff only for Butterworth. TI’s tables give a frequency scaling factor of 1.2736 for a second-order Bessel stage, so for a 1 kHz cutoff the poles go at 1.274 kHz. Putting them at 1 kHz instead puts the −3 dB point at 786 Hz.
What is the difference between Butterworth, Bessel and Chebyshev?
They are different Q values. Bessel (Q 0.5773) keeps the time delay flat, so pulses keep their shape. Butterworth (Q 0.7071) has the flattest passband. Chebyshev trades a ripple for a steeper roll-off: the 1 dB version (Q 0.9565) peaks 1.00 dB above its passband gain and the 3 dB version (Q 1.3049) peaks 3.00 dB above it.
How does the gain version of the Sallen-Key filter work?
With equal resistors and equal capacitors, Q = 1 ÷ (3 − K), where K = 1 + R4/R3 is the op-amp gain. A 3 dB Chebyshev needs K = 3 − 1/1.3049 = 2.234, so R4 = 12.34 kΩ with R3 = 10 kΩ. Keep K well below 3: TI shows that K = 2.9 gives Q = 10, but 1 % resistors can push it to 16.
How do I turn the low-pass design into a high-pass one?
Swap every resistor for a capacitor and every capacitor for a resistor: C1 and C2 go in series, R1 goes to ground and R2 is the feedback. The cutoff is divided by the scaling factor instead of multiplied. A 100 Hz Butterworth high-pass with C1 = C2 = 100 nF needs R1 = 22.51 kΩ and R2 = 11.25 kΩ.
How do I use the Sallen-Key Filter Calculator?
Simply type your numbers and read the result, which refreshes the instant you change something. There is nothing to submit and nothing to wait for.
Does it cost anything or need an account?
No. The tool is completely free, there is no account to create, and it keeps working offline after the page first loads.
Is anything I type uploaded?
No. The tool works entirely on your device, so the values you enter never leave your browser.
Common Use Cases
Audio anti-alias filters
A 20 kHz Bessel low-pass ahead of an ADC, with C1 = 1 nF, needs R1 = R2 = 5.412 kΩ and C2 = 1.333 nF; its poles sit at 25.47 kHz.
Turntable rumble filters
A 30 Hz 1 dB Chebyshev high-pass from 220 nF and 100 nF capacitors needs R1 = 77.5 kΩ and R2 = 18.2 kΩ.
Checking a filter you built
TI’s own 1 kHz Butterworth example (9.53 kΩ, 13 kΩ, 10 nF, 20.5 nF) analyses to f0 = 998.7 Hz and Q = 0.7073.
Smoothing a PWM or DAC output
A 1 kHz Butterworth low-pass from 10 nF and 22 nF capacitors needs 14.65 kΩ and 7.861 kΩ resistors.
A filter with gain
The equal-part version gives a 1 kHz 3 dB Chebyshev with gain 2.234 from 18.92 kΩ resistors, 10 nF capacitors and R4 = 12.34 kΩ over R3 = 10 kΩ.
Last updated: