Guide Chinese Culture 6 min read

How Chinese almanacs decide which hours are yellow and which are black

Chinese almanacs split the day into twelve two-hour blocks and label each one yellow path or black path by the spirit on duty in it. The rule is one line in a Qing imperial manual, and we checked it against an open-source almanac library and two almanac websites.

Eva Chin
Business & Chinese Culture Correspondent
Published 18 Oct 2026, 4:24 PM (SGT)
Share:
A brass sundial standing on an old printed map A brass sundial standing on an old printed map Photo by JaStra on Pixabay
Advertisement

Chinese almanacs divide the day into twelve two-hour blocks called 時辰 (时辰, shíchén) and label each one 黃道 (黄道, huángdào, "yellow path") or 黑道 (hēidào, "black path"), by which of twelve spirits is on duty in it. The rule that places the spirits takes one line in a Qing imperial manual. We coded that line and compared it with lunar-javascript, an open-source almanac library, on every pairing of day and hour. All 144 match. We also checked two almanac websites by hand, three October 2026 days each. Skillon, an English-language Tong Shu site, named a spirit for 26 hours, and 25 agreed with the rule. k366, a Chinese-language site, listed under 今日吉时 ("today's good hours") the rule's six yellow-path hours minus the hour that clashes with the day, on all three days.

The Green Dragon presides over a different hour for each day branch

Each day and each hour carries one of twelve earthly branches (地支), 子 to 亥; a day's branch paired with a heavenly stem is its stem-branch (干支). The manual, 欽定協紀辨方書, was commissioned in 1739, its preface dated January 1742. Its 卷七 quotes the rule from 考原, the Kangxi-era 星曆考原: 「寅申青龍起子 卯酉起寅 辰戌起辰 巳亥起午 子午起申 丑未起戌 順行十二辰」. For hours, 「子日申時起青龍」: on a 子 day the Green Dragon takes the 申 hour, 15:00–16:59, and the other eleven follow in order.

SpiritEnglish glossPath
青龍Green Dragonyellow
明堂Bright Hallyellow
天刑Heavenly Punishmentblack
朱雀Vermilion Birdblack
金匱Golden Cofferyellow
天德Heavenly Virtueyellow
白虎White Tigerblack
玉堂Jade Hallyellow
天牢Heavenly Prisonblack
玄武Black Tortoiseblack
司命Life Governoryellow
勾陳Hook Arrayblack

Against the library's output for every hour from 2020 to 2029, the 23:00 hour aside, our coded rule matched all 43,836 cells. The same rule, keyed to the month's branch, places the spirits on days.

Spirits of the yellow path govern six of every day's hours

The manual takes its yellow six, marked in the table, from a source it calls 神樞經. Twelve spirits over twelve hours give every day six of each; the library's decade holds 21,918 of each. The documentation by 6tail, author of lunar-javascript, gives a mnemonic, 「道远几时通达,路遥何日还乡」. By our count, of its twelve characters the six carrying the walking radical 辶 sit exactly where the six yellow-path spirits do.

The Qing text writes 元武 for 玄武, avoiding a character in the Kangxi emperor's name, and its editors adopted the old alias 寶光 for 天德, a name another spirit shared. Skillon still prints 元武 and 宝光; 6tail's page writes 金贵 for 金匱.

A yellow-path spirit gives way on the clashing hour in k366's lists

The hour whose branch stands opposite the day's is the 時破 (shípò). The manual's rules for using hours, in 卷三十四, rank it worst: 「時破大凶日支衝時支也如子日午時之類」. It is the day clash described in how a day in the almanac is built, one level down.

On 16 October, a 亥 day, k366 listed all six yellow-path hours, since the clashing 巳 hour was black anyway. On 17 October, a 子 day, it left out the yellow 午 hour, and on 23 October it left out 子. k366 may run the same library, so it is one witness.

Advertisement

6tail's page says 「黄道主吉,黑道主凶」, yellow for good and black for bad. Skillon's ratings only partly follow the colour. Of the 18 hours the rule marks yellow on its pages for 5, 8 and 16 October, it rated 9 吉 (good), 3 中 (middling) and 6 凶 (bad), and no black-path hour 吉. Some of the six rated 凶 carry a clash star; others we could not explain from the page.

Late-night spirits obey tomorrow's branch in one open-source library

The 子 hour runs 23:00–00:59, across midnight, and both day starts are old. A note in 天經或問 says ordinary people began the day with the 子 hour at 23:00 (「世人但知子属本日始」), while astronomers counted from 00:00 to the end of 夜子, the late Rat hour. The official 大統曆志 also runs its day from midnight to midnight.

lunar-javascript changes the day at 23:00. Over 2020–2029 its 23:00 hour carried the next day's stem-branch and 宜/忌 (the "suitable" and "avoid" lists) on 3,653 of 3,653 days. Judged on the old day's branch, it always gets a different spirit, and a different colour on 8 of the 12 day branches. On 16 October 2026, a 亥 day, the 23:00 reading gives 金匱, yellow; the old-day reading gives 白虎, black.

Until 18 October 2026 our Chinese auspicious hours almanac showed no spirit or path label, though its title promised 吉凶. Its 23:00 row carried the next day's stem-branch and 宜/忌 while the page said it kept the previous day's, its hour star came from the previous day, and a pull-quote credited to a "folk almanac maxim" had no source. The revision of that date shows each hour's spirit and label, attributed to the manual, tags the 時破 hour and builds the 23:00 row wholly from the next day, marked so. For 16 October 2026 that row reads 甲子, 金匱, matching 17 October's 00:00 row.

Solar-time spirits take a different colour for a third of Singapore's clock time

The manual counted hours on the sun. Its tables in 卷十二 put equinox sunrise at 卯正初刻, 06:00 by the sun, and compute each province's sunrise from its own latitude. Both almanac sites print clock blocks. Singapore's clock runs about 65 minutes ahead of local mean solar time, the time of an average sun at its longitude. The equation of time, the gap between that average sun and the real one, moves solar noon between 12:48 (1 November) and 13:19 (14 February) on the 2026 clock. The Singapore birth-time guide explains the offset.

Our minute-by-minute simulation of 2026 used NOAA's equation-of-time approximation, with the day changing at 23:00 on both scales. The shares show what would change if a reader counted hours on the sun; no source we opened says modern hour selection should.

PlaceHour label differsPath colour differs
Penang66%40%
Kuala Lumpur61%38%
Singapore54%33%
Kuching33%20%
Hong Kong20%12%
Taipei7%4%

Noble, salary and horse stars take precedence in the manual's hour rules

卷三十四 opens its hour rules with 「時家吉凶神不必盡拘惟貴人禄馬為吉」: hour spirits need not all be strictly followed, and only the noble (貴人), salary (祿) and horse (馬) stars count as good.

卷七 makes the salary hour the branch belonging to the day's stem and sets the joy spirit's (喜神) direction by stem: southeast, 巽, on 戊 and 癸 days. For 16 October, a 癸亥 day, k366 printed 喜神 东南. Skillon's page for that day marks the 子 hour 日禄 and still rates it 凶.

Imperial editors keep a custom the almanacs never explained

In the same 卷七 entry the editors write that the almanacs 「何以吉何以凶則未言其故 通書又専用之以選時 相沿日久終身由之而不知其道」: they never say why these spirits are good or bad, yet use them above all to choose hours, and people follow them for life without knowing the reason. 考原, they note, doubted it and kept it undiscussed. The editors call "yellow path" and "black path" other names for good and bad, then argue for each spirit in turn. The Qianlong preface states the compromise: 「俗所久沿則亦不能盡去 便民用也」, long custom cannot all be removed, for the people's convenience.

Advertisement
Eva Chin
Business & Chinese Culture Correspondent

Eva Chin covers business and commerce in Southeast Asia for RECATOOLS, alongside Chinese cultural practice and education.

View author profile → · Editorial policy

Corrections policy

Advertisement