UnQTools
Developer Runs in your browser

Online Stopwatch & Timer

A drift-free stopwatch (with laps/splits), countdown timer (with alarm) and Tabata interval timer — timestamp-anchored for accuracy after backgrounding or sleep. Run multiple named timers at once, see lap analytics (fastest/slowest/avg), export laps as CSV, use Pomodoro & Tabata presets, fire a Web Audio beep alarm, drive everything from the keyboard. State persists across refresh. 100% client-side.

100% Private Works Offline Instant

About Online Stopwatch & Timer

A drift-free stopwatch (with laps/splits), countdown timer (with alarm) and Tabata interval timer — timestamp-anchored for accuracy after backgrounding or sleep. Run multiple named timers at once, see lap analytics (fastest/slowest/avg), export laps as CSV, use Pomodoro & Tabata presets, fire a Web Audio beep alarm, drive everything from the keyboard. State persists across refresh. 100% client-side. Everything runs locally in your browser — your data never leaves your device.

How to use

  1. Enter your input in the tool above.
  2. Adjust any options to your preference.
  3. Use the Copy or Download buttons to save the result.
  4. Everything happens locally — your data never leaves your browser.

FAQ

How does the stopwatch stay accurate when the tab is backgrounded?

We never rely on setInterval counting ticks. Instead each timer anchors to a wall-clock timestamp (Date.now()) when it starts or resumes, and we recompute the elapsed time on every paint. Even if the browser throttles the timer in the background, when the tab regains focus the elapsed value snaps to the correct drift-free total. Pausing accumulates the pre-pause elapsed time so resume continues exactly where you left off.

Can I run multiple timers at once?

Yes. Add as many named timers as you like — stopwatches, countdowns and Tabata timers can all run simultaneously, each with its own name and color. Every timer is independent: pause one without affecting the others. All running timers are persisted to localStorage so a refresh or accidental close restores them in their current state.

What is a Tabata timer and how does it work here?

Tabata is a high-intensity interval training format: 8 rounds of 20 seconds work followed by 10 seconds rest (4 minutes total). This tool implements it with a configurable work/rest/rounds structure, advancing the round counter automatically, alternating phases, and beeping at each transition. Standard Tabata (20s/10s × 8) is a one-click preset, as is Pomodoro (25m work / 5m break × 4 rounds).

How do the lap times and analytics work?

On a stopwatch, pressing Lap records the current elapsed time. Each lap stores its split (time since the previous lap) and its cumulative total. After two or more laps we show fastest, slowest and average split automatically. You can export the full lap table as CSV or plain text for coaches, race timing or personal logs.

What extra features does this tool have compared to others?

(1) Drift-free timestamp-anchored stopwatch. (2) Countdown timer with audible alarm. (3) Tabata interval timer with rounds/phases. (4) Multiple concurrent named timers with colors. (5) Lap recording with split + cumulative times. (6) Lap analytics: fastest / slowest / average. (7) Pomodoro presets (25/5, 50/10, custom). (8) Tabata presets (20/10 × 8). (9) Web Audio API beep alarm (no audio file needed). (10) Keyboard shortcuts (Space start/pause,L lap, R reset). (11) State persists across refresh (localStorage). (12) Lap table export as CSV and TXT. (13) Shareable `?d=25m` link. (14) Tab title shows live remaining/elapsed time. (15) 100% offline, no network, no upload.

Is my data sent anywhere?

No. All timing runs locally using the browser's clock and Web Audio API. Timer state and lap history are stored in localStorage on this device only.

Search tools and actions

Search across all 616 tools, categories, and quick actions.