Interval Timer Online - Free HIIT, Tabata & Custom Workout Timer
Free online interval timer for HIIT, Tabata, boxing & custom workouts. Set work/rest periods, rounds, warmup & cooldown with audio cues.
About
Interval training demands precise phase transitions. A miscounted rest period or a late work-phase start compounds across rounds. Over a 20-round Tabata session, even 2s of drift per cycle produces 40s of cumulative error. That deviation corrupts the metabolic stress profile the protocol depends on. This timer uses browser-native performance.now() with delta-time correction to keep drift below 16ms per phase. Audio cues are synthesized in real time via the Web Audio API. No sound files to load or fail. The oscillator fires a 880Hz tone for work, 440Hz for rest, and a triple-beep sequence at workout completion. Screen Wake Lock prevents the display from sleeping mid-set.
The tool ships with standard presets: classic Tabata (20s work / 10s rest × 8), boxing rounds (180s / 60s × 12), and EMOM (60s / 0s × 10). Custom configurations accept warmup and cooldown phases. All settings persist across sessions. Limitation: browser tab throttling on mobile can delay setInterval callbacks when the screen is locked. The Wake Lock API mitigates this on supported browsers but is not universal.
Formulas
Total workout duration is computed as:
Ttotal = Twarmup + n × (Twork + Trest) + Tcooldown
where Twarmup = warmup duration in seconds, n = number of rounds, Twork = work phase duration, Trest = rest phase duration, Tcooldown = cooldown duration.
Drift correction per tick uses delta-time:
elapsed = performance.now() − tphaseStart
remaining = max(0, Tphase − elapsed)
Circular progress uses SVG stroke offset:
offset = C × (1 − elapsedTphase)
where C = 2πr is the circle circumference. Audio beep frequency: work phase = 880Hz (A5), rest phase = 440Hz (A4), completion = 1760Hz (A6) triple-pulse.
Reference Data
| Protocol | Work | Rest | Rounds | Total Time | Target Zone |
|---|---|---|---|---|---|
| Tabata Classic | 20s | 10s | 8 | 4min | 170% VO₂max |
| Boxing Standard | 180s | 60s | 12 | 48min | 75 - 85% HRmax |
| HIIT Sprint | 30s | 30s | 10 | 10min | 85 - 95% HRmax |
| EMOM | 60s | 0s | 10 | 10min | Varies |
| Pomodoro Work | 1500s | 300s | 4 | 120min | Focus / Recovery |
| Circuit Training | 45s | 15s | 12 | 12min | 70 - 80% HRmax |
| Wim Hof Breathing | 90s | 15s | 3 | 5min 15s | Breath hold / Recovery |
| Crossfit AMRAP | 600s | 120s | 3 | 36min | 80 - 90% HRmax |
| MMA Round | 300s | 60s | 5 | 30min | 80 - 90% HRmax |
| Yoga Flow | 40s | 5s | 15 | 11min 15s | Flexibility / Balance |
| Running Intervals | 120s | 60s | 8 | 24min | 80 - 90% HRmax |
| Stretching Routine | 30s | 5s | 20 | 11min 40s | Low intensity |
| Sprint 8 | 30s | 90s | 8 | 16min | 90 - 100% HRmax |
| Little Method | 60s | 75s | 12 | 27min | 90 - 95% HRmax |