A macOS menu bar app for temporarily switching the system time zone and restoring it later.
Use it when you need to test calendar, schedule, subscription, localization, or region-sensitive behavior without permanently changing your normal system setup.
Developers, QA engineers, product builders, and support teams often need to answer questions like:
- Does this calendar event render correctly in Pacific Time?
- Does a scheduled workflow cross midnight in another region?
- Does a subscription, billing period, or date boundary behave correctly outside my local time zone?
- Can I reproduce a customer issue that only appears in another time zone?
Time Zone Switcher makes that workflow fast and reversible from the menu bar.
- Menu bar only: no Dock icon.
- Add several IANA time zones, such as
America/Los_AngelesandAsia/Shanghai, and see each local time together. - Set any saved time zone as the system time zone. The first switch remembers the original time zone until you restore it.
- Choose the menu bar clock: follow the system time zone, show only the icon, or pin one saved time zone.
- Choose a time format from presets, including time only, abbreviation and time, a Chinese date, an English date, or a custom pattern. Seconds are optional.
- Choose the interface language: follow the system, Simplified Chinese, or English. The language does not decide the clock pattern.
- Localized time zone display names with the IANA identifier kept visible.
- Native SwiftUI controls and macOS material styling.
- No analytics.
- No network requests.
- No background polling jobs.
- Administrator permission is requested only when you change or restore the system time zone.
- The system command used is:
systemsetup -settimezone <IANA time zone identifier>Download the latest release disk image, open it, and drag Time Zone Switcher onto the Applications folder.
This project currently publishes unsigned, non-notarized open-source builds. On first launch, macOS may block the app because it was downloaded from the internet. To open it:
- Open System Settings.
- Go to Privacy & Security.
- Find the blocked app message and choose Open Anyway.
You can also Control-click the app and choose Open.
Requirements:
- macOS 26+
- Xcode 26+
- Swift 6.3+
Build the app bundle:
Scripts/build_app.shRun it:
open "dist/Time Zone Switcher.app"Create a release disk image:
Scripts/package_release.sh- Favorite time zones.
- Keyboard shortcuts.
- Optional notarized builds.
- More localization.
Contributions are welcome. See CONTRIBUTING.md.
MIT


