How to use it
- Click Start the mic test and allow the microphone in the browser prompt.
- Speak normally. The bar, the dB readings and the waveform move with your voice; the thin marker is the peak hold.
- If you have several inputs, pick the right one in Input device – the meter restarts on that device.
- Optionally click Record 5 s, talk, then press play on the clip to hear what others hear. Discard it when done.
- Click Stop the test to release the microphone.
Example
A USB headset in a quiet room: with nobody talking the meter reads about −70 dBFS (“Silent”, a little room noise). Speaking at a normal volume 20 cm from the mic, the average sits around −22 dBFS with peaks near −10 dBFS – the “Good” range. Shouting pushes the peaks above −0.5 dBFS and the bar turns red: that is clipping, and the recorded sound will be distorted, so lower the input gain or move the mic away.
How the meter is calculated
The microphone stream feeds a Web Audio AnalyserNode (2048 samples per frame). For each animation frame the tool takes the raw samples, computes the root-mean-square level and the largest absolute sample, and converts both to dBFS. The bar maps −60 dBFS to 0 % and 0 dBFS to 100 %. The peak-hold marker keeps a new maximum for 1.5 seconds and then falls at 20 dB per second.
rms = sqrt( mean( sample² ) )
dBFS = 20 × log10( amplitude ) 1.0 → 0 dBFS, 0.5 → −6 dBFS, 0.1 → −20 dBFS
bar % = (dBFS + 60) / 60 × 100Verdicts: Silent below −60 dBFS average, Very quiet to −45, Quiet to −30, Good from −30 to −8, Loud above −8, and Clipping whenever a peak reaches −0.5 dBFS. The browser applies its default processing (echo cancellation, noise suppression, automatic gain) as it would for a call, so the readings match what Zoom, Teams or Meet would receive rather than the raw hardware level.
The playback check uses MediaRecorder (WebM/Opus in Chrome, Edge and Firefox; MP4/AAC in Safari). The clip is a Blob in memory; a temporary blob: URL plays it, and the URL is revoked when you discard the clip, start again or leave the page.
Sources: MDN – AnalyserNode, MDN – MediaDevices.getUserMedia(), MDN – MediaRecorder, Wikipedia – dBFS.
If the microphone does not work
Permission blocked: click the lock or camera icon left of the address bar and set Microphone to Allow, then reload. No device found: the OS does not expose an input – plug the mic in, check Bluetooth, or enable it in Windows Sound settings / macOS System Settings. Busy / could not start: another app (a call, OBS, a voice assistant) has exclusive access; close it. Meter runs but stays silent: the selected input is the wrong one or muted – many headsets have a physical mute switch, and Windows has a separate per-app microphone privacy setting. Very quiet: raise the input level in the OS or move closer; a level around −40 dBFS will be hard to hear in calls.
Questions
- Is my voice recorded or uploaded?
- No. The level meter only reads samples from the microphone stream inside your browser. The optional 5-second clip is recorded into memory on your device for playback and is discarded when you click Discard, start again, stop the test or close the page. CalcPark has no server that could receive audio.
- What level should my microphone show?
- For speech, an average around −30 to −12 dBFS with peaks below −3 dBFS is comfortable for calls and recordings. Below −45 dBFS others will struggle to hear you; peaks at 0 dBFS mean the signal is clipping and sounds distorted.
- Why does the browser ask for permission every time?
- Browsers remember the choice per site when you pick Allow; if you chose Allow this time only (Safari, Firefox) or the site is open in a private window, the prompt returns on the next visit. The microphone is requested only when you click Start, never on page load.
- Can I test a specific microphone?
- Yes. After you allow access, the Input device list shows every audio input the browser can see; choosing one restarts the meter on that device. Browsers hide device names until permission is granted, which is why the list appears only after Start.