Online Stopwatch with Lap Times
Millisecond-precision stopwatch with lap recording, anchored to wall-clock time so background throttling causes no drift.
Press Lap while running to record split times.
How the elapsed time is measured
Elapsed time is the difference between two timestamps, not a running total of interval ticks. Pressing start records one timestamp; every repaint subtracts it from the current time. That single design choice is what keeps the reading correct when the browser throttles timers in a background tab.
The clock used is performance.now() rather than Date.now(), for two reasons. It is monotonic — it cannot jump backwards if the system clock is adjusted by NTP or by the user, which would otherwise produce a negative lap time. And it offers sub-millisecond resolution, where Date.now() is limited to whole milliseconds.
Browsers deliberately reduce the precision of performance.now() — typically to somewhere between 20 microseconds and 1 millisecond — as a defence against timing attacks such as Spectre. That is far below what matters for a stopwatch, but it is why the last digits are not infinitely precise.
The realistic accuracy limit is not the clock. It is you: human reaction time to a visual cue is around 200–250 ms, and to an audible one around 150 ms. A stopwatch operated by hand is accurate to roughly a fifth of a second no matter how precise the display, which is exactly why competitive sport uses electronic timing gates.
Lap times and split times
Two different measurements, routinely confused:
- Lap time —The duration of the individual segment — the time since the previous lap was recorded. This is what tells you whether lap 4 was faster than lap 3.
- Split time —Total elapsed time at the moment the lap was recorded — cumulative from the start. This is what tells you whether you are on pace overall.
- Both are shown —Because you usually want both: the lap for per-segment performance, the split for total pace against a target.
- The fastest and slowest laps are highlighted —Which is the quickest way to spot where a run fell apart without reading every row.
About
The Stopwatch measures elapsed time with millisecond precision and lets you record multiple lap splits. It is ideal for time tracking tasks, sports, presentations, or any situation where you need accurate elapsed time measurement directly in your browser.
How to use
- 1 Click Start to begin timing.
- 2 Click Lap to record a split time without stopping the main timer.
- 3 Click Stop to pause and Reset to clear all lap times.
- 4 All lap times are listed in the table below for easy review.
- How precise is the online stopwatch?
- The stopwatch uses the browser's high-resolution performance.now() timer, which provides sub-millisecond precision. Display updates happen every 10 milliseconds, giving you three decimal places of accuracy that are more than sufficient for most timing tasks.
- Does recording a lap pause the main timer?
- No. Pressing Lap records the current elapsed time as a split without stopping or pausing the main stopwatch. The timer continues running seamlessly, so you can record as many laps as you need during a continuous timing session.
- Can I copy the lap times?
- Yes. The lap time table is selectable text, so you can select all lap times and copy them to your clipboard for pasting into a spreadsheet, notes app, or document. Each lap shows its individual split time and cumulative elapsed time.
More in Date & Time
See all date & time.