Personal BaZi chart · personal-bazi-engine-v1.0
How the personal Four Pillars chart is calculated
Your result begins with a plain-language reading. Technical chart details, strength arithmetic, Da Yun timing, and yearly score arithmetic stay available behind expandable details. Calculation, interpretation and presentation are kept separate so simpler wording does not silently change the chart.
Birth time is optional to submit, but required for a complete Four Pillars timing analysis.
With an exact recorded time, the engine calculates all four pillars and can build the full Da Yun and annual timing layers. Without it, the Hour Pillar is omitted. No midnight, noon, or other default hour is invented.
- Civil birth instant: the entered Gregorian date and local clock time are resolved through the selected city's IANA timezone, including historical UTC offset and daylight-saving transitions. A repeated DST time requires an explicit earlier/later choice; a skipped time is rejected.
- Year and Month Pillars: these change at the exact Jie (节) solar-term instant. The BaZi year begins at Li Chun (立春), not January 1 or Lunar New Year. The absolute birth instant is compared with solar-term moments after converting the provider's UTC+8 term clock to UTC.
- True solar time: enabled by default for the Day and Hour Pillars. Local apparent solar time is calculated from the UTC instant, birthplace longitude (four minutes per degree), and the NOAA fractional-year equation-of-time approximation. Users can intentionally switch to recorded civil time.
- Day and Hour Pillars: the effective date determines the Day Pillar; the effective two-hour branch and Five Rats rule (五鼠遁) determine the Hour Pillar.
- Day rollover: convention
personal-bazi-convention-v1.0changes the Day Pillar at 00:00. Zi Hour is 23:00–00:59; during 23:00–23:59 the displayed date keeps its Day Pillar while the Hour Stem follows the next day's Day Stem. This is a deliberate convention choice, not an accidental mismatch with calculators that roll the Day Pillar at 23:00. - Unknown time and boundaries: if a Jie term occurs on the local birth date and the time is unknown, affected Year or Month Pillars remain unresolved. Known times close to a Jie term, date rollover, or Chinese-hour boundary receive a visible precision warning.
Reader-first interpretation
Reading personal-reading-v3 keeps the existing Day Master, Ten Gods, branch facts, work, relationship, strengths, challenges and wellbeing reflections. The page presents the everyday-language conclusion before traditional terminology. “See BaZi reasoning” and “Technical BaZi Details” reveal the chart evidence when a reader wants it.
The visible Five Element Distribution remains a simple occurrence count of visible and hidden stems. It is intentionally separate from Day Master strength. A missing or frequent element is not automatically a deficiency, talent, remedy, or favorable element.
Day Master strength · strength-balance-v2.1
The strength layer is a published, reproducible strengthen-and-balance simplification. It asks how much Resource and Companion support the Day Master receives after weighting chart positions and hidden-stem shares. It is not a universal ruling across all BaZi schools and it does not claim to identify a unique Yong Shen (用神).
| Position | Weight | What contributes support |
|---|---|---|
| Year Stem | 8 | Resource / Companion element |
| Year Branch | 4 | Weighted hidden stems |
| Month Stem | 12 | Resource / Companion element |
| Month Branch | 40 | Weighted hidden stems; largest seasonal weight |
| Day Branch | 12 | Weighted hidden stems |
| Hour Stem | 12 | Resource / Companion element |
| Hour Branch | 12 | Weighted hidden stems |
Four-pillar charts use a 100-point base. Three-pillar charts use a 76-point base by removing the Hour positions rather than pretending an hour exists. A support percentage of 50% or more is labeled strong; below 50% is labeled weak. Charts from 40–60% are flagged as near-balanced because a nearby school or weighting choice can reasonably move the classification.
Branch support and annual branch affinity use fixed hidden-stem shares: single-stem branches = 100%; Chou/Yin/Chen/Si/Wei/Shen/Xu = 60/30/10 according to their documented stems; Wu and Hai = 70/30. These shares are scoring weights, not replacements for the traditional main/middle/residual labels shown in the chart.
For a weak Day Master, Resource has affinity +1.0, Companion +0.7, Output −0.5, Wealth −0.8 and Influence −1.0. For a strong Day Master, Resource is −1.0, Companion −0.75, Output +1.0, Wealth +0.85 and Influence +0.6. The interface therefore says supportive in this method, not “universally lucky.”
Da Yun: direction, start and current phase
With a known birth time and an explicitly selected male/female direction parameter, Yang-year male and Yin-year female proceed forward; the opposite combinations proceed backward from the natal Month Pillar. The interval to the next or previous Jie is converted using tyme4ts 1.5.2 Lunar Sect 1. Birth and solar-term clocks use the provider's fixed UTC+08:00 reference so the same absolute birth instant is preserved.
Convention dayun-v2 displays ten cycles. Boundaries advance by ten calendar years in the fixed reference clock, with February 29 clamped to February 28 when needed, then display in the birthplace timezone. Displayed ages are completed civil years, not nominal BaZi ages.
Annual timing · annual-timing-v2.0
The life chart combines the active Da Yun with each BaZi year's stem and branch. It is a relative score inside this one method, not a probability that a year will be “good” or “bad.”
Da Yun offset = 8 × luck-stem affinity + 10 × luck-branch affinity
Annual stem effect = 6 × annual-stem affinity
Annual branch effect = 8 × annual-branch affinity
Year score = clamp(50 + (Da Yun + stem + branch) × damp, 5, 95)
damp = 0.6 for near-balanced charts, otherwise 1.0
The life chart covers birth through age 80 and the next-ten-years cards expose the same arithmetic. Clash, harm, punishment, Six Harmony, Peach Blossom and Travel Horse are shown as context labels where supported. They do not secretly add or subtract score. Theme cards such as Work, Money, Relationships and Change are filters over those transparent structural signals, not event guarantees.
Past-year highlights are deliberately presented as a check against the reader's own memory. A match does not scientifically validate BaZi, and a miss should not be explained away after the fact.
Exact natal branch relationship table
- Clashes: 子–午, 丑–未, 寅–申, 卯–酉, 辰–戌, 巳–亥.
- Harms: 子–未, 丑–午, 寅–巳, 卯–辰, 申–亥, 酉–戌.
- Six Harmony: 子–丑, 寅–亥, 卯–戌, 辰–酉, 巳–申, 午–未.
- Punishments supported: 子–卯; repeated 辰, 午, 酉, or 亥; complete 寅–巳–申 or 丑–戌–未 trios.
- Complete Three Harmony groups: 申–子–辰 (Water), 亥–卯–未 (Wood), 寅–午–戌 (Fire), 巳–酉–丑 (Metal).
- Identical natal branches are also reported as repeats. No partial Three Harmony or transformation is inferred.
Independent cross-checks
BaZi Days uses external comparison material to test whether convention differences are visible and explainable; these resources are not calculation dependencies and do not validate the metaphysical claims of BaZi. The Jade Almanac public BaZi calculator convention dataset is included as an independent comparison benchmark for boundary behavior such as Li Chun, solar-term changes, true-solar-time shifts, DST, and late Zi Hour.
One intentional difference is documented rather than hidden: Jade Almanac uses a 23:00 Day Pillar rollover, while BaZi Days keeps the civil-date Day Pillar through 23:59 and changes it at 00:00. The dataset itself treats this as a convention comparison rather than a single correctness test.
What this still does not calculate
The current personal chart does not claim a universal Yong Shen, stem transformations, lineage-specific special structures, deterministic life events, medical outcomes, financial outcomes, or remedies. The strength and annual models are explicit simplifications for reproducible comparison and reflection. BaZi is a traditional metaphysical practice, not a scientifically validated personality or prediction method.
Calendar provider: tyme4ts 1.5.2 behind a normalized BaZi Days model. City names, coordinates, and IANA zones are derived from GeoNames under CC BY 4.0. The location index and chart engine run in the browser.
Calculate a personal BaZi chartWedding date finder methodology
Current ruleset · wedding-ruleset-v1.0
Category first. Score second.
A score never decides whether a date is auspicious. BaZi Days first removes hard conflicts, then assigns a calendar category, and only then ranks dates inside that category. A neutral date cannot outrank an explicitly recommended date, regardless of its score.
Scoring contract frozen on 2026-09-04; reader-first and factor-placement audit completed 2026-09-09. Result-changing updates require a new ruleset version.
The decision order
01
Availability
02
Birth profiles
03
Hard exclusions
04
Category
05
Ranking
- Generate every Gregorian date in the chosen range, then apply available weekdays and user-blocked dates.
- Build both partners' available BaZi pillars from their recorded birth details.
- Remove dates that trigger any personal or traditional-calendar hard exclusion.
- Classify every remaining date as Recommended or Neutral Alternative from its almanac wedding status.
- Calculate a comparison index and rank dates only against others in the same category.
1. What each result category means
Recommended for marriage
The almanac explicitly includes 宜嫁娶 (marriage is suitable), and no current hard exclusion applies.
Neutral alternative
No current hard exclusion applies, but the almanac neither recommends nor prohibits marriage. It is not presented as equally auspicious to a recommended date.
Excluded
At least one published hard exclusion applies. The date receives no score and no rank.
Indeterminate
A required Year Pillar cannot be resolved safely near a solar-term boundary. The engine stops rather than guessing.
2. Wedding-finder birth profiles and time convention
In the wedding-date finder, BaZi pillars are used only for the documented branch rules below. This is a separate input pipeline from the personal chart calculator above.
- Birth date: entered as a Gregorian civil date.
- Known birth time: adds the Hour Pillar. The recorded local clock time is used exactly as entered.
- Unknown birth time: the Hour Pillar is omitted. No midnight, noon, or other default is invented, and no penalty is applied solely for missing time.
- Day rollover: the Day Pillar changes at civil midnight. Zi Hour runs from 23:00 to 00:59; for 23:00–23:59, the current civil date remains the Day Pillar while the Hour Stem follows the next day's Day Stem.
- Current wedding-finder limitation: birthplace, historical timezone, daylight-saving time, longitude correction, and true solar time are not applied. The separate personal chart calculator does apply those corrections.
Near a pillar-changing solar term, an exact Year or Month Pillar can depend on time and location. The current engine marks unresolved Year-Pillar cases as indeterminate instead of silently selecting a side of the boundary.
How calculation coverage is labeled
- Standard
- Both birth times are supplied and neither entered time is within 30 minutes of a Chinese two-hour boundary.
- Time-sensitive
- An entered time is close to a Chinese-hour boundary, falls in late Zi Hour, or the birth date is close to a pillar-changing solar term. Another accepted time convention could change a pillar.
- Limited
- At least one birth time is unknown, so the relevant Hour Pillar is omitted rather than guessed.
This label describes input and calculation coverage. It is not a statistical confidence percentage and does not change a date's score by itself.
3. Hard exclusions applied before scoring
Any one of these rules removes the date before category scoring or ranking:
| Layer | Rule | Trigger |
|---|---|---|
| Personal | Partner Day clash | Candidate Day Branch clashes with either partner's Day Branch. |
| Personal | Partner Year clash | Candidate Day Branch clashes with either partner's Year Branch. |
| Calendar | Wedding prohibition | The almanac avoids 嫁娶, or marks 诸事不宜 (all activities unsuitable). |
| Calendar | Month Breaker | Candidate Day Branch clashes with the calendar Month Branch. |
| Calendar | Year Breaker | Candidate Day Branch clashes with the calendar Year Branch. This is a conservative, school-specific v1 rule—not a universal rule. |
| Calendar | Four Separation | The day immediately precedes a solstice or equinox term used by the engine. |
| Calendar | Four Extinction | The day immediately precedes the Start of Spring, Summer, Autumn, or Winter term used by the engine. |
A Hai (亥) Day is not automatically rejected. It is excluded only when an independent rule above applies.
4. Personal compatibility score
Each partner starts at a baseline of 70. The candidate Day Branch is compared with that partner's available natal branches. The following point values are the exact product rules used today; they are BaZi Days scoring heuristics, not universal numbers prescribed by every tradition.
| Candidate interaction | Day | Year | Month | Hour |
|---|---|---|---|---|
| Clash (冲) | Exclude | Exclude | −10 | −5 |
| Zi–Mao punishment (子卯刑) | −15 | −8 | −6 | −3 |
| Harm (害) | −12 | −6 | −4 | −2 |
| Six Harmony (六合) | +15 | +8 | +5 | +3 |
- Complete Three Harmony (三合) involving the candidate: +5.
- Candidate self-punishment: −5.
- Complete punishment trio involving the candidate: −10.
- If one candidate-to-pillar pair matches more than one pair rule, only the highest-priority rule is scored: Clash → Zi–Mao punishment → Harm → Six Harmony.
- Each partner's result is limited to 0–100. The two partner scores are averaged and rounded to produce the Personal Compatibility score.
5. Calendar value, final index, and ranking
Eligible + explicitly marked 宜嫁娶
90
Traditional Calendar value · Recommended category
Eligible + no wedding instruction
70
Traditional Calendar value · Neutral category
Displayed comparison index
round(Personal Compatibility × 60% + Traditional Calendar × 40%)
Recommended dates and neutral alternatives are ranked separately. Ranking uses the unrounded weighted value, then the Personal Compatibility score if needed. Truly equal results share a competition rank—for example 1, 1, 3. Gregorian date is used only to keep tied items in a stable display order; an earlier date does not receive a better rank. If a display cutoff lands on a tie, every holder of that rank remains visible. “Best Match” appears only when one recommended date uniquely holds rank 1.
The values 70, 90, and the 60/40 weighting are explicit product heuristics. They make comparisons reproducible; they do not turn a traditional practice into a scientific measurement.
Reader-facing bands are presentation labels for this index, not probabilities: Strong 85–100, Balanced 70–84, Mixed 55–69, and Weak 0–54. A gap of five points or less between the two personal scores is described as similar support; a larger gap says which partner receives more support. These labels do not alter category, score, or rank.
6. Information shown but not scored
Twelve Day Officers (十二值日), Dao classification, 28 Mansions (二十八宿), and selected calendar gods—including 天德, 月德, 天德合, 月德合, 天喜, 三合, 六合, and 不将 when supplied by the calendar provider—are displayed as traditional context. In the current ruleset they do not add points, subtract points, break ties, or exclude a date.
Keeping contextual data separate prevents the interface from implying that every displayed symbol affected the recommendation.
The source audit does not support turning a Day Officer name by itself into a universal marriage prohibition. In Qinding Xieji Bianfang Shu, volume 10, marriage suitability appears in contextual combinations rather than as one blanket rule for every occurrence of 收 or 闭. Method v1 therefore treats the provider's activity-specific 宜嫁娶/忌嫁娶 result as the category source, then applies the separately published hard exclusions. A 收 or 闭 day can remain Recommended only when that combined almanac result explicitly says 宜嫁娶 and no hard exclusion applies. This also avoids counting the same almanac context twice.
| Factor | V1 placement | Effect |
|---|---|---|
| User weekday and blocked-date choices | Practical filter | Removes unavailable dates before assessment; never changes auspiciousness. |
| 宜嫁娶 / no instruction / 忌嫁娶 | Category / hard veto | Recommended / Neutral; 忌嫁娶 or 诸事不宜 excludes. |
| Month Break, Year Break, Four Separation, Four Extinction | Hard veto | Excludes before scoring. |
| Candidate clash with either partner's Day or Year Branch | Hard veto | Excludes before scoring. |
| Supported personal harmony, harm, punishment, and Month/Hour clash | Positive or negative ranking factor | Changes the documented personal comparison score. |
| Day Officer, Dao, 28 Mansion, selected calendar gods | Reference only | Displayed for traceability; no score, veto, or tie-break. |
| Unrounded weighted value, then personal score | Ranking / tie-break | Orders only dates in the same category; exact semantic ties stay tied. |
7. What the current wedding-date finder does not add to its scoring
- Full Day Master strength analysis, elemental balance, Yong Shen (用神), or Xi Shen (喜神).
- Ten Gods (十神), full stem transformation analysis, luck pillars, or Zi Wei Dou Shu. Ten Gods are displayed in the separate personal chart but are not wedding-score inputs.
- True-solar-time or historical timezone reconstruction in the wedding finder. These are available in the separate personal chart.
- Auspicious ceremony-hour selection. Method v1 ranks dates only and makes no claim that a ceremony time has been tested.
- Compatibility checks against parents, family members, venue direction, or a specific practitioner's lineage.
These omissions matter. BaZi Days should be treated as a transparent screening and comparison tool—not as a substitute for a practitioner who offers a deeper, lineage-specific date-selection service.
8. What “transparent” means here
The calendar engine, BaZi convention, eligibility rules, personal score, traditional score, and final index are versioned internally. Given the same inputs and ruleset version, the result is deterministic and reproducible. Current calendar calculations use the tyme4ts 1.5.2 provider behind a normalized BaZi Days engine.
Wedding Ruleset v1.0 validation coverage
- 125 published 2026 dates marked suitable for marriage.
- 12 published January 2026 dates marked unsuitable for marriage.
- 20 solar-term and seasonal-boundary dates checked against the Hong Kong Observatory calendar.
- 19 fixed Four Pillars snapshots checked against a separate calendar implementation.
- A fixed 365-day enumeration covering all 12 Day Officers, both Dao types, all 28 Mansions, and the selected calendar gods.
- 817 deterministic engine, UI, bilingual-copy, and SEO contract tests in the release suite.
These regression checks establish compatibility and reproducibility, not scientific validity or universal agreement between traditions.
Reproducible does not mean scientifically proven. BaZi date selection is a traditional Chinese metaphysical practice, and different schools can apply different conventions. The comparison index is not a probability of marriage success, a certainty, or a guarantee. Practical considerations—and the quality of the relationship itself—remain more important than any selected date.
Reference data and rule audit: Hong Kong Observatory, Regent Hong Kong's published almanac list, Huangli.com negative-date list, and Qinding Xieji Bianfang Shu, volume 10.