SingingRangeTest.com uses browser-based audio analysis and music calculations to help you explore vocal range, pitch and notes. This page explains, tool by tool, what each one measures, how it decides, what it does not do, and what has and has not been tested.
For microphones, rooms and technique, see Accuracy & Limitations; for a plain-language walk-through, How the Singing Range Test Works; for quick answers, the FAQ.
Measured, calculated or estimated
Not every number on a result screen is the same kind of information.
| Result | What it is |
|---|---|
| Detected frequency (Hz) | Estimated from the microphone signal by a pitch-detection algorithm. |
| Note name and cents | Calculated from the frequency (A4 = 440 Hz), except in Note Finder, where A4 can be changed. |
| Held note, highest note held | Measured: a pitch that stayed stable for a tool-specific time (rules in the table below). |
| Score or grade (Pitch Accuracy Test, Singing Grader) | Calculated with the published formula. The scales are the tools’ own, not an industry standard. |
| Voice-quality readouts | Calculated descriptors of one held vowel, with the tool’s own descriptive bands. Not norms, not a diagnosis. |
| Voice type, comfortable zone, scale match | Estimates produced by fixed rules from the notes you sang. Educational, not a classification. |
| Register and passaggio notes | Reference text. No tool detects a register or a passaggio from the audio. |
How the tools listen
Each microphone tool asks for permission only when you press Start. It then reads short windows of the signal from the browser’s Web Audio API about 30 times a second. The steps are the same in the tools that detect pitch:
- The tool asks the browser to switch off echo cancellation, noise suppression and automatic gain. Browsers may ignore this; the Voice Quality Test reads back what the browser reports.
- A volume gate (RMS 0.01 in most tools) treats quiet input as silence.
- A pitch detector estimates the fundamental frequency: the YIN algorithm in eight tools, the McLeod method in Note Finder. A reading is rejected if it is not clear enough (the “clarity” limit) or outside the tool’s frequency range.
- Most tools smooth readings with a median of the last 3 or 5 and use an octave guard, which folds back one- or two-frame jumps of exactly an octave while accepting a real leap that lasts.
- Frequency becomes a note with
n = 69 + 12 × log₂(f / 440). Rounding n gives the note (MIDI 69 = A4 = 440 Hz); the remainder, times 100, is the cents offset. For example 261.63 Hz is C4 and 880 Hz is A5. - Each tool then applies its own rules, listed next.
The tools in detail
Everything below comes from the tools’ source code and build notes (versions built on 2026-09-29 and 2026-09-30). “Synthetic” means computer-generated test tones, not human voices.
| Tool | Measures | Method and rules | Limits | Privacy (code review) |
|---|---|---|---|---|
| Pitch Accuracy Test | Cents off each target note; score out of 100. Optional pitch-hearing test. | Targets in a Lower (G2–D4), Middle (C3–G4) or Higher (G3–D5) set; 5, 10 or 20 rounds. YIN, 60–1,400 Hz, clarity 0.8+. A note counts after about 0.9 s within one semitone (median, first 20% skipped); 12 s per note. Points: 100 at 5 cents or less off, straight line down to 0 at 50 cents or more; score = average, misses 0. ±30/±20/±10 cents only sets “in tune”. Hearing test: which of two tones is higher, from 100 cents apart, up to 60 pairs. | Verdict wording is the tool’s own. One voice only. No test log on file: code read, not test-run. | No network, storage, cookie or recording calls found in script.js. |
| Singing Grader | A 1 to 10 grade from centring on the semitone grid, steadiness, clear-pitch time and range used, over a 15, 20 or 30 s take. | YIN, 60–1,400 Hz, clarity 0.8+. Held note = within 0.6 semitone for 0.4 s+; at least 3 needed. Grid shifts to your own tuning centre (no reference note). Grade = 0.6 centring + 0.2 steadiness + 0.1 clear-pitch time + 0.1 range (each 0–10), minimum 1. | No rhythm, timing, tone or “right notes of the song” scoring. Constants are decisions, not calibrated on real voices. Steady random pitches still grade about 7 (synthetic). | No network, storage or recording calls found; mic released when the take ends. |
| High Note Test | The highest target you hold, and steps cleared. Not your lowest note, range or voice type. | Targets climb by semitone or whole tone from C3, G3, C4 or C5 up to C7. Cleared after 1 s within ±50, ±35 or ±20 cents; 8 s per try, 2 tries. YIN, 70–2,150 Hz, clarity 0.85+, octave checks. An octave off never counts. Highest note at any length (250 ms+) shown separately. | Synthetic: weak low fundamentals read an octave up in 0.2–0.6% of frames; in heavy noise about 2% of frames read wrong and 23% none. Cannot tell registers. | No network, storage or recording calls found; mic released when the take ends. |
| Voice Frequency Test | Speaking or singing pitch in Hz: median, nearest note, lowest and highest (5th/95th percentile), variation or steadiness. | YIN (threshold 0.20), clarity 0.80+, 60–1,200 Hz; 10/20/30 s; needs 15+ voiced frames (about 0.5 s). Speaking bands are the tool’s own (under 100 Hz “very low” to 260+ “very high”); no gender, age or health inference. | Below 60 Hz no reading; above 1,200 Hz “out of range”. One voice; whisper, breathy sound and music are unreliable. Some phones may ignore the “processing off” request (not tested). | No network, storage or recording calls found; mic released when the take ends. |
| Singing Note Detector | Live note, Hz and cents; a log of held notes (up to 40) with lowest and highest; optional reference tone C2–C6. | YIN (threshold 0.15), 55–2,200 Hz, median of 5, octave guard (a real leap shows after about 0.13 s). Held note = within ±0.6 semitone for 400 ms+. | One note at a time: synthetic C4 + E4 reads as C2. Whisper and vocal fry usually give “no clear note”. No key detection; list not saved. | No network, storage or recording calls found; mic released when the take ends. |
| Voice Type Test | Closest voice type from your lowest, highest and optional easiest note; soprano-or-alto or tenor-or-bass answer; estimated comfortable zone. | YIN, 60–1,400 Hz, clarity 0.8+; each note held 0.8 s within one semitone; notes can be entered by hand (C2–C7). Match = overlap with six fixed textbook ranges minus a small centre-distance term; “between” if scores are within 0.06. Zone = lowest + 2 to highest − 5 semitones (range of an octave or more). | Estimate from three notes, not a classification. Easiest note is self-reported; the “leaning” rule is a two-semitone heuristic. No passaggio detection. Not validated on real voices. | No network, storage or recording calls found; mic released when the take ends. |
| Note Finder | Notes in order on a staff and keyboard (Hz, cents, octave) from a phrase or an audio file; lowest, highest, span; time-stamped table and CSV for files. | McLeod pitch method with an instrument range (Voice 60–1,400 Hz, Any 50–2,000 Hz…), octave guard, median smoothing. Note listed after about 0.3 s. Settings: instrument transposition, Do-Re-Mi, A4 400–480 Hz, room noise. Files up to 30 MB / 5 min decoded in the browser. | One note at a time. Rare octave-up misreads (about 1 in 3,000 synthetic frames). “Auto” room calibration (first 0.7 s) can drop quiet notes. Mic stays on in a hidden tab until you press Stop. | No network or recording calls; files read locally. Four settings saved in browser localStorage. |
| Voice Quality Test | Readouts for one held vowel: pitch evenness (jitter-like), loudness evenness (shimmer-like), clarity (harmonics-to-noise), brightness, plus room-noise, clipping and browser-processing checks. Compares two takes. | Room check 1.5 s, then a 4, 6 or 10 s take. YIN (threshold 0.25), 65–1,000 Hz, cycle-by-cycle waveform matching. Bands are the tool’s own words, not norms. | No score, no diagnosis. Synthetic bias: jitter-like readings 0.53–1.16× and shimmer-like 0.71–0.79× the true value, so not comparable with Praat or clinical reports. Microphone and room matter. | No network, storage or recording calls found; mic released when the take ends. Previous take kept in page memory only. |
| Vocal Scale Finder | Which of 72 scales (12 keys × six types) best fits the notes you hold, with reasons. | YIN (0.15), 55–2,200 Hz. Held note = within ±0.6 semitone for 250 ms+, each note adds up to 2 s to its pitch class; needs 4+ different notes. Score = share of singing time on scale notes − 0.03 per unsung scale note + small home-note hint − small prior for harmonic minor and blues. Notes can be tapped in by hand. | One note at a time. Relative major/minor share every note; modes not ranked separately; four notes can fit nine scales. Six types, A4 = 440 Hz. Right scale first in 72 of 72 synthetic scale-shaped phrases; real melodies are more ambiguous. | No network, storage or recording calls found; mic released when the take ends. Notes in page memory only. |
| Vocal Pitch Changer | Shifts the pitch of an uploaded or recorded take (presets from an octave down to an octave up, fine tune in cents, optional formant correction); saves WAV or MP3. | Runs in a Web Worker in your browser; files up to 100 MB / 6 minutes. On a synthetic tone the shifted pitch was within 0.1 cents of target. | Does not detect or grade singing. Sound on real voices and full songs untested. | No fetch, XHR, sendBeacon, WebSocket or storage calls found in its own scripts. MediaRecorder is used only for Record. Headless-Chrome test saw only same-origin GET requests. |
| Homepage range test | Lowest and highest notes, span and estimates, as the homepage describes. | Not yet documented at code level. | Not yet documented. | Not yet reviewed. |
How a vocal range is calculated
A range runs from the lowest to the highest accepted note. C3 to C5 is 24 semitones; with 12 semitones to an octave, that is 2 octaves. A note touched once at the edge of the voice is not necessarily comfortable or useful in songs, so do not force extremes to widen the number. The High Note Test reports only the highest held note, not a range.
Voice type, tessitura and registers
The Voice Type Test compares your notes with the six reference ranges below. They are educational approximations, not strict boundaries, and they are the same figures used in the tool’s code.
| Voice type | Reference range |
|---|---|
| Bass | E2–E4 |
| Baritone | A2–A4 |
| Tenor | C3–C5 |
| Contralto | F3–F5 |
| Mezzo-soprano | A3–A5 |
| Soprano | C4–C6 |
Classification also involves timbre, vocal weight, register transitions, training and repertoire, which a microphone tool cannot hear. The comfortable zone it shows follows a fixed pattern (lowest + 2 semitones to highest − 5), which follows the pattern in our table of typical zones by voice type; it is an approximation, not a measurement of comfort. Pitch alone cannot prove whether a note was chest, head, mixed voice or falsetto, so no tool labels your register from the sound. Background: the voice types guide and the vocal range chart.
The homepage singing range test
The homepage range test is older than the ten tools above and has not yet had the same code review, so this page does not describe its detection rules, stability filter or privacy behaviour. As the homepage presents it, the test finds the lowest and highest notes accepted in a session, converts them to notes and calculates the span, with guided modes currently labelled Quick, Professional and Guided. The live interface is the source for what each mode does; details will be added here after a review.
How the tools were tested
Nine of the ten rebuilt tools have automated test records dated 2026-09-29 or 2026-09-30. The checks used synthetic signals:
- engine tests that feed generated tones and noise through the real detection code;
- page tests in a simulated browser (jsdom) with a fake microphone and fake audio clock;
- for four tools, runs in headless Chrome or Edge with a fake microphone playing a generated audio file;
- checks that the WordPress plugin code loads, using a PHP interpreter with stand-in WordPress functions.
| Tool | Checks recorded | Signals and environment |
|---|---|---|
| Pitch Accuracy Test | None on file (code read only) | – |
| Singing Grader | 35 engine checks; browser run | Synthetic tones; headless Chrome, fake microphone fed a synthetic audio file |
| High Note Test | 62 engine checks; 27 page checks | Synthetic tones; simulated browser (jsdom) with a fake microphone |
| Voice Frequency Test | 35 engine; 14 PHP; 20 browser | Synthetic tones and speech-like signals; headless Edge, fake microphone |
| Singing Note Detector | 28 engine; 28 page checks | Synthetic tones; jsdom, fake microphone |
| Voice Type Test | 51 logic; 51 page checks | Synthetic tones; jsdom, fake microphone |
| Note Finder | 40 engine; 33 page checks | Synthetic tones and files; jsdom, fake microphone |
| Voice Quality Test | 58 engine; 22 PHP; 22 browser | Synthetic voices; headless Edge, fake microphone |
| Vocal Scale Finder | 37 engine; 36 page checks | Synthetic phrases; jsdom, fake microphone |
| Vocal Pitch Changer | 49 engine; 24 browser | Synthetic tones; headless Chrome, fake microphone |
The counts come from the build notes and have not been reproduced by an outside party. What these tests do not cover:
- real microphones and real human voices (speaking or singing), so real-voice accuracy is unmeasured and no accuracy percentage is published;
- Safari (Mac and iPhone), Firefox, Android, real phones and tablets, Bluetooth or USB microphones;
- a real WordPress installation with our theme and plugins, and a schema validator;
- screen readers, and performance on low-end phones;
- the homepage range test, which has not been reviewed.
Privacy: what was checked and what was not
For the ten tools, the code was searched for network, storage and recording calls (fetch, XMLHttpRequest, sendBeacon, WebSocket, MediaRecorder, localStorage, cookies). No network calls were found, so the code has no path that uploads audio. Two exceptions to “nothing is stored or recorded”: Note Finder saves four settings in your browser, and the Vocal Pitch Changer records your take into memory on your device when you press Record. Reading code is not the same as capturing network traffic in a real browser, which has not been done.
The rest of the site uses cookies and analytics, and the homepage test is not covered by this review; the Privacy Policy is the source for data handling.
What an online vocal test cannot determine
These tools cannot diagnose vocal fold injury, nodules, neurological voice disorders, causes of persistent hoarseness or any medical condition, and they cannot tell whether a note was sung with strain. If singing causes persistent pain, recurring voice loss or unexplained hoarseness, see a qualified healthcare professional rather than relying on a range result.
Try the tools
- Pitch Accuracy Test
Sing target notes and see how many cents off you are.
- Singing Grader
A 1 to 10 grade for a short take, with the formula shown.
- Climb to your top note
Hold each rising target for one second and see the highest you clear.
- Voice Frequency Test
Your speaking or singing pitch in Hz.
- Live note readout
The note you are singing right now, with cents and a log of held notes.
- Voice type from three notes
An estimate from your lowest, highest and easiest note.
- Note Finder
Notes in order on a staff, from a phrase or an audio file.
- Voice Quality Test
Separate readouts for one held vowel, with no single score.
- Which scale am I singing?
Ranks 72 scales against the notes you hold.
- Vocal Pitch Changer
Shift your own recording up or down and save it.
Who maintains this page
SingingRangeTest.com is created and maintained by Sam Cooke; see the Author page. Sourcing and correction standards are in the Editorial Guidelines. To report a mistake on this page, use Contact Us.
Page last reviewed: .