Most Pomodoro guides tell you to work 25 minutes and rest 5. They skip the part that decides whether the routine survives the second day: what the timer does when it hits zero. We maintain a Pomodoro timer on WebRecast, and every break decision in it is a rule you can inspect in the source. This article walks through those rules, the limits we chose, and the honest failure cases.
The defaults and the cycle rule
The timer ships with four numbers: 25 minutes of focus, a 5 minute short break, a 15 minute long break, and a long break after every 4 focus sessions. Those match the classic method described in the tool's tip panel, which credits Francesco Cirillo's technique from the 1980s.
The break you get after a focus session is deterministic. When a focus session ends, the completed count goes up by one. If the new count divides evenly by your long-break frequency, the timer loads the long break. Otherwise it loads the short break. After any break, focus loads next. There is no judgment involved, which is the point. You never negotiate with yourself about which break you have earned.
With the default frequency of 4, the sequence reads: focus, short, focus, short, focus, short, focus, long, repeat. Change the frequency to 2 and the cycle becomes focus, long, focus, long.
What the timer refuses to do
The timer does not auto-start the next session. When a session ends, playback stops and the next mode loads paused. You press play again for every session.
We kept that behavior deliberately. An auto-chained timer turns a break into a countdown you lose to, and a long break that rolls into focus on its own interrupts you mid-stretch. The cost is real friction. During the gap between sessions you can drift into your phone and never press play. If that happens to you often, treat the gap as part of the routine: stand up, then return and press play before you sit down.
Settings, ranges, and persistence
Open the settings panel and you can change four values. The focus length accepts 5 to 90 minutes in steps of 5. The short break accepts 1 to 30. The long break accepts 5 to 60. The long-break frequency accepts 2 to 8 sessions in steps of 1.
Two behaviors matter more than the ranges:
1. Saving settings stops the timer and resets the current session to the new length. A half-finished 25 minute session does not carry over into a 45 minute one.
2. Settings persist to localStorage under the key wr-pomodoro-config, so they survive a reload. Your counts do not. Completed sessions, focus minutes, and the long-break countdown live in component state, and a refresh clears them. If you want a durable record, write your completed count down at the end of the day.
The three numbers on screen
The stats row shows three values computed from the completed count. Completed sessions is the raw count. Focus time equals the completed count multiplied by your focus length, so three sessions at the default 25 minutes report 75 minutes. Sessions until the long break equals your frequency minus the remainder of the count divided by the frequency, so after two sessions at frequency 4 you see 2.
One caveat follows from the formula. Focus time uses your current setting, so if you finish three sessions at 25 minutes and then raise the setting to 50, the display jumps to 150 minutes. Read the stat as an estimate based on today's configuration, not a log.
The beep and the tab countdown
At zero, the timer plays three tones at 880 Hz, starting at 0, 0.15, and 0.3 seconds, each fading over about 0.2 seconds through the Web Audio API. Audio failures are caught and ignored, because browsers can block audio before you interact with the page. Do not rely on the beep alone.
The fallback is the browser tab itself. While running, document.title shows the remaining minutes, seconds, and mode label. If the beep is muted, the countdown in the tab still tells you a session ended, as long as you keep the tab visible somewhere.
Build the routine in five steps
1. Open the settings and set the focus length to the shortest length you can finish reliably. Raise it only after three full days of completed sessions.
2. Before pressing play, write the one task for the session in a single line.
3. Press play and work until the timer stops. If an interruption cannot wait, stop the session and restart it later. Do not count a broken session as focus.
4. During a break, stand up and leave the screen. Return before the break ends and press play yourself.
5. At day's end, record the completed count before you close the tab, because the counter resets on refresh.
Checklist before you trust your session count
- One named task existed before the timer started.
- Every counted session ran to zero without a stop.
- Breaks were taken in the mode the rule selected, short or long.
- The completed count was written down before any reload.
- Focus time was read with today's focus setting in mind.
Where the method fails
The Pomodoro cycle fits self-directed work and fits it poorly for meetings, support shifts, or pair sessions that run on someone else's clock. The fixed cycle also fights deep work that needs a longer runway. Our 90 minute ceiling covers most of that range, but the tool has no pause-and-resume across a reload, and stats are per-visit. Those are the current limits.
Try the rules with your own numbers on the [Pomodoro timer](/en/pomodoro). If your long-break frequency works better at 3 or 6 than the default 4, or if you find the manual restart more costly than useful, that tradeoff is worth hearing about.