Playground · research instrument
DSP · AudioSpeaker Box Calculator
Design a sealed or vented-box loudspeaker from Thiele–Small parameters. Dial in driver specs, choose an alignment target, and see the computed response, port length, and max SPL in real time.
Independent research instrument — not claimed as MakerPortal shipped product code. Methods, equations, assumptions, and limitations are disclosed so you can inspect what the page does and does not establish.
Driver Parameters
Starting from a real driver? Dayton Audio RS180-8, transcribed from the manufacturer's datasheet →
Enclosure
0.71
65.1 Hz
Total system Q
—
Qtc
System tuning
—
fc / fb Hz
-3 dB point
—
f3 Hz
Reference efficiency
—
η₀ %
@ 1W / 1m
—
Sensitivity dB
At Xmax + power
—
Max SPL dB
Vb recommendation
—
Alignment
SPL Frequency Response
Box Visual
The box is a spring, the port is a mass
Thiele and Small proved you can treat a loudspeaker and box as a filter. The driver is a resonator, the box is a second spring, the port is a Helmholtz mass. Get the ratios right, you choose the high-pass shape. Get them wrong, you get one-note boom.
1 — Compliance ratio is the master knob
Every datasheet gives you , , . is the volume of air that has same compliance as the driver suspension. Put the driver in a box of volume and you add another spring in parallel. The key ratio:
Big box → small → soft extra spring, barely above . Small box → large → stiff spring, pushed up. You cannot cheat volume — smaller box always costs low-end unless you raise .
2 — Sealed box math: choose your Qtc
Sealed is a 2nd-order high-pass. Its entire character is :
critically damped transient-perfect, lean. 0.577 Bessel — best phase linearity. 0.707 Butterworth — maximally flat amplitude, the universal default. 1.0 adds +1.5 dB peaking, warmer but rings. The slider recomputes for each target — that is why hitting Butterworth shrinks or grows the box in real time.
Box losses (absorption) and (leakage) enter as . Typical stuffed box: , leaky unsealed: .
3 — Vented box: 4th-order Helmholtz bargain
Ported adds a Helmholtz resonator . Below port and driver cancel, above both sum. Transfer becomes 4th-order:
where , , and are Small's 1973 coefficients containing and . QB3 is quasi-Butterworth 3rd-order approximation — punch over extension. SBB4 super 4th-order boombox, best for low drivers in large boxes. SC4 sub-Chebyshev 4, ripple allowed for deepest at expense of group delay.
Port length:
That end-correction is flanged. This tool uses exact acoustic mass calc from .
4 — Hoffman's Iron Law & why specs lie
Reference efficiency for half-space:
Hoffman's Iron Law says you only get two of three: small box, deep bass, high efficiency. Formally:
Shrink 50%, you lose 3 Hz extension or 3 dB sensitivity. No port or DSP escapes it long-term — EQ restores response but not , so power demand and blow up. Max SPL here min() of thermal power and excursion limit where .
5 — How to use & where it breaks
Playbook
- Start sealed, hit Butterworth 0.707 to see required . If box too big, accept Qtc 0.9–1.0 or go vented.
- Vented excels when . If , sealed usually wins — vented needs absurdly large box for flat alignment.
- Tune near for SBB4, above for punch QB3, below for extension SC4. Watch port length — if box depth, increase diameter or accept higher tuning.
- Use and cone-shaped visual: cube-root scaling shows volume not linear — +6 L at small box is huge.
Honesty
Small-signal only. No standing waves, panel flex, leakage nonlinearity, port chuffing, voice-coil inductance, BL droop, power compression, baffle step, or room gain. Assumes half-space and rigid walls. Real driver shifts with excursion and heat. Max SPL combines and thermal but not simultaneously. Use for alignment intuition, then measure impedance and nearfield.
Anatomy of the instrument
Seven driver parameters, two enclosure types, four sealed alignments, three vented alignments, one live SPL canvas, and a cube-root-scaled box visual. Here is how each piece connects to the Thiele-Small math.
Driver parameters and alignment logic
- 01
fs, Qts, Vas — the big three. These are the minimum required to compute any box alignment. fs is the driver's natural resonance, Qts is the damping, Vas is the air volume with equivalent compliance. Every slider has a paired numeric input; the
_syncingflag prevents infinite loops when slider and number update each other. The sliders are range inputs for quick sweeps; the numbers are for exact entry. - 02
Alignment presets compute Vb automatically. Choosing a sealed target Qtc solves and sets the Vb slider to the result. Choosing QB3, SBB4, or SC4 sets approximate Vb and fb ratios. The active preset gets highlighted with the brand-anchor border.
- 03
Sealed/vented toggle. Switches the transfer function between a 2nd-order high-pass (sealed) and a 4th-order Helmholtz-coupled system (vented, using Small's 1973 ABCD coefficients). The toggle also shows/hides the fb slider, port diameter, port length readout, and switches the alignment preset buttons.
- 04
Qa and Ql — the loss parasites. These absorb into Qtc via . Qa models stuffing absorption; Ql models air leakage through seams. Setting both to 100 effectively disables them (ideal case). Lowering Qa or Ql reduces the effective Qtc, making the response more damped.
The SPL canvas and box visual
- 05
SPL frequency response. A log-frequency canvas from 10–500 Hz, showing both the system response (solid magenta) and free-air driver response (dashed). The f3 point is found by scanning backward from high frequency until the magnitude crosses -3 dB. fc (sealed) or fb (vented) is marked with a filled circle. A crosshair cursor shows frequency and SPL at any mouse position.
- 06
The box visual. An isometric SVG whose face dimensions scale with the cube root of Vb. The driver circle radius is proportional to Sd but clamped to prevent it from exceeding the box face. In vented mode, a second smaller circle (the port) appears below or beside the driver. A dimension line shows the volume in liters and the edge length in decimeters.
- 07
Max SPL: Xmax vs power. The calculator computes both the thermal limit (sensitivity + 10·log(Power)) and the excursion limit at fc. It takes the minimum — at low frequencies excursion dominates, at higher frequencies power dominates. The dashboard shows which limit is active in the title attribute.
- 08
Raf-throttled updates. The
scheduleUpdate()function usesrequestAnimationFrameto batch slider changes. If you drag a slider rapidly, only the last value before the next frame triggers a recompute. The canvas is HiDPI-scaled viasetupHiDPI()and redraws from scratch on each frame with log-frequency and dB grids from the chart-core library.
The transfer function implementations
Sealed: r = f/fc; return r² / sqrt((1−r²)² + r²/Qtc²). Vented: Small's 1973 ABCD coefficients with . The 4th-order numerator is (two rolloff pairs), denominator is the quartic polynomial from the coupled mass-spring system.
Gear for speaker measurement & design
Speaker design stack · 17 picks
Measurement & monitoring gear17
$72.19SensorAEGTEST 8035 DC Gauss Meter, Telescopic Hall Sensor, Rechargeable Tesla Meter 0–2500 mT, Magnetometer with Data Logging and Alarm, Magnetic Field Strength Meter, ±5% General Accuracy for Daily Use
Measures B-field magnitude around loops/solenoids — hand-verify the Biot-Savart μ0/4π scaling this tracer computes before field-line integration.
$159.00HeadphonesAudio-Technica ATH-M50X Professional Studio Monitor Headphones, Black, Professional Grade, Critically Acclaimed, with Detachable Cable
Reference monitoring headphones used for akous's binaural audio testing.
$229.00Audio interfaceBehringer UMC1820 Audiophile 18x20 USB Audio/MIDI Interface with Midas Mic Preamplifiers and ADAT I/O | For Recording Microphones and Instruments
Audio interface used building Biquadia — 8-preamp USB I/O for real-time DSP testing.
$56.49MicrophoneBlue Yeti Nano Premium USB Microphone - Shadow Grey (Renewed)
Compact USB condenser mic used for nymic testing.
$9.99AudioComimark 1Pcs ADMP401 MEMS Microphone Breakout Module Board for Arduino Universal 1.3cm*1cm
MEMS mic breakout used for real-time DSP experiments feeding into Biquadia.
$118.98MicrophoneDayton Audio UMM-6 USB Measurement Microphone
Legacy USB measurement mic for REW — capture on-axis SPL and compare to enclosure designer frequency response with baffle diffraction.
$79.99MicrophoneDayton Audio UMM-6 USB Measurement Microphone
USB cal mic for nearfield SPL and cone-breakup waterfall — capture the CSD breakup modes this simulator predicts via modal superposition.
$229.99Audio interfaceIK Multimedia iRig Pro Duo I/O USB audio interface, TRS balanced & headphones outputs, audio mixer to 24-bit, midi interface for music studio, recording, podcasting, streaming & social apps
Portable 2-channel USB-C audio interface used for mobile Biquadia field recording.
$39.95BookLoudspeaker Design Cookbook
Breakup modes, cone edge termination, and waveguide directivity index — chapters 7-9 explain the cone-breakup visualization and waveguide polar math this lab implements.
$139.98MicrophoneminiDSP UMIK-1 USB Measurement Calibrated Microphone
Calibrated USB mic with individual cal file — measure your room's RT60 and modal peaks to validate the room-mode eigenfrequencies this calculator predicts.
$157.00MicrophoneRØDE NT-USB+ Professional-Grade USB Condenser Microphone For Recording Studio Quality Audio Directly To A Computer Or Mobile Device, Black
USB condenser mic used for nymic testing.
$8.99AudioSABRENT USB External Stereo Sound Adapter for Windows and Mac. Plug and Play No Drivers Needed. (AU-MMSA)
USB audio interface used in early Biquadia MEMS-mic prototyping.
$299.99MicrophoneSennheiser Pro Audio Sennheiser Pro Audio Wireless Microphone System, Black (MKE600)
Wireless mic system used for akous's ambient/binaural field recording.
$319.00MicrophoneShure MV7+ Podcast Dynamic Microphone with Stand – OBS Certified, Enhanced Audio, LED Panel, USB-C & XLR Outputs, Auto Level Mode, Digital Pop Filter – for Podcasting, Streaming, and Recording, Black
USB/XLR hybrid mic used building and testing nymic.
$237.00MicrophoneShure MV88+ Video Kit Digital Stereo Condenser Microphone for iPhone, Android, Mac & PC - Portable Recording Mic with DSP Controls, Headphone Monitoring & Tripod, Black
Portable stereo condenser mic kit used for Biquadia field/video capture.
$113.00HeadphonesSony MDR7506 Professional Large Diaphragm Headphone
Reference studio headphones used for akous's binaural audio testing.
$44.48BookTesting Loudspeakers
Step-by-step measurement of Thiele-Small, K_ms(x), Le(x) — same nonlinearities the loudspeaker nonlinearity lab models with displacement-dependent Bl(x) and stiffness.
Prices shown were retrieved from the Amazon Product Advertising API on 19 July 2026 and are indicative only — the price and availability on Amazon at the time of purchase apply.
More gear across every app: the full Gear list →
Two gotchas worth knowing
Driver Qts shifts with power — your Butterworth alignment drifts
Thiele-Small parameters are small-signal — measured at a few milliwatts. As you push power, the voice coil heats up and Re rises, which raises Qes and therefore Qts. A driver with Qts = 0.38 cold may measure Qts = 0.52 after 30 seconds at 50 W. Your perfectly flat Butterworth alignment becomes a peaked underdamped alignment. The tool assumes cold parameters — for high-power designs, simulate with Qts inflated by 20–30% to see the worst case.
Port chuffing is not predicted by the length formula
The port length calculator gives you the correct acoustic mass for the target tuning, but says nothing about air velocity in the port. If port diameter is too small for the SPL you need, air velocity exceeds ~17 m/s and becomes turbulent — audible chuffing. Rule of thumb: port area should be at least 25–30% of Sd for clean output. If the calculator gives a short port length with your chosen diameter, increase the diameter and recalculate — port length increases with area, but so does clean output headroom.
JavaScript — the sealed-box solver
The core sealed-box transfer function and compliance-ratio math. Drop this into any speaker design tool — input fs, Qts, Vas, Vb and get Qtc, fc, and the full frequency response.
Sealed enclosure — JavaScript
const sealedBox = (fs, Qts, Vas, Vb, Qa = 100, Ql = 100) => {
const alpha = Vas / Vb;
const QtcIdeal = Qts * Math.sqrt(1 + alpha);
const Qtc = 1 / (1 / QtcIdeal + 1 / Qa + 1 / Ql);
const fc = fs * Math.sqrt(1 + alpha);
const H = (f) => {
const r = f / fc;
const r2 = r * r;
return r2 / Math.sqrt((1 - r2) ** 2 + r2 / (Qtc * Qtc));
};
const sensitivity = () => {
const Qes = 1 / (1 / Qts - 1 / (Qts * 5));
const k = (4 * Math.PI ** 2) / (343 ** 3);
const eta = k * fs ** 3 * Vas / Qes;
return 112 + 10 * Math.log10(Math.max(eta, 1e-12));
};
const vbForQtc = (targetQtc) => {
if (targetQtc <= Qts) return Infinity;
return Vas / ((targetQtc / Qts) ** 2 - 1);
};
return { alpha, Qtc, QtcIdeal, fc, H, sensitivity, vbForQtc };
};Frequently asked questions
What Qtc should I target for a sealed enclosure?
Qtc = 0.707 (Butterworth) gives maximally flat amplitude response — the universal default. Qtc = 0.577 (Bessel) gives best transient response with minimal ringing. Qtc = 0.5 is critically damped, tightest bass but the box needs to be very large. Qtc = 1.0 adds about 1.5 dB of peaking at fc for a warmer, fuller sound. For most music, 0.7–0.85 is the sweet spot.
Why does a smaller box raise the system resonance frequency?
The air in the box acts as a second spring in parallel with the driver's suspension. A small box contains stiff air — it's harder to compress. The compliance ratio α = Vas/Vb determines the spring constant: when Vb is small, α is large, and the system resonance fc = fs·√(1+α) rises. Hoffman's Iron Law says you can't cheat this: smaller box means either higher fc or lower efficiency.
When should I choose vented over sealed?
Vented enclosures work best with drivers that have Qts < 0.4. Above Qts ≈ 0.5, sealed usually wins because the vented box needed for a flat alignment becomes impractically large. Vented gives about 3 dB more sensitivity at fb and extends f3 about half an octave lower — but at the cost of a steeper 24 dB/octave rolloff below fb, more group delay, and the risk of port chuffing at high SPL.
How accurate is the port length calculation?
The calculator uses the flanged-end correction (0.732·rp) which assumes the port terminates flush with the baffle. Real ports with flares act slightly longer at high SPL because end correction changes with velocity. Build the port 5–10% longer than calculated, measure the impedance peak with a test signal, then trim to exact tuning. A port that's too long tunes lower; too short tunes higher.
Why is my maximum SPL sometimes limited by Xmax and sometimes by power?
The tool computes both and takes the minimum. At low frequencies, excursion demand grows as 1/f² — your driver hits Xmax before you run out of amplifier power. At higher frequencies, excursion is small and thermal power handling is the limit. The cross-check ensures you see the real bottleneck. If Xmax is the limit and you want more SPL, you need a driver with more excursion or a larger radiating area — more power alone won't help below the Xmax-limited region.
Shareable still
The instrument, captured—not illustrated.
This 16:9 frame is rendered from the real browser instrument above. It is the page's canonical preview for image search, link unfurls, and posts that need to show what the tool actually does.
Download 1280 × 720 JPEG