Calculation notes \u00b7 updated October 21, 2026

Bazi Calculator Method & Test Examples

Direct answer

This calculator uses lunar-javascript 1.7.7 for calendar symbols. Year/month follow global solar-term instants; day/hour use the recorded local civil clock. Birth details stay in this browser tab.

Open the free calculator

1. Inputs and timezone

Enter a Gregorian birth date between 1901 and 2099, a recorded local time (24-hour clock), and the IANA timezone at the birthplace. A birthplace label is optional and does not automatically select the timezone. The calculator makes no map or geocoding requests. America/New_York and America/Los_Angeles are examples; abbreviations such as EST or CST are rejected.

We round-trip local time through the browser's Intl timezone data to find its UTC instant. A time skipped by a forward clock change is rejected. A time repeated during a rollback requires you to choose the first or second occurrence; we do not silently choose one. Browser timezone data can lag recent legal changes, and early historical coverage varies. Check a birth record or historical time authority if the zone is uncertain.

2. Year and month: solar terms, not lunar months

The year pillar changes at the computed Li Chun (Start of Spring) instant. Month pillars change at the 12 Jie (month-opening solar terms). They do not change at Gregorian month starts, at every one of the 24 terms, or at lunar New Year.

The underlying library expresses solar terms in fixed UTC+08:00. We convert the resolved birth instant to that same reference for year/month calculation, while retaining the birthplace's local date for day/hour calculation. This avoids applying a Beijing clock boundary directly to an American clock. The result exposes the resolved UTC instant and nearby Jie. Within two minutes of a computed boundary, it warns that record uncertainty or small ephemeris differences may change the result.

3. Day and hour convention

The day changes at local civil midnight (lunar-javascript sect 2). The hour uses two-hour Earthly Branch periods: Zi covers 23:00–00:59. For 23:00–23:59 the library keeps the current day pillar but uses the following day's Zi hour-stem rule. Different schools choose a 23:00 day rollover; charts around this hour can differ.

This version uses the birth record's civil clock, including DST. It does not automatically subtract summer time and does not apply longitude, local mean solar time, or the equation of time (apparent/true solar time). A historical solar-time chart can differ near an hour or date boundary. Compare conventions before treating two charts as inconsistent. We do not claim this is the single authoritative school of Bazi.

4. Unknown birth time

The hour pillar is omitted. A representative daytime instant supplies the displayed year/month only when the whole local day has the same pair. If a Jie crosses that date, the displayed pair is labeled provisional and both possible year/month pairs are listed. No exact birth instant is claimed. The day uses the entered civil date and the midnight convention. Extra time-dependent calculations and luck-cycle predictions are not part of this free tool.

5. Five Elements and Day Master

The Day Master is the day's heavenly stem. Each visible stem and branch contributes one element count: eight total with a known time, six without one. Hidden stems and seasonal weights are excluded. A count is not an assessment of strength, health, fortune, compatibility, or a need to add an element. We do not infer personality traits or future events from it.

Reproducible checks

These are software checks of the stated convention, not validation of divination. Example details are fictional and are not user records.

InputExpected result
2005-12-23, 08:37, Asia/Shanghai乙酉 / 戊子 / 辛巳 / 壬辰, matching the upstream EightChar test fixture.
1998-07-31, 14:30, America/New_York戊寅 / 己未 / 己卯 / 辛未; UTC instant 1998-07-31 18:30Z.
2026-02-03, 15:01 then 15:03, America/New_YorkLi Chun changes year/month from 乙巳 / 己丑 to 丙午 / 庚寅. HKO lists Li Chun at 2026-02-04 04:02 Hong Kong time (20:02Z the prior day); the library gives 04:02:08.
2026-03-05, 08:58 then 09:00, America/New_YorkJing Zhe changes month 庚寅 → 辛卯; the year remains 丙午.
2026-03-08, 02:30, America/New_YorkRejected: skipped local time when clocks advance.
2026-11-01, 01:30, America/New_YorkChoice required: first occurrence 05:30Z; second 06:30Z.
2026-02-03, time unknown, America/New_YorkHour omitted; year/month alternatives are displayed because this local date crosses Li Chun.

Sources and software

Calendar algorithms and timezone data have limits. We do not claim second-level astronomical authority, independent validation of every date, or scientific support for symbolic interpretations.

How birth-data privacy works · Cultural-use disclaimer