Online Stopwatch and Timer

Start, lap, reset, or count down instead.

Runs entirely in your browser

Loading the tool…

00:00.00

The stopwatch is driven by the browser's monotonic clock, so it stays accurate even if the system clock changes underneath it, and it does not drift when the tab is backgrounded. Lap times record each split alongside the running total, with the fastest and slowest laps marked.

Switch to countdown mode for intervals like workouts, brewing or presentations, and the page beeps when it reaches zero.

Counting down to a day rather than a duration, a birthday or a deadline months out, is what the countdown to a date page is for.

How to use it

  1. Press Start. Press Lap to record a split without stopping the clock.
  2. Press Stop to pause, then Start again to continue, or Reset to clear.
  3. Switch to Countdown, enter a duration, and press Start to run it down to zero.

Questions

How accurate is a browser stopwatch?

Displayed to a hundredth of a second, and accurate to a few milliseconds, because it reads a monotonic clock rather than counting frames. It is not a substitute for certified race timing.

Does it keep running in a background tab?

The elapsed time stays correct because it is computed from timestamps, not by counting ticks, but browsers throttle background rendering so the display may only catch up when you return to the tab.

What does the lap list show?

Each row is one lap: the split for that lap and the total elapsed at the moment you pressed Lap, with the fastest and slowest laps highlighted.

How long should a focus block be?

Twenty-five minutes on one task with nothing else open, five minutes away from it, and a longer break after the fourth round, is the pattern most methods land on. The specific numbers matter less than the commitment: the timer is what stops you checking something for a second and losing twenty minutes.

Will the alarm sound if I switch to another tab?

Usually yes, because the sound is scheduled through the browser's audio engine rather than a plain timer. But phones suspend a tab outright when the screen locks, and some desktop browsers throttle background audio. For anything you cannot afford to miss, leave the tab visible or use the alarm on your phone.

Does the count stay right if my screen turns off?

The elapsed time does, because it is worked out from timestamps rather than by counting ticks. What stops is the drawing: the display may freeze and then jump to the correct figure when you come back. The number you read is right either way.

Can I use this for race timing?

For a training session, yes. For anything official, no. Certified timing uses hardware triggers, a calibrated clock and a chain of custody for the result; a browser reading a monotonic clock has none of those, however many decimal places it shows.

Intervals people actually time

WhatTiming
Focus block25 minutes of work, 5 off, and a 15 to 30 minute break after four
High-intensity intervals20 seconds hard, 10 seconds rest, 8 rounds, 4 minutes in total
Plank or wall sit30 to 60 seconds a set
Rest between heavy sets2 to 3 minutes
Espresso shot25 to 30 seconds from first drip
Green tea2 to 3 minutes, water around 80C
Black tea3 to 5 minutes, water just off the boil
Herbal infusion5 to 7 minutes, full boil
Soft-boiled egg6 minutes from boiling, large and fridge-cold
Jammy yolk7 to 8 minutes
Hard-boiled10 to 12 minutes
Handwashing20 seconds, which is longer than it feels

Egg times assume a rolling boil and a large egg straight from the fridge. Start from a cold pan and every figure moves by two or three minutes, which is why recipes that say "boil for eight minutes" produce a different egg in every kitchen.

Timers ready to start

The lengths people ask for most have a page each, already set, so there is nothing to type before pressing Start:

Your data stays on your device

Everything above runs inside your browser as WebAssembly compiled from Rust. Nothing you type is uploaded, logged or stored on a server. You can load this page once, go offline, and it still works.

This page makes no requests at all, to anywhere. That is not a promise in the copy: it is a Content-Security-Policy header your browser enforces, and connect-src on it is none. Open the network tab and watch nothing happen.