Stopwatch provides a high-precision browser-based timing solution for sports, workouts, and coding benchmarks. This millisecond stopwatch tracks elapsed time using performance.now(), ensuring sub-frame accuracy even when the tab is in the background.
Lap recording captures both the split (time from the previous lap) and the cumulative split (time from the start), providing a reliable race timer for multi-step tasks. Reset requires confirmation when laps exist, preventing accidental data loss during a workout interval session.
It uses performance.now(), which provides sub-millisecond resolution capped to 1ms in most browsers for security reasons. Real-world accuracy is bounded by browser scheduling and your own reaction time - typically ±50ms for human-triggered start/stop.
Yes. Time is tracked by recording the start timestamp and computing now − start on every render. The display update is throttled when the tab is in the background (browsers do this for power), but the underlying count is always correct.
Yes - the lap list can be copied to the clipboard. Each lap shows both its split time (lap duration) and its cumulative time from the start, so the data is meaningful in either form.
Slightly - most browsers reduce performance.now() resolution to 1ms (down from microseconds) to prevent timing-based side-channel attacks. For a stopwatch this is plenty; for benchmarking sub-millisecond code, use the High-Resolution Time Level 3 API in a secure context.
Explore the full suite of Time tools and 290+ other free utilities at Chunky Munster with our Stopwatch.