Online stopwatch
Counts up from zero to hundredths of a second, with unlimited laps and the statistics that make a set of laps mean something.
Elapsed
0 minutes 0 seconds elapsed, stopped.
Space bar starts and stops it, L takes a lap, R resets. Timing is measured against your device clock, so pausing this tab cannot make the reading drift.
What the lap figures mean
A lap has two numbers and they answer different questions. The split is how long that lap took on its own. The total is how long the whole run has taken up to the end of that lap. Most stopwatches show only one of them, and it is usually the one you did not want.
The "against average" column is the split minus the mean split. It is the fastest way to see whether a set was even or whether one rep fell apart, which a column of raw times hides. The bar beside each lap is that split measured against the slowest one, so the shape of a session is visible without reading a single figure.
Getting the laps out
Laps copy to the clipboard as CSV and download as a file, both with the raw millisecond values alongside the formatted ones, so a spreadsheet can do arithmetic on them without any parsing. Nothing is uploaded; the file is built in the browser.
How accurate this is, honestly
Elapsed time is the difference between two readings of your device clock, so the stopwatch itself adds no error. It cannot drift, because it never accumulates: pausing the tab, a slow frame or a busy machine changes when the screen updates, not what the reading is.
The real limit is you and the screen. A browser paints roughly every sixteen milliseconds, and human reaction time on a start or stop press is between one hundred and three hundred milliseconds. Hundredths are shown because they are genuinely measured, but treat anything under a tenth of a second as noise from the pressing rather than from the timing.
The display of hundredths pauses when the tab is hidden, because nothing is reading it. The elapsed time is recomputed from the clock the moment you come back, so the reading is correct rather than resumed.