piapia123
en

Online Stopwatch

Generators

Everything runs locally in your browser — nothing is uploaded

Stopwatch
00:00.00

Keyboard: Space to start or pause, L to lap, R to reset

Laps

No laps yet. While running, press Lap or the L key to record one.

A lap-timing stopwatch you can drive entirely from the keyboard: Space to start or pause, L to lap, R to reset. The readout goes to hundredths of a second, and the lap table gives each lap’s split, its total, and how far behind the fastest lap it is, with the fastest and slowest laps marked. The display refreshes every frame, but the reading is not accumulated frame by frame. This is where tools like this usually go wrong: add “16 milliseconds per frame” and switching to another tab — where the browser throttles animation frames to one or two per second — makes the stopwatch quietly lose time, while the digits keep ticking away as if nothing had happened. Here the reading is recomputed each time as the current timestamp minus the start, so the refresh rate affects only how smoothly the digits move, never whether they are right. Switch to another tab and it keeps running, and the reading is accurate when you come back. A lap records the total at that moment; the split is worked out when it is displayed. Pausing and resuming therefore never has to rewrite data that has already been recorded — and a stopwatch’s history should be read-only anyway. ⚠️ Reload the page or close it and the laps are gone. There is no account and no database here, and the tool deliberately writes nothing to `localStorage`: a stopwatch silently keeping your timing history in the browser is the wrong behaviour for something you use and leave. Copy the lap table out if you need to keep it.

Features

  • Hundredth-of-a-second precision, refreshed live while running
  • Each lap shows its split, its total and its gap to the fastest lap, with fastest and slowest marked
  • Keyboard: Space start / pause, L lap, R reset
  • Keeps running in a background tab — the reading comes from timestamps, so no time is lost
  • Paused time is not counted: the reading is the sum of the segments, not the span between the ends
  • Up to 500 laps (it says so when full rather than silently dropping the oldest)
  • Tabular figures, so the digits do not jitter as they change
  • Runs entirely on your machine, with no network requests at all

How to use

  1. Press Space (or click Start) to begin
  2. Press L (or click Lap) to record one; the split and gap appear immediately
  3. Press Space to pause and again to resume — the paused stretch is not counted
  4. Click Reset to clear everything and return to Ready

FAQ

Does it stop if I switch to another tab?
No. The reading is recomputed as the current timestamp minus the start rather than being accumulated per frame, so when the browser slows down animation frames in a background tab the stopwatch merely refreshes less often — no time is lost. This is exactly why many web stopwatches run slow in the background: they accumulate per frame (a fixed 16 milliseconds each), when the real gap between background frames is far longer.
Why is there a 500-lap limit?
Because every lap renders a row. Real stopwatches usually cap laps at around 100; the figure here is 500 because L is an easy key to hit — with no limit at all, holding it down would bog the page down. Once full it stops recording and says so rather than dropping the oldest lap: lap 1 means something on a stopwatch, and silently replacing it with lap 500 would leave you unable to reconcile the numbers.
Are the laps still there after I reload?
No. There is no account and no database, and the tool deliberately writes nothing to browser storage — a stopwatch quietly leaving your timing history in the browser is the wrong behaviour for something you use and leave. Copy the lap table out while the page is still open, or use a tool like timestamp conversion when what you need is absolute instants rather than durations.

Related tools