Written by Amelia Foster | Last updated: June 2026
What This Page Explains
This page documents the exact technical mechanism behind the Voice Frequency Test on VoiceFrequencyTest.com. It explains what the tool measures, how each stage of the detection pipeline works, what accuracy the result achieves, and what the tool cannot determine. For plain-language answers about what your result means and how to interpret it, see the FAQ.
What Fundamental Frequency Actually Is
The fundamental frequency (F0) of a voice is the rate at which the vocal folds vibrate during voiced sound production, measured in cycles per second — Hertz (Hz). When you speak or sing a sustained vowel, your vocal folds open and close periodically under subglottal air pressure. The speed of that cycle is your F0.
F0 determines the perceived pitch of your voice. A higher F0 means a higher-pitched voice. A lower F0 means a lower-pitched voice. But F0 is not the same as perceived pitch — the harmonics above the fundamental, and the resonance characteristics of your vocal tract, also shape what a listener hears. This tool measures F0 directly. It does not measure perceived pitch, timbre, or vocal quality.
Typical F0 ranges by voice category:
| Voice Category | Typical Speaking F0 Range | Typical Singing F0 Range |
|---|---|---|
| Adult male (bass) | 80–150 Hz | 82–294 Hz |
| Adult male (baritone) | 100–175 Hz | 98–392 Hz |
| Adult male (tenor) | 130–200 Hz | 131–523 Hz |
| Adult female (alto) | 150–225 Hz | 175–698 Hz |
| Adult female (mezzo-soprano) | 175–245 Hz | 220–880 Hz |
| Adult female (soprano) | 200–260 Hz | 262–1,047 Hz |
These ranges are reference values from acoustic phonetics research. Individual variation is normal and expected.
The Detection Pipeline — Step by Step
Step 1 — Microphone Permission and MediaStream Capture
When the test begins, the browser requests microphone permission via the getUserMedia() API. Once granted, the browser opens a live MediaStream from your microphone at the system’s native sample rate — typically 44,100 Hz or 48,000 Hz.
This stream is connected to a MediaStreamAudioSourceNode within an AudioContext, feeding live audio into the Web Audio API processing graph. The microphone stream is never recorded, never stored in any persistent form, and never transmitted over the network. It exists only as a live buffer in your browser’s memory for the duration of the analysis session. For full details on audio data handling, see the Data Security page.
Step 2 — FFT Analysis via AnalyserNode
The MediaStreamAudioSourceNode is connected to an AnalyserNode — the Web Audio API’s built-in spectral analysis component. The AnalyserNode performs a Fast Fourier Transform (FFT) on the incoming audio signal at regular intervals, converting the time-domain audio waveform into a frequency-domain spectrum.
Key configuration parameters:
| Parameter | Value | Effect |
|---|---|---|
| FFT size | 2048 or 4096 samples | Higher = better frequency resolution |
| Frequency resolution | Sample rate ÷ FFT size | At 44,100 Hz ÷ 2048 = ~21.5 Hz per bin |
| Time resolution | FFT size ÷ sample rate | At 2048 ÷ 44,100 = ~46 ms per frame |
| Smoothing constant | 0.8 (typical) | Reduces frame-to-frame jitter in display |
The FFT output is an array of amplitude values for each frequency bin from 0 Hz to half the sample rate (the Nyquist frequency). The bin containing the highest amplitude — the dominant frequency — is identified as a candidate for the fundamental.
Step 3 — Fundamental Frequency Detection
Raw FFT peak detection identifies the strongest frequency in the spectrum, but this is not always the true fundamental. In many voices, upper harmonics (2×F0, 3×F0, 4×F0) are stronger in amplitude than the fundamental itself — particularly in chest voice at higher pitches and in head voice generally. Relying solely on FFT peak detection would return a harmonic rather than F0 in these cases.
To address this, the tool applies autocorrelation-based F0 detection, following the YIN algorithm approach (de Cheveigné and Kawahara, 2002). Autocorrelation computes the similarity of the audio signal with a delayed version of itself across a range of lag values. The lag at which the highest correlation occurs corresponds to the period of the fundamental — the time for one complete vocal fold vibration cycle.
The fundamental frequency is calculated from the autocorrelation peak lag:
F0 (Hz) = Sample rate (Hz) ÷ Lag at peak correlation (samples)
Worked example: If the autocorrelation peak is found at a lag of 200 samples and the sample rate is 44,100 Hz:
F0 = 44,100 ÷ 200 = 220.5 Hz
220.5 Hz corresponds to A3 in standard equal temperament tuning (A4 = 440 Hz).
Step 4 — Musical Note Mapping
The detected F0 in Hz is mapped to the nearest musical note using the equal temperament formula:
Semitones from A4 = 12 × log₂(F0 ÷ 440)
Worked example: For F0 = 220.5 Hz:
Semitones from A4 = 12 × log₂(220.5 ÷ 440) = 12 × log₂(0.5011) = 12 × (−0.9984) ≈ −12
−12 semitones from A4 = A3. The cents deviation from perfect A3 (220 Hz) is:
Cents deviation = 1,200 × log₂(220.5 ÷ 220) = 1,200 × 0.00392 ≈ +3.9 cents
The display shows: A3 (+4 cents) — the nearest note and how far above or below it the detected frequency sits.
Step 5 — Real-Time Display and Refresh
The detection pipeline runs continuously at approximately 20–30 frames per second, updating the displayed Hz value and note name in real time as you speak or sing. A smoothing function reduces display jitter caused by frame-to-frame variation in F0 — typical in natural speech, where F0 varies continuously with intonation.
The displayed value represents the F0 of the most recent analysis window. It is not averaged over time unless a session average function is active.
Accuracy
Under typical conditions — a quiet environment, a functional consumer microphone, and a sustained voiced sound — the tool achieves F0 detection accuracy of approximately ±2–5 Hz across the typical voice frequency range of 80–500 Hz.
Accuracy is reduced by:
- Background noise — ambient sound with energy in the voice frequency range degrades autocorrelation peak clarity
- OS audio processing — automatic gain control (AGC) and noise suppression applied by the operating system can alter the captured waveform before it reaches the browser
- Consumer microphone low-frequency response — built-in laptop microphones typically roll off below 100–150 Hz, which can cause the tool to underestimate F0 for very low male voices or to fail to detect F0 below approximately 100 Hz reliably
- Breathy or airy phonation — voices with high breathiness have a less periodic waveform, reducing autocorrelation peak clarity and increasing F0 detection uncertainty
- Short voiced segments — the analysis window requires a sustained voiced sound of at least 100–200 ms for reliable detection; brief consonants or very short phonation will not return a stable reading
What This Tool Cannot Determine
Voice type or voice classification Fundamental frequency is one input into voice classification, not the sole determinant. Voice type (soprano, tenor, baritone, etc.) depends on range, timbre, register transition points (passaggi), and acoustic quality — none of which can be determined from real-time F0 alone.
Vocal health or voice disorders Certain voice disorders — including dysphonia, vocal fold paralysis, and benign vocal fold lesions — affect the periodicity and frequency stability of the voice signal. This tool is not a clinical screening instrument. It cannot detect, diagnose, or rule out any voice condition. If you have concerns about your vocal health, consult a qualified laryngologist or speech-language pathologist.
Formant frequencies Formants — the resonant frequencies of the vocal tract that shape vowel quality and voice timbre — are distinct from F0 and are not measured by this tool’s standard pipeline. F1 and F2 formant analysis requires separate spectral envelope analysis beyond what the core frequency display provides.
Singing range limits The tool detects your current F0 in real time. It does not measure your full singing range. Determining your complete range requires systematically testing the highest and lowest notes you can produce — a task better suited to a dedicated vocal range tool.
Related Pages
- FAQ — plain-language answers about result interpretation and common measurement questions
- Troubleshooting — what to do if the tool fails to detect frequency, shows unstable readings, or produces unexpected results
- Data Security — how microphone audio is processed and why it never leaves your device
- About VoiceFrequencyTest.com — who runs this site and why it was built
Written by Amelia Foster, founder of VoiceFrequencyTest.com. Last updated: June 2026.
