Stopwatch and Timer

A precise online stopwatch with lap tracking and a countdown timer with alarm. Millisecond accuracy, keyboard controls, CSV export, and fullscreen mode. Runs entirely in your browser with no installation.

Last updated: March 2026
00:00:00.000
Stopwatch
Space Start / Stop L Lap R Reset
Lap Times
Lap Lap Time Split Time
Press Lap to record split times
00:00:00
Countdown Timer
:
:
Repeat
Space Start / Pause R Reset

What Is an Online Stopwatch

An online stopwatch is a browser-based timing tool that measures elapsed time from the moment you press start until you press stop. Unlike a physical stopwatch, it requires no hardware and works on any device with a web browser: phones, tablets, laptops, and desktops. The tool above measures time with millisecond precision using JavaScript's Date.now() function, which returns timestamps from the system clock.

The key advantage of a software stopwatch over a hardware one is the data it can record. Each lap is stored in a table with both lap time (the duration of that specific lap) and split time (total elapsed time from the start). You can see at a glance which lap was fastest and which was slowest. The data can be exported as a CSV file for analysis in a spreadsheet.

This stopwatch continues running accurately even if you switch to another browser tab. Many web timers lose accuracy in background tabs because browsers throttle JavaScript intervals. This tool sidesteps that problem by calculating elapsed time from timestamps rather than counting interval ticks. When you return to the tab, the display shows the correct time.

Stopwatch vs Timer

A stopwatch counts up from zero. You start it and let it run until you decide to stop. It answers the question: how long did that take? A timer (or countdown timer) counts down from a set duration to zero. You specify the target time in advance and the timer tells you when that duration has passed. It answers the question: has enough time passed yet?

Both tools measure time, but they serve different purposes. Stopwatches are used for measuring events whose duration is unknown in advance: running a race, timing a presentation, tracking how long a task takes. Timers are used when you know how long something should last: cooking for 10 minutes, taking a 5-minute break, timing an exam period.

This tool includes both. The Stopwatch tab gives you a count-up timer with lap recording. The Countdown Timer tab gives you a configurable countdown with an alarm that sounds when it reaches zero. Both share the same keyboard shortcuts and fullscreen mode.

How Lap Timing Works

When you press the Lap button, the stopwatch records two values. The split time is the total elapsed time from when you first pressed Start. The lap time is the time elapsed since the previous lap (or since the start if this is the first lap). The difference matters for analysis.

Consider a runner doing 400-meter laps on a track. After four laps, the split times might be 1:12, 2:28, 3:50, 5:15. The corresponding lap times would be 1:12, 1:16, 1:22, 1:25. The split times show overall progress, while the lap times reveal pacing -- this runner slowed down with each successive lap.

The table highlights the fastest lap in green and the slowest lap in red (when there are at least 3 laps). These visual indicators make it easy to spot your best and worst segments without doing mental arithmetic. For athletic training, knowing your fastest and slowest intervals helps you calibrate your pacing strategy.

The export function generates a CSV file with columns for lap number, lap time, and split time. You can open this file in any spreadsheet application (Excel, Google Sheets, LibreOffice Calc) for further analysis, charting, or record-keeping.

Using Timers for Productivity

Countdown timers have direct applications for productivity beyond the Pomodoro Technique. Timeboxing is a project management method where you allocate a fixed amount of time to a task and stop when the timer expires, regardless of whether the task is finished. This prevents scope creep and forces prioritization.

Meeting timers keep discussions on track. Setting a 15-minute countdown for a standup meeting or a 5-minute countdown for each agenda item creates a shared sense of urgency that reduces tangents. The visual progress bar provides a non-verbal cue that time is running out.

Study sessions benefit from timed intervals. The spacing effect in memory research shows that distributing study across multiple shorter sessions produces better retention than one long session. A countdown timer helps enforce those boundaries. Set it for your planned study duration, work until it rings, take a break, and repeat.

The repeat toggle on the countdown timer is useful for interval training, both physical and mental. Set a duration, enable repeat, and the timer automatically restarts when it hits zero. This is practical for HIIT workouts, timed drills, or any situation where you need recurring intervals of the same length.

Accuracy and Browser Behavior

JavaScript timing in browsers is subject to certain constraints. The system clock provides millisecond-resolution timestamps, but the actual precision depends on the browser and operating system. Most modern browsers deliver timing accuracy within 1-2 milliseconds, which is sufficient for nearly all practical use cases.

When a tab is in the background, browsers may reduce the frequency of timer callbacks (setInterval, setTimeout, requestAnimationFrame) to save battery and CPU. This tool compensates by storing the start timestamp and calculating elapsed time on each frame. The displayed time is always derived from the difference between the current timestamp and the start timestamp, so it remains accurate regardless of callback frequency.

For applications requiring sub-millisecond precision (scientific instruments, high-frequency trading), a browser-based timer is not the appropriate tool. For athletics, cooking, studying, and general productivity, the accuracy provided here is more than adequate.

Frequently Asked Questions

How accurate is this stopwatch?

The stopwatch uses Date.now() for timing, which provides millisecond-resolution timestamps from your system clock. In practice, accuracy is within 1-2 milliseconds on modern browsers and operating systems. This is sufficient for athletics, cooking, presentations, and general productivity. It is not suitable for scientific measurements requiring sub-millisecond precision.

Does the timer keep running if I switch tabs or lock my phone?

Yes, the timer continues tracking time accurately when the tab is in the background. It calculates elapsed time from timestamps rather than relying on interval callbacks, so throttling by the browser does not affect accuracy. When you return to the tab, the correct time is displayed. However, if the browser fully suspends the page (some mobile browsers do this aggressively), the timer may need a moment to update when you return.

How do I export my lap times?

After recording laps, click the "Export CSV" button below the lap table. This downloads a CSV file containing columns for lap number, lap time, and split time. You can open this file in Excel, Google Sheets, LibreOffice Calc, or any other spreadsheet application for further analysis or record-keeping.

What sound does the countdown alarm make?

The alarm is generated using the Web Audio API directly in your browser. It plays a series of ascending tones that are distinct enough to be heard but not jarring. No external audio files are downloaded. The alarm requires that you have interacted with the page at least once (clicked a button) before it can play, due to browser autoplay policies.

Can I use this for interval training?

Yes. On the Countdown Timer tab, set your desired interval duration and enable the Repeat toggle. The timer will automatically restart each time it reaches zero, playing the alarm at each cycle. This works for HIIT workouts, timed drills, cooking intervals, or any activity that requires repeating timed segments.

ML

Michael Lip

Michael builds free tools and writes guides at zovo.one. He focuses on practical utilities that run client-side, load fast, and respect user privacy.

Last updated: March 2026