Skip to content

Designing Microstrip Bandpass Filters

Learn how to design edge-coupled microstrip bandpass filters and fabricate them on standard FR4 PCB material. Your NanoVNA is the perfect tool for measuring and tuning these filters.

Commercial filters can be expensive, especially for non-standard frequencies. With some math and careful fabrication, you can create filters that:

  • Match your exact frequency requirements
  • Cost just a few dollars in PCB material
  • Can be iterated quickly for experimentation
  • Teach you fundamental RF design principles

Before we dive into the theory, here’s an interactive calculator that generates filter dimensions and downloadable KiCad PCB files. Try adjusting the parameters to see how they affect the design:

Filter Parameters

MHz
MHz
FR4 ≈ 4.4
mm

Live Preview

Calculating...

Calculated Dimensions

Resonator Width
Resonator Length
Coupling Gaps
Feed Width (50Ω)
Board Size
λg at f₀

Note: The KiCad file includes a solid ground plane on the bottom copper layer (B.Cu). Open in KiCad 7+ and run DRC/zone fill.


The calculator above uses well-established microwave engineering formulas. Let’s walk through the key concepts.

A microstrip line consists of a conductor trace on one side of a dielectric substrate, with a ground plane on the other side. The electromagnetic field propagates partly through the substrate and partly through air.

W (trace width)
├─────────────────┤
┌─────────────────┐ ─┬─ copper (35μm typ.)
│ │ │
════╧═════════════════╧═══╧═══ ─┬─ substrate (εr, h)
══════════════════════════════ ─┴─ ground plane

Because the field exists in both the substrate and air, we use an effective dielectric constant (εeff) that’s between 1 (air) and εr (substrate):

εeff = (εr + 1)/2 + (εr - 1)/2 × (1 + 12h/W)^(-0.5)

For FR4 (εr ≈ 4.4) with a 1.6mm substrate and 3mm wide trace:

  • εeff ≈ 3.3
  • This means signals travel at about 55% the speed of light

The trace width determines the characteristic impedance. For a 50Ω line:

Narrow strips (W/h ≤ 1):

Z₀ = (60 / √εeff) × ln(8h/W + W/4h)

Wide strips (W/h > 1):

Z₀ = (120π / √εeff) / (W/h + 1.393 + 0.667 × ln(W/h + 1.444))

The wavelength in the microstrip (λg) is shorter than free-space wavelength:

λg = c / (f × √εeff)

At 915 MHz on FR4:

  • Free-space λ = 328 mm
  • Guided λg ≈ 180 mm (with εeff ≈ 3.3)

Edge-coupled bandpass filters use quarter-wave or half-wave resonators that couple energy through fringing fields in the gaps between them. The coupling coefficient (k) determines bandwidth:

Z₀e = Z₀ × √((1 + k) / (1 - k)) (even mode)
Z₀o = Z₀ × √((1 - k) / (1 + k)) (odd mode)

Where Z₀e and Z₀o are even and odd mode impedances that depend on the gap spacing.


  1. Export to KiCad

    Use the “Download KiCad PCB” button above. The file is compatible with KiCad 7 and 8.

  2. Verify dimensions

    Open in KiCad and measure the traces. The critical dimensions are:

    • Resonator length (determines center frequency)
    • Gap widths (determine bandwidth and coupling)
    • Trace width (determines impedance)
  3. Add SMA footprints

    The generated file has copper pads but no connectors. Add edge-launch SMA footprints at the input/output pads.

  4. Order PCB

    Use a standard PCB service with:

    • 1.6mm FR4 substrate
    • 1oz (35μm) copper
    • HASL or ENIG finish
    • No solder mask over the filter traces (optional but improves performance)
  5. Test and tune

    Measure S21 (insertion loss) and S11 (return loss) with your NanoVNA. If the center frequency is off, you can trim the resonator lengths slightly with a file or knife.


Connect Port 1 to the filter input and Port 2 to the output. The S21 trace shows:

  • Passband: Should be close to 0 dB (typically -1 to -3 dB loss)
  • Stopband: Should be well below -20 dB
  • Bandwidth: Measure the -3 dB points

A well-made filter will show steep skirts at the band edges.


ParameterEffect of Increasing
PolesSharper rolloff, more insertion loss, larger board
BandwidthLarger gaps (easier to fabricate), less selectivity
εrSmaller physical size, more loss, tighter tolerances
Substrate thicknessWider traces, lower loss, larger board

  • Resonators are too long
  • Effective εr is higher than expected (moisture in FR4, different material)
  • Fix: Trim resonator ends carefully
  • Copper surface rough or oxidized
  • Solder mask over traces absorbing energy
  • Poor connector transitions
  • Fix: Use ENIG finish, remove solder mask from filter area
  • Insufficient coupling (gaps too large)
  • Board too small (radiation/coupling around edges)
  • Fix: Increase board margin, check gap dimensions

Once you’ve mastered basic bandpass filters, explore:

  • Hairpin filters: Folded resonators for compact designs
  • Interdigital filters: Better stopband performance
  • Combline filters: For higher frequencies
  • Stepped-impedance filters: Low-pass and high-pass designs

Your NanoVNA is the essential tool for iterating on these designs. Each measurement informs your next revision!