Yili Paipan 中文

BaZi · Zi Wei Dou Shu · annual & monthly cycles — rules, not fortunes

In brief: a BaZi month pillar changes at the exact instant the Sun reaches each jie (節) boundary — not at midnight on that date, not on the first of a lunar month.

Solar terms and the month pillar: the boundary is an instant, not a date

Which boundaries these are

There are 24 solar terms; BaZi uses the twelve jie as month boundaries. Each begins a month branch:

JieStarts month branchApprox. Gregorian date
立春 Lichun寅 (yin)4–5 Feb — also the year boundary
惊蛰 Jingzhe卯 (mao)5–6 Mar
清明 Qingming辰 (chen)4–5 Apr
立夏 Lixia巳 (si)5–6 May
芒种 Mangzhong午 (wu)5–6 Jun
小暑 Xiaoshu未 (wei)7–8 Jul
立秋 Liqiu申 (shen)7–8 Aug
白露 Bailu酉 (you)7–8 Sep
寒露 Hanlu戌 (xu)8–9 Oct
立冬 Lidong亥 (hai)7–8 Nov
大雪 Daxue子 (zi)7–8 Dec
小寒 Xiaohan丑 (chou)5–6 Jan

Because the dates shift by a day either way, treating them as calendar dates produces charts that disagree with an instant-based calculation for births within about a day of the term — and the year pillar flips at Lichun, not on 1 January and not on Lunar New Year.

Worked: Lichun 1990 falls at 10:14

Take three births on 4 February 1990, differing only in which two-hour slot they fall in:

Slot (computed at midpoint)Four pillars
辰 slot (07:30) — before 10:14己巳 丁丑 庚子 庚辰
巳 slot (09:30) — still before 10:14己巳 丁丑 庚子 辛巳
午 slot (11:30) — after 10:14庚午 戊寅 庚子 壬午

The day pillar is identical in all three; the year and month pillars differ, because 10:14 sits between the 09:30 and 11:30 midpoints. That is the whole effect: the boundary is an instant inside a day, not the day itself.

“But my birth time is a two-hour slot”

This site takes birth time as one of thirteen slots and computes at the slot midpoint (HH:30). When a solar-term instant lands inside the slot you picked, the chart reflects the midpoint — so if you were born within an hour of the term, the other side of that slot may apply to you. The calculator does not pick for you: it shows the alternative chart alongside the primary one.

How exact is “exact”?

We compared every jie instant from 1900 to 2100 (2,412 boundaries) between the calendar library the engine uses and an independent astronomical computation: mean difference 12.7 s, maximum 62.4 s. That is the gap between two models, not the error of either — both depend on extrapolated Earth rotation, so read it as “the two agree to within about a minute”.

Frequently asked questions

Does the month pillar change at midnight on the solar term date?

No. It changes at the astronomical instant, which can be any time of day — 10:14 on 4 February 1990, for example. A birth at 09:00 that day still belongs to the previous month pillar.

Why do two calculators give different month pillars for the same birth?

Almost always a boundary convention: one uses the exact instant, another assigns the whole date, or they resolve the term in different time zones. The difference is arithmetic, not interpretation.

Does the year pillar change at Lunar New Year?

Not in the mainstream convention this site follows. The year changes at the exact instant of Lichun. Between Lichun and Lunar New Year — about thirteen days in some years — a birth belongs to the new BaZi year but the old lunar year.

What if I was born within minutes of a solar term?

The engine cannot resolve it, because the input is a two-hour slot rather than a minute. Check both neighbouring slots; if their charts differ, that difference is the uncertainty to carry forward.

Recompute it yourself

The same engine is published as yilibazi-core on npm (MIT), with source on GitHub — conventions exported as constants, and an ambiguityReport() that returns the alternative chart whenever a convention would change the answer. The stated rules and the known gaps are in the method page.