World Timezones
Hover a timezone band to see the current time
Quick Times
World Timezones
Hover a timezone band to see the current time
Features
- Live world clock displaying 23 representative UTC offset bands from UTC-12 to UTC+12, ticked every second via setInterval
- Each band shows the current time and day in a canonical IANA zone (Etc/GMT, Pacific/Honolulu, America/Los_Angeles, Europe/Berlin, Asia/Tokyo, etc.) so DST is honored automatically
- Click any band to pin it; the pinned panel shows its time, day, and offset from your local timezone in hours (and minutes when fractional)
- Hover any band for an instant preview of its local time and weekday without committing — useful for scanning the strip during a meeting plan
- Local timezone label resolved via Intl.DateTimeFormat().resolvedOptions().timeZone — accurate to the canonical IANA name your browser reports
- Time formatting uses the browser's active locale by default, so dates and weekdays appear in your interface language (English Monday, Turkish Pazartesi, German Montag, etc.)
- Offset math via Intl.DateTimeFormat.formatToParts compares wall-clock parts in each zone against UTC, so the displayed offset survives DST transitions and historical rule changes
- Pure client-side: no zone rules fetched from a server, the entire tz database ships with your browser/OS, the page works offline once cached
How to use
- Scan the strip top-to-bottom: each row is a UTC offset band, labeled with its sign and offset (e.g. UTC-5 for New York band).
- Look at any row to see the current local time and day for a representative city in that band.
- Click a band to pin it — the pinned panel shows the live time, the day, and the offset from your timezone in hours.
- Hover (without clicking) to peek at any band's current time without changing the pin.
- Your local timezone is detected automatically via the browser's Intl APIs; no configuration needed.
- The clock updates every second; leave the tab open during a meeting to track multiple zones live.
Tips & Best Practices
- For meeting-planning workflows, pin the band of a remote teammate and keep the tab open during the call.
- The strip updates every second; if you screenshot for a status report, the time is accurate to within a second of when you clicked.
- Combine with the Timezone Converter tool for offline date-time conversion (the strip is for live visual scanning; the Converter is for specific moment math).
- Hovering doesn't commit a pin; you can sweep over the strip to compare bands without losing your existing pin.
- Your local timezone is detected from the browser. If it looks wrong, check your OS timezone settings — Intl.resolvedOptions reports what the OS reports.
FAQ
Why only one representative city per UTC band?
The strip aims at scannability: 23 rows for the 23 commonly-used UTC offsets vs the 350+ IANA zones. Each row uses a canonical zone for that offset (Pacific/Honolulu for UTC-10, Europe/Berlin for UTC+1, Asia/Tokyo for UTC+9, etc.), so the underlying offset math respects DST while the row label stays simple. For city-specific conversion, use the Timezone Converter tool which exposes 22 named zones.
How does the offset display handle DST?
Offset math runs every tick via Intl.DateTimeFormat.formatToParts, which delegates to the host ICU library and the bundled tz database. When Berlin switches between CET (UTC+1) and CEST (UTC+2), the UTC+1 band still displays the correct local time because the representative zone is Europe/Berlin, not a fixed UTC+1.
Does pinning persist across page reloads?
No. The pin is session-only — designed for live meeting tracking, not long-term bookmarks. Refreshing the page resets the pin. If you need persistent timezone shortcuts, save the URL with the timezone in a bookmark name or use the Timezone Converter's Profile feature.
Why is my local time band highlighted?
The local time card at the top of the strip is your browser's reported timezone via Intl.DateTimeFormat().resolvedOptions().timeZone. It's a separate card, not one of the 23 strip bands — so it always shows the canonical IANA name of your detected zone, which is more specific than any UTC offset.
How accurate is the second-by-second tick?
Within the resolution of setInterval(1000), which the browser may throttle when the tab is backgrounded. When the tab is foregrounded, ticks are accurate to ~10-50ms — fine for visual time tracking. For precise time-sensitive automation, query Date.now() in your own code rather than reading off this UI.
Is anything sent to a server?
No. Timezone names are static strings in the JavaScript bundle, the tz database is part of your browser/OS, and the formatting calls run synchronously in your tab. Nothing leaves your browser when you hover, click, or pin a band.
Why are some bands missing (UTC-11, UTC-2, UTC+3:30)?
The strip covers the 23 most common UTC offsets. Some offsets like UTC-11 (Samoa Standard) or UTC+3:30 (Iran Standard) cover small populations and would clutter the strip without much benefit. They're still supported via the underlying Intl API — use the Timezone Converter if you need precise conversion to a zone that isn't on the strip.
Can I add my own city to the strip?
Not in-app. The bands are hardcoded for layout consistency. For interactive multi-zone conversion with custom cities, switch to the Timezone Converter tool which has a curated dropdown of 22 named zones plus profile save/load.