Frequency Sweep Generator
Free, browser-only frequency sweep generator (sine chirp) across the full 20 Hz – 20 kHz audio range. Log or linear mode, custom start / end Hz, 5 / 10 / 20 / 30 second duration, and one-shot / repeat / ping-pong loop options. Includes a live visual current-frequency marker, an elapsed-time progress bar, and a “Mark threshold” button for capturing your hearing-range limit during a slow sweep.
Sweep range
Quick presets
Playback
Live readouts
Hearing test
Use the Hearing test preset (30 s sweep) then press Mark threshold the moment you can no longer hear the tone. The captured frequency is your upper hearing limit for this session.
Frequency Sweeps — What They Are and How to Use Them
A frequency sweep (also called a chirp) is a sine tone whose frequency changes continuously over time. It's one of the most useful test signals in audio: in a few seconds it visits every frequency in the chosen range, which makes it ideal for finding speaker resonances, identifying headphone driver weaknesses, mapping room modes, and measuring your own ears' high-frequency cutoff.
Log vs linear mode
The two modes describe how the frequency moves through the range:
- Log (logarithmic) — constant Hz per octave. The pitch you hear rises at a perceptually uniform rate; the lowest octave (20 → 40 Hz) takes as long as the highest (10 → 20 kHz). This matches musical interval perception and is the standard mode for speaker / headphone characterisation.
- Linear — constant Hz per second. The frequency increases by a fixed number of Hz each second, so the pitch shoots through the low end almost instantly and lingers in the high end. Useful when you want extra time at high frequencies (e.g. for tweeter or hearing-range testing) or when matching legacy lab equipment.
One-shot, repeat, and ping-pong
- One-shot — sweep once from start to end and stop. Good for clean A/B testing and for the hearing-test preset where each repeat would reset your perceptual baseline.
- Repeat — restart from the start frequency after each sweep ends. Slight discontinuity at each loop point (the frequency jumps); useful for sustained excitation of a specific band.
- Ping-pong — reverse direction at each endpoint, sweep back and forth continuously. Smooth at every boundary; great for sub-bass demos and for keeping a tone within a narrow band indefinitely.
Using the hearing-test feature
Use the Hearing test preset (30-second log sweep across the full audible range), put on headphones at moderate volume, and watch the green marker climb. The moment you can no longer hear the tone, press Mark threshold. The captured frequency is your upper hearing limit for this session — a gold marker stays on the axis so you can compare against repeat tests. Healthy young adults typically hear up to ~17–18 kHz; the upper limit drops gradually with age (and faster with noise exposure). This is a rough self-screening, not a medical diagnosis.
Speaker and headphone testing
- Identify resonances — play a slow log sweep and listen for sudden loudness peaks or "ringing" notes. Those frequencies are where the driver / enclosure / room is amplifying or holding energy unnaturally.
- Find driver limits — with the Sub-bass ping-pong preset, listen for distortion, port chuffing, or cone bottoming below your speaker's rated lower limit.
- Check stereo imaging — mono summed sweeps should appear dead-centre at every frequency. Off-centre wandering reveals channel imbalance.
- Test tweeters — the Tweeter preset (5 → 20 kHz) isolates the high-frequency driver. Audible buzzing or sudden silence indicates damage.
Frequently Asked Questions
Why does the “current Hz” readout update so smoothly?
AudioParam.value, which reflects the live scheduled value at the audio thread's current time. Web Audio interpolates the sweep curve at sample-rate, so the JS readout (sampled at animation-frame rate) always shows you the audibly correct frequency.