Skip to content

Calendar vs rolling-365 windows

Two windows appear on residency and travel summary.

  • Calendar (YTD). 1 January through the as-of date in the presence timezone.
  • Rolling 365. 365 inclusive dates ending on the as-of date.

asOf is the last calendar date in the window. calculatedAt is the later instant when the server ran.

For a historical as-of date, timezone comes from the latest presence arrival on or before that date. For today and future dates, timezone comes from the latest presence arrival at calculation time. An empty ledger falls back to Etc/UTC.

A future as-of honors logged journeys that arrive by the end of that day, then assumes you stay in the last destination through as-of. That assumption does not create a journey and does not use lodging stays.

Each country uses the window named by its stored year type. The API still returns both windows.

Crossing dates can count in both origin and destination under any-presence, so country totals can exceed the window length. That is expected. Schengen zone totals do the opposite and deduplicate dates. See Schengen 90/180.