P2 · Time zones and DSTNo hidden counting rules.

Date and Time Calculator

Compare two local date-times across the same or different time zones, with daylight-saving gaps, repeated clock times and the difference between elapsed and wall-clock time made explicit.

Universal engineDate and Time CalculatorFree · local-first · explicit assumptions
Reference calculation

Enter your details.

Calculated locally in your browser. Nothing is uploaded to CalcSpan.

Switch modes without leaving the page. Each result states its counting convention.
Sun, Aug 23, 2026
Start time zone IANA city-based time zones include historical and daylight-saving changes.
Start time zone

419 options

Mon, Aug 24, 2026
End time zone
End time zone

419 options

Used only when a daylight-saving fall-back repeats the same local time.

Plain-date semantics · start date is not counted unless the result explicitly says inclusive.

Your result
1 day, 8 hours

True elapsed time is calculated after both local times are resolved to instants. No net clock change between the selected instants.

Start instantSun, Aug 23, 2026, 9:00 AM UTCUTC
End instantMon, Aug 24, 2026, 5:00 PM UTCUTC
True elapsed time1 day, 8 hours32 total hours
Wall-clock difference1 day, 8 hoursCompares the typed local clock readings before time-zone conversion.
DST / offset effectNo net differenceNo net clock change between the selected instants.
Ambiguous-time choiceNot needed · earlier occurrence would be used

Read before relying

Context matters.

  • Time-zone conversion uses the browser's implementation of the IANA time-zone database through Intl.DateTimeFormat.
  • Time-zone laws can change. Recalculate future events after the device or browser receives time-zone data updates.
Rule set 2.0.0

Sources & scope

Source & calculation QA reviewed

The calculation guide and this source trail show what the result means, where the rule came from and when it was last reviewed. This is source-and-calculation QA, not a claim of medical, legal, tax or other professional review; time-sensitive decisions still belong with the linked authority.

JurisdictionGlobal Gregorian date arithmetic and IANA time zones; optional U.S. federal holiday planning calendar
Last reviewed2026-08-22
Next review due2027-02-22
Review scopeCalcSpan source & calculation QA
PrivacyNo input upload
How it works

Resolve local clocks before subtracting instants.

A local date and time is not always one instant: spring-forward can create a time that never occurs, while fall-back can repeat one. CalcSpan validates that mapping before calculating duration.

  1. 01Enter each local date-time

    Choose the date, clock time and IANA city-based time zone for both endpoints.

  2. 02Resolve DST ambiguity

    If a fall-back repeats the local time, choose whether the earlier or later occurrence should be used.

  3. 03Compare two answers

    True elapsed time comes from instants; wall-clock difference compares the typed local readings. The offset effect explains any gap.

Nonexistent times

A local time skipped during spring-forward is rejected rather than silently moved forward or backward.

Repeated times

When fall-back creates two instants with the same local clock reading, the result labels the ambiguity and uses the selected occurrence.

Time-zone data

The calculation uses the browser's Intl implementation of the IANA time-zone database and therefore benefits from browser or operating-system updates.

Rule trail

Rule set 2.0.0. Last reviewed 2026-08-22. Next review due 2027-02-22.

Questions answered

What to know before using the result.

Why can two hours on the clock equal one elapsed hour?

During a spring-forward transition, the local clock skips an hour. CalcSpan resolves both inputs to real instants and shows the true elapsed duration beside the wall-clock difference.

What is an ambiguous local time?

During fall-back, a clock time such as 1:30 AM can occur twice with different UTC offsets. Choose the earlier or later occurrence so the calculation maps to one instant.

What happens if a local time does not exist?

The tool stops and asks for a valid time before or after the DST gap. It does not guess.

Where do the time-zone rules come from?

The browser applies IANA time-zone data through the ECMAScript Intl.DateTimeFormat API. Political time-zone rules can change, so future events should be recalculated after updates.