Focus timer using Pomodoro technique with work/break sessions, circular progress, presets (Classic 25/5, Deep Work, 52/17), stats tracking, and auto-start options
Stay focused with timed work-and-break cycles based on the Pomodoro Technique. Customize session lengths, track completed rounds, and get notified when it's time to switch.
Initializing in your browser…
Dual-mode time tracker with stopwatch including lap times (fastest/slowest highlighting), countdown timer with presets, sound alerts, and browser notifications
Calculate IPv4 and IPv6 subnet details including network address, broadcast, host range, netmask, and wildcard mask
Find your public IP address, location, timezone, and ISP information instantly. Free, fast, and private IP lookup tool
You are deep in a refactor and want a focus rhythm that forces short recovery breaks without you watching a clock.
Configured cycle
Focus 25m · Short break 5m · Long break 15m after 4 focuses
Planned afternoon
13:00 Focus (25m) → 13:25 Break (5m) 13:30 Focus (25m) → 13:55 Break (5m) 14:00 Focus (25m) → 14:25 Break (5m) 14:30 Focus (25m) → 14:55 Long break (15m) Focused work this block: 1h 40m
The Pomodoro technique trades marathon sessions for fixed focus/break intervals so attention stays high and breaks are non-negotiable. The timer auto-advances between phases and tracks completed focuses toward the long break, so you only have to follow the prompt, not do the bookkeeping.
Stay focused with timed work-and-break cycles based on the Pomodoro Technique. Customize session lengths, track completed rounds, and get notified when it's time to switch.
This Pomodoro timer cycles through three session types - Focus (work), Short Break, and Long Break - and ships four built-in presets you can apply with one tap: Classic (25 min work / 5 short / 15 long, long break every 4 pomodoros), Short Focus (15 / 3 / 10 over 4 sessions), Deep Work (50 / 10 / 30 over 4 sessions), and the 52/17 Rule (52 / 17 / 30 over 3 sessions, based on DeskTime's productivity-data ratio). Beyond the presets, four sliders let you tune each value independently: work duration from 5 to 90 minutes in 5-minute steps, short break 1 to 30 minutes, long break 5 to 60 minutes in 5-minute steps, and sessions-before-long-break from 2 to 8. After the configured number of focus sessions the timer routes to a long break instead of a short one, and a row of progress dots beneath the ring fills in to show how many pomodoros remain in the current cycle.
Rather than decrementing a counter every tick (which browsers throttle and clamp in background tabs, causing drift over long sessions), the timer stores an absolute end timestamp - Date.now() plus the remaining seconds times 1000 - and recomputes the time left on each tick as Math.ceil of (end time minus now), polling every 100ms. This wall-clock approach means the displayed countdown re-syncs to real elapsed time whenever the tab regains focus, so a 25-minute focus block stays accurate even if the interval itself was throttled while backgrounded. The completion chime is synthesized live with the Web Audio API rather than a sound file: three sine-wave oscillators play an ascending C5-E5-G5 major chord (523.25, 659.25, 783.99 Hz) with a short attack-and-decay envelope, and the chord repeats once 600ms later for emphasis. Because of browser autoplay policy the AudioContext is resumed from a suspended state on interaction, so the chime is reliable only after you have clicked something on the page.
Optional desktop notifications use the browser Notification API; enabling them triggers a permission prompt, and on completion a session-specific message ('Work session complete! Time for a break.', etc.) is pushed so you get an alert even when the tab is not in front. Two auto-start toggles let the timer chain sessions hands-free - auto-start breaks rolls straight from work into the break, and auto-start work resumes focus after a break - otherwise it pauses and waits for you to press play. A live statistics panel tracks completed pomodoros, total work minutes, total break minutes, current streak, and best streak, with a Reset button; note these counters live in component state only and are not saved, so they clear on page reload. Your timer configuration, however, is encoded into the page URL (durations, session count, and the two auto-start flags), so the Share button produces a link that reopens the tool with the same setup - useful for sharing a team's agreed work/break cadence.
Use timed blocks to push through difficult tasks without distractions.
Break long study sessions into manageable chunks with enforced rest periods.
The classic is 25 minutes of work, 5-minute short break, and a 15-minute long break every four rounds. Adjust to suit your attention span.
Yes. You'll hear the alert even if the tab isn't active.
This runs as client-side JavaScript. Keys, tokens, payloads, and other inputs never leave your device.