Open in tools

Time zones and UTC

Time zones and UTC

core.chart expects BirthInput.instant as an unambiguous UTC timestamp (RFC 3339, e.g. 1990-05-15T14:30:00Z). Civil birth clocks are almost always recorded in local time with a time-zone and sometimes daylight saving offset.

Civil time → UTC

  1. Take the local birth date and time as written on the certificate or report.
  2. Determine the time zone rules valid at that date (zone id or historical offset tables — political changes matter for births before modern TZ databases).
  3. Subtract the offset to obtain UTC (or use a timezone-aware library).
  4. Pass the UTC instant to calculate or calculate_sidereal.

Getting step 2 wrong is a common source of 1-hour (DST) or multi-hour (wrong zone) chart errors — enough to change Ascendant sign in many cases. See birth-time-accuracy.

Julian day and ephemeris time

Internally, the stack converts UTC to Julian Day for VSOP evaluation (julian-day-ephemeris). Professional ephemerides often distinguish UT vs TT/TDB at sub-arcminute levels; VSOP-based hobby and chart software typically treat the supplied UTC as sufficient for natal work. See ephemeris-uncertainty for limits.

Latitude / longitude are separate

Time zone fixes when; latitude and longitude fix where on Earth (birth-input). Both are required for houses and angles.

References

See also data-quality, natal-chart.

OpenAstro — charts without an account. Sign in only to save or share by nick.