An online stopwatch with start, pause, lap, and reset controls, accurate to hundredths of a second. Lap records show individual lap times and cumulative elapsed time
The Online Stopwatch is a browser-based timing tool — no installation needed, just open the page and start timing. It offers precision down to one hundredth of a second (10 milliseconds) with four core controls: Start, Pause, Lap, and Reset. Whether you're timing a workout, managing a presentation, or recording lab data, this stopwatch has you covered.
The Lap feature is the highlight: while the stopwatch is running, tap "Lap" at any moment to capture a split time. The system records both the individual lap time (difference from the previous lap) and the cumulative elapsed time. All lap records are displayed in a clean table with the most recent lap at the top for easy real-time reading. The display turns red while running, making it easy to see at a glance that the clock is ticking.
This tool runs entirely in your browser and requires no network connection after the initial page load. All timing relies on JavaScript's high-resolution timestamp API, delivering reliable accuracy unaffected by network latency.
The stopwatch's core timing mechanism is built on JavaScript's Date.now() high-resolution timestamps (millisecond precision). When you click "Start," the current timestamp is recorded as the start time. A setInterval timer updates the display every 10 milliseconds, computing the elapsed time as the difference between the current timestamp and the start time, plus any accumulated time from previous runs. When you pause, the timer is cleared and the accumulated time is saved. When you resume, a new start timestamp is recorded and timing continues from where it left off.
The lap feature computes individual lap times by comparing the total elapsed time at each lap click with the total elapsed time at the previous lap. All lap records are stored in a Vue 3 reactive array, with new records inserted at the head via unshift so the latest lap always appears at the top.
The time formatting function converts milliseconds into HH:MM:SS.CC or MM:SS.CC format (the hour portion is omitted when it's zero), where CC represents hundredths of a second obtained by dividing milliseconds by 10 and flooring the result.
Date.now() millisecond timestamps. The display refreshes every 10 milliseconds, ensuring real-time accuracy.Date.now() rather than a relative counter. Even if the browser throttles the timer interval while the tab is in the background, the display will correctly account for all elapsed time when you return.Basic timing:
Click "Start" to begin → click "Pause" to stop timing at any point → click "Start" again to resume → click "Reset" to clear.
Lap recording:
While the stopwatch is running, click "Lap" after each segment. For example, a 4-lap interval workout: Lap 1 at 1:05, Lap 2 at 1:08 (total 2:13), Lap 3 at 1:10 (total 3:23), Lap 4 at 1:06 (total 4:29) — all records clearly visible in the lap table.
This tool belongs to the time management family along with Online Alarm Clock and Online Countdown Timer. Each serves a different purpose: the stopwatch counts up, the timer counts down, and the alarm rings at a set time. For timezone conversion, see World Time. For date-time arithmetic, try Date Time Calculator.