Flip Clock
A live digital flip clock with fullscreen, 12/24-hour mode, and optional seconds.
What is a flip clock?
This tool perfectly recreates the classic flip clock effect with realistic page-turning animations for every digit change. It runs directly in your browser with no downloads required, featuring fullscreen mode, 12/24-hour format switching, and optional seconds display.
Perfect for: desk clock, office decoration, live streaming background, presentation timer, Pomodoro technique, large screen displays, and more. All time calculations happen locally, protecting your privacy.
How to Use
How to use
- The clock automatically displays the current time and updates in real-time
- Click the '12H/24H' button to switch time format
- Click the 'Seconds/No seconds' button to toggle seconds display
- Click the 'Fullscreen' button to enter fullscreen mode
- Settings are saved automatically and restored on next visit
Tips
- Use fullscreen mode on a projector, wall display, or spare tablet when the clock needs to be readable from across a room.
- Disable system sleep or screen dimming if the clock must stay visible during meetings, classes, or events.
- Choose 24-hour time for schedules shared across regions, and show seconds only when precise timing matters.
Use Cases
Technical Principle
Time itself comes from Date.now() in milliseconds since the Unix epoch, but a naive setInterval(fn, 1000) drifts because timers fire on best-effort scheduling and accumulate skew. The tool instead schedules the next tick by computing 1000 - (Date.now() % 1000) so the boundary lands on the actual wall-clock second, and uses requestAnimationFrame for the flip transition so the animation pauses automatically when the tab loses focus or the monitor is asleep. The Page Visibility API (document.visibilityState) re-synchronizes the displayed digits on visibilitychange, avoiding a stale value when the user returns after several minutes.
Display formatting reads from the browser locale via Intl.DateTimeFormat with the hourCycle option ('h23' for 24-hour, 'h12' for 12-hour with AM/PM). Daylight saving transitions are handled implicitly because Date methods like getHours() already return local time including offset shifts, so the clock skips from 02:00 to 03:00 in spring and shows 01:00 twice in autumn without extra logic.
- 3D flip: CSS transform: rotateX(-180deg) on an absolute layer, parent perspective: 600px, backface-visibility: hidden to suppress the mirrored back face
- GPU compositing: will-change: transform promotes the flipping element to its own layer so transitions are composited, not repainted
- Drift-free tick: setTimeout delay computed as 1000 - (Date.now() % 1000) so each tick lands on the actual second boundary instead of accumulating timer skew
- Animation timing: requestAnimationFrame drives the 0deg to -180deg transition, which the browser throttles automatically in background tabs
- Background recovery: Page Visibility API listens for visibilitychange and re-reads Date.now() so digits jump to the correct value when the tab regains focus
- Locale and hour cycle: Intl.DateTimeFormat with hourCycle 'h23' or 'h12' selects 24-hour or 12-hour AM/PM display from the user's system locale
- Fullscreen control: Element.requestFullscreen() and document.exitFullscreen() drive the wall-display mode with Esc as the standard exit key
Examples
Desktop use
Resize browser window to fit a corner of your desktop as a persistent clock.Large screen display
Connect projector or large display, press F11 for fullscreen, show in meeting rooms or events.Live streaming background
Add browser source in OBS with the flip clock URL as your streaming background.FAQ
What time zone does the clock use?
Your device's local time zone, set via the OS. To display another zone, use a dedicated world clock tool. The clock follows the system's notion of time, so VPNs and timezone spoofing do not change it.
Can I switch between 12 and 24-hour format?
Yes. Toggle in settings. 12-hour shows AM/PM; 24-hour shows 00-23 with no AM/PM. Picks one or the other based on your preference; some builds match the OS locale by default.
Why is the second hand sometimes jumping by more than 1 second?
Background-tab throttling. When you switch away, browsers slow update rate; on return, the clock catches up by skipping. Keep the tab focused for smooth animation. If it skips while focused, your CPU is overloaded - check what else is running.
Does the flip animation impact performance?
The CSS transform animation is GPU-accelerated and lightweight on modern devices. On older laptops or phones, you may see slight stutter once per second. Disable the flip animation in settings if you prefer a static clock face.
Can I keep it running fullscreen all night?
Yes - it's designed for fullscreen use as a desk or bedside clock. Modern OSes will dim or sleep the display unless you keep it awake (set 'never sleep' in display settings, or use OS NoSleep). On laptops, plug into power; battery sleep modes will pause the tab.
Will it stay accurate over hours?
Yes. The clock is driven by the system clock, which stays in sync via NTP on networked devices. Drift over a 24-hour run is typically under one second on a modern OS.
Is anything uploaded?
No. The clock reads time from your device. Nothing is logged or transmitted.