Hold a mechanical watch near your microphone and measure its rate (seconds fast/slow per day) and beat error (ms) from the sound of its ticking — using a real audio signal-processing pipeline that runs entirely in your browser.
Hold the watch as close to the mic as possible, in a quiet room, and keep it still — handling noise and background sound both reduce accuracy. Longer, quieter captures give a more stable rate reading.
Watchmakers typically test rate/beat error in several positions (dial up, crown up, crown down…) and compare them. to keep every reading from this session in one table, labeled by position, and export it as a CSV.
A mechanical watch's balance wheel swings back and forth at a fixed frequency — its "beat rate," stated in vibrations per hour (bph) — and each swing produces an audible tick from the escapement. This tool listens through your microphone, isolates those ticks from background noise, measures the precise timing between them, and compares that timing to what the watch's stated beat rate predicts. The signal chain is: microphone input → a high-pass filter (removes low-frequency room rumble and voices, keeping the sharp click of the tick) → a rectify-and-smooth envelope follower (turns the raw waveform into a loudness contour) → adaptive peak detection (finds the exact moment of each tick against a threshold that adjusts to the room's noise floor) → interval math that turns those tick timestamps into the numbers below.
The tool measures the actual average time between ticks and compares it to the theoretical interval for your watch's selected beat rate (for example, a 28,800 bph movement should tick every 125 milliseconds). If ticks are happening slightly faster than that, the watch is running fast; slower, and it's running slow. That per-tick difference is extrapolated to a full day to give the familiar "+8 seconds/day" style reading. Longer capture windows average out more measurement noise and give a more stable number — a few seconds of ticks can be noisy; 15+ seconds is much more reliable.
A healthy escapement should produce evenly spaced "tick" and "tock" sounds — the gap from tick-to-tock should equal the gap from tock-to-tick. Beat error is the difference between those two alternating gaps, in milliseconds. A well-regulated watch typically shows well under 1ms; several milliseconds or more usually points to an escapement that needs adjustment by a watchmaker.
Professional timegrapher machines measure true angular amplitude (how many degrees the balance wheel swings) using calibrated acoustic sensors clamped directly to the watch. A phone or laptop microphone, picking up sound through open air at an unknown, uncontrolled distance, cannot reproduce that — there is no reliable way to convert "how loud the tick sounded to this mic" into "how many degrees the balance swung" without proper calibration. So this tool shows only a relative loudness indicator for the ticks it detected in a session — useful for comparing "louder vs. quieter" across two recordings of the same watch in the same position, but not a calibrated amplitude measurement, and it is labeled as experimental in the results.
getUserMedia and every stage of analysis — filtering, envelope detection, peak picking, and the rate/beat-error math — happens locally in your browser. See the privacy policy for full details.Testing a watch — rate, beat error, the full DSP pipeline — is free and unlimited. Pro adds:
Already purchased? Restore with the email you used at checkout — no password needed:
Secure checkout by Stripe. Your microphone audio is never uploaded — the license only unlocks the session log/CSV export, it never collects audio or data.