StopwatchHQ

Why Your Phone Alarm Fails — and Why Web Timers Have the Same Problem

The ordinary reasons an alarm you trusted did not fire, why a perfectly written web timer has the same weakness, and what it genuinely can and cannot do about it. Honest answers, with the measurements we actually ran.

Almost everyone has a story about an alarm that did not go off. The failure is rarely the clock — the phone knew the time perfectly. What failed was the wake-up: the thing that was supposed to make a noise at the right moment. Web timers inherit the same weakness, and a timer that trusts the browser to keep its schedule is closer to a phone alarm than its author would like to admit.

The one-line answer

An alarm only fires if something wakes up at the right time to fire it. Phones suppress wake-ups to save battery; browsers throttle and suspend them to save CPU. A web timer that counts ticks inherits every one of those delays. A timer that stores a wall-clock target, and checks it whenever it is next woken, keeps the correct time no matter how late the wake-up is — but the beep can still be late, for exactly the reason your phone alarm was. Keeping the tab visible is the web's version of checking the silent switch.

Why a phone alarm fails

The reason depends on which alarm you mean. A phone's own built-in alarm is treated as a privileged, system-level event, so the everyday suspects often do not stop it:

The lesson worth carrying across to the web is not the specific setting. It is that the timekeeping was never the problem. The wake-up was.

The web version of the same problem

A browser tab has its own wake-up problem. We measured it directly: a page opened in Chrome 154 on Linux, allowed to start, then backgrounded by activating a second tab — the same intent as clicking away, though not identical to a minimised window. We logged every timer callback with a timestamp and the page's visibility state.

A setInterval(100) that ran ten times a second while the page was visible was clamped to roughly once a second the moment the tab went to the background. A one-second timer was stretched toward two seconds per tick — a doubling we observed but that is not one of Chrome's documented tiers, so we report it as an observation rather than a rule. This is the same story as the phone: the timer did not stop, but its wake-ups were rationed.

And here is the honest part that most timer pages leave out. A tick-counting timer loses time, because it counts the callbacks the browser stopped sending. A timestamp-based timer keeps the correct time — the displayed value is right the instant anything wakes it — but the alert can still fire late by up to a second, or much longer once harsher throttling applies. Timestamps fix the reading, not the wake-up. For an exact alarm, that is the same limitation your phone imposes, and no amount of clever JavaScript removes it. (The full numbers are in our background-tab measurement.)

The three options people reach for, and what each really does

How the timers on this site cope

What this means for you

Limitations, stated plainly

Frequently asked questions

Can a web page reliably wake me up while I am in another tab?

No. The page can keep correct time, but the browser may not wake it on schedule, and mobile tabs are suspended even more aggressively. Treat a web alarm as a convenience, not a guarantee. Use your phone's built-in alarm for anything that matters.

Does silent mode stop my phone's alarm?

Usually not the built-in one — the Clock app's alarm sounds even with silent mode on, and Focus/Do Not Disturb do not block it by default. Silent mode does silence notifications, which is why third-party alarm apps and reminders are the ones that fail.

Why does a timer site ask me to tap before it can beep?

Because browsers block sound until you interact with the page. The tap unlocks audio; without it, the alarm tone is not allowed to play at all — and you have to tap again after any reload.

Does playing a sound stop the tab being throttled?

Our headless test found the first-tier clamp still applied with a silent oscillator playing, and headless has no audio device, so we will not claim otherwise. Chrome documents that audio exempts a tab from intensive throttling; trust that for the later tier only, and do not count on it for precise alerts.

Related tools and reading

The countdown timer, pomodoro timer and interval timer all use timestamp-based timing. For the measurements behind this piece, see what happens to timers in background tabs and how reliable a browser timer is.