TimezoneCalculator

About this calculator

A precise civil-time workspace that runs entirely in your browser.

Rule data on this device

Calculation engine
…
Time zone rules (tzdata)
…
Named zones known to the browser
not listed by this browser (fallback list in use)
City/abbreviation mapping pack
tzc-mapping 2026.10.1 (2026-10-30); 181 cities, 42 abbreviations, 34 legacy aliases. Sample: ~170 major cities, 40 abbreviations, 30 legacy aliases. Not a complete gazetteer.
Network
…

Rule freshness probes

Browsers do not report their tz database version, so these checks compare a few recent rule changes against what this browser computes. A “Differs” line means its data is older than those changes.

    Your local data

    Meeting plans, recurring series, travel legs, clocks and zone groups are saved in this browser’s IndexedDB only. Nothing is uploaded.

    How it works

    Every calculation runs in your browser. Offsets come from the browser’s built-in copy of the IANA time zone database through the Intl API, which browsers update with their own releases. Because browsers do not reveal which tz release they ship, the version is shown as host-managed and unknown rather than guessed. City names and abbreviations are mapped to zones by a small self-authored pack; that pack contains no offsets.

    Local times are resolved to zero, one or two instants. Nothing is converted silently when a time is skipped or repeated by a clock change. Times are handled to the millisecond; the timestamp converter keeps nanosecond digits exactly. Leap seconds are not represented (POSIX time scale).

    Feature status

    Requirement IDs from the product specification. Labels: NATIVE (built on browser APIs), APPROX (heuristic, review required), UNSUPPORTED (not available).

    IDRequirementStatusLabelNotes
    TZ-001Named-zone databaseDoneNATIVEHost Intl IANA rules; zone list via Intl.supportedValuesOf with fallback; legacy aliases mapped; tzdata version shown as host-managed/unknown in browsers.
    TZ-002Date-specific conversionDoneNATIVESource date/time/zone to any targets with date, weekday, offset, DST status and day-change badge.
    TZ-003Ambiguous/nonexistent local timesDoneNATIVEGap/fold detection; ask, reject, earlier, later, compatible policies; unit-tested PRD vectors.
    TZ-004Fixed-offset conversionDoneNATIVESeparate FixedZone type, labelled cards, same-offset explanation.
    TZ-005City/zone searchDoneNATIVESelf-authored mapping pack (≈170 cities, 40 abbreviations) with version; abbreviations always ask.
    TZ-006Multi-zone comparisonDoneNATIVETarget cards with shared-instant 24h ribbons, date/week/daylight context.
    TZ-007World clockDoneNATIVEDevice-clock source stated; pauses when hidden and re-reads on resume.
    TZ-008Meeting overlapDoneNATIVEWorking hours, weekdays, breaks, overnight intervals; worker search up to 50 people × 90 days, cancellable.
    TZ-009Meeting fairness scoreDoneNATIVENamed editable weights, worst-off tie-break, per-person breakdown.
    TZ-010Duration calculatorDoneNATIVEElapsed vs local calendar difference; 23/25-hour day length.
    TZ-011Timestamp conversionDoneNATIVEs/ms/µs/ns explicit, BigInt precision, exact bounds, negative epochs, plausibility warnings.
    TZ-012DST transition explorerDoneNATIVEPer-year transitions to the millisecond with gap/fold explanation and CSV.
    TZ-013Saved zone groupsDoneNATIVEIndexedDB, local only.
    TZ-014Copy/share textDoneNATIVEText includes dates, zones, offsets, ambiguity policy and rule source. No share links (avoids putting input in URLs).
    TZ-015ICS event exportPartialNATIVEUTC or TZID+generated VTIMEZONE, escaping, folding, UID/SEQUENCE, date-only events, unit-tested. Import into specific calendar apps not yet tested and recorded (TZ-107).
    TZ-016CSV/table exportDoneNATIVERFC 4180 with formula guarding; includes instants, local displays, policies and rule source.
    TZ-017Offline operationPartialNATIVEAll calculations are local; service worker caches visited first-party assets. Rule data is the browser’s — staleness probed, not versioned.
    TZ-018Locale/time formatDoneNATIVE12/24-hour preference independent of calculation; dates shown with month names.
    TZ-019Recurring meeting previewDoneNATIVEWall-time vs instant anchor across DST; daily/weekly/monthly; up to 520 occurrences.
    TZ-020Recurrence exceptionsDoneNATIVESkip/shift/flag gaps, earlier/later folds, per-date exclusions retained.
    TZ-021Working-time calculatorPartialNATIVEBreaks, weekdays, overnight, user closed dates. No holiday source (see TZ-022).
    TZ-022Holiday packsNot doneUNSUPPORTEDRoadmap. No holiday data is bundled or invented.
    TZ-023Shift roster plannerNot doneUNSUPPORTEDRoadmap. Overnight intervals are supported in the meeting planner.
    TZ-024Travel itinerary timelineDoneNATIVEUser-entered legs, elapsed time, connections, chronology checks, CSV.
    TZ-025Countdown/deadlineDoneNATIVEZone instant vs viewer-local deadline; device-clock limitation shown.
    TZ-026Batch conversionDoneNATIVEWorker, 20k rows, per-row errors, explicit slash/AM-PM/offset-conflict/epoch policies.
    TZ-027Cron schedule previewDoneNATIVE5-field Unix dialect declared; gap/fold policy; Quartz rejected; test-vector export.
    TZ-028Zone-rule comparisonPartialNATIVESaved recurrence snapshot recomputed with current host rules and diffed. No downloadable rule packs to compare against.
    TZ-029Reproducible project exportDoneNATIVEProject JSON with inputs, choices, rule source and mapping-pack version; validated import.
    TZ-030Offset/date mismatch repairDoneNATIVEBatch converter: reject / prefer offset / prefer zone.
    TZ-031Calendar import inspectionPartialNATIVEBasic ICS subset inspector; recurrence properties reported, not expanded.
    TZ-032Expanded historical packsNot doneUNSUPPORTEDHistory limited to what the browser’s tz data contains.
    TZ-033Team planning scenariosNot doneUNSUPPORTEDRoadmap.
    TZ-034Guaranteed future political rulesExcludedUNSUPPORTEDImpossible; future results are qualified everywhere.
    TZ-035Server alarms/live calendar syncExcludedUNSUPPORTEDOut of scope; ICS files are artifacts only.
    TZ-101Availability exception editorPartialNATIVEClosed dates in the working-hours tool; not yet per participant in the planner.
    TZ-102Rotating meeting fairnessPartialAPPROXGreedy rotation suggestion with stated weights; for review only.
    TZ-103Date-only arithmeticDoneNATIVEDays/months with clamp or reject overflow.
    TZ-104Time input ambiguity inspectorPartialNATIVEBatch parser explains locale dates, AM/PM and abbreviations; no standalone inspector screen.
    TZ-105Precision/rounding controlsPartialNATIVETimestamps keep ns exactly; batch reports truncated sub-ms digits. Engine precision is ms.
    TZ-106Recurring event exception exportPartialNATIVEFinite expanded series omits excluded/skipped occurrences; no RRULE/EXDATE output.
    TZ-107Calendar interoperability reportNot doneUNSUPPORTEDNeeds recorded manual import tests.
    TZ-108Zone alias migrationPartialNATIVELegacy IDs resolve to current names; original input retained in batch rows.
    TZ-109Future rule-change reviewPartialNATIVESnapshot diff for recurring series only.
    TZ-110Historic offset inspectorPartialNATIVEDST calculator works for past years within host data; no provenance horizon.
    TZ-111Elapsed vs business-time comparisonDoneNATIVEWorking-hours tool shows both side by side.
    TZ-112Travel connection checksDoneNATIVEUser-supplied minimum connection.
    TZ-113Named-zone vs fixed-offset auditNot doneUNSUPPORTEDRoadmap.
    TZ-114Offline rule health screenPartialNATIVEAbout page: engine, unknown version, behavioural freshness probes.
    TZ-115Schedule test-vector exportDoneNATIVERecurring and cron JSON vectors with dialect caveats.