How the SPYLL BaZi calculator works
This page lists the rules SPYLL uses to turn a birth date into four pillars. The free calculator and the paid report run on the same engine, so both follow every rule below.
Year and month pillars are read in China standard time (UTC+8)
The BaZi year turns at Li Chun, and each BaZi month turns at a jie (solar term). SPYLL takes the jie moments from the lunar-typescript calendar library, which records all of them at UTC+8. Your birth time is converted to UTC+8 before it is compared with those boundaries.
The boundary is checked to the minute. Li Chun 2027 falls on 4 February at 08:46 WIB, so a baby born at 08:00 that day is still a Horse and one born at 09:00 is a Goat.
Day and hour pillars are read in true solar time
Your phone clock follows a time zone, not the sun over your birth city. When you enter a birth time and place, SPYLL moves that time to true solar time: civil time + (longitude × 4 minutes − time zone offset) + the equation of time.
Jakarta sits at 106.8° East. 106.8 × 4 = 427 minutes, minus 420 minutes for WIB, gives +7 minutes. The equation of time adds between −14 and +16 minutes depending on the date. SPYLL computes it with the low-precision series from the Astronomical Almanac, which stays within about 20 seconds of the real curve.
The BaZi day turns at 23:00 true solar time, at the start of the Rat hour (子). A birth at 23:30 takes the next day's pillar.
Historical time zones
The time zone offset comes from the ICU time zone tables for your birth date, not today's rules. Jakarta ran on UTC+7:30 until 1964, and China observed summer time from 1986 to 1991. Births in those periods use the offset that applied then.
If the birth place is empty or its zone cannot be read, SPYLL uses WIB and your chart marks the zone as assumed.
When the birth time is unknown
SPYLL uses 12:00 for the year, month and day pillars and leaves the hour pillar empty. That assumed noon is not moved to true solar time, since correcting a guessed clock adds noise.
If a jie falls on your birth day, the year or month pillar can change partway through that day. Your chart flags this case so you know which pillar to recheck with your real birth time.
Supported years and date checks
The calculator accepts birth dates from 1900 to 2100. Dates that do not exist on the calendar, such as 30 February, are rejected and produce no chart.
Hidden stems and element weights
Each branch holds one to three hidden stems. When SPYLL measures element strength, a branch with three stems splits 60%, 30% and 10%, and a branch with two splits 70% and 30%. The main stem always takes the largest share.
Symbolic stars
The symbolic star (shensha) tables follow the two most widely used classics, 三命通会 (San Ming Tong Hui) and 渊海子平 (Yuan Hai Zi Ping).
The math can be checked; the reading is a point of view
The four pillars are calendar math, so you can compare them with any other BaZi calculator that uses Li Chun and true solar time. The character reading in the report is SPYLL's interpretation of classical theory, and you decide how well it fits your life.
Want to see these rules on your own birth date?
Open the BaZi calculator