Every calendar date from 1 January 1900 to 31 December 2099 — 73,049 of them — run through the Lo Shu engine, asking a single question: how many genuinely different charts can this system make?
“The same chart” is ambiguous, and the answer moves by three orders of magnitude depending which you mean. The last rung counts raw fields including the date’s own digits, which is why it returns one chart per date — it is measuring the calendar, not the system, and it is here to show what that mistake looks like.
Each cell is one life path (down) against one birth number (across). Size is how many distinct full charts sit in that cell. Colour is how many of this century’s charts there are new to it — absent from the last one. Master numbers keep their own rows, because a reading does not reduce them. Hover any cell for its figures.
Of the 7,107 full charts produced by dates in 2000–2099, only 944 also occur somewhere in 1900–1999.
This is mostly the calendar, not the system. Every date in the 1900s carries a 1 and a 9; every date in the 2000s carries a 2. Compare two halves of the same century, where those leading digits do not change, and novelty falls to 26%. An earlier version of this page read the 87% as evidence that the system never repeats. It is not. Run it across two millennia and the space fills up: the twenty‑second century produces nothing the previous eleven had not already made.
Bazi does: wait sixty years and the year pillar is genuinely back. The test for Lo Shu is the same — shift every date forward by some period and ask whether the chart survives. A real cycle reads 100%.
| shift every date by | keep their chart |
|---|---|
| 9 years | 9.0% |
| 10 years | 0.0% |
| 60 years | 0.0% |
| 100 years | 0.0% |
| 180 years | 0.0% |
| 200 years | 0.0% |
| 1000 years | 0.0% |
| 1111 years | 0.0% |
There is no period. Lo Shu on Gregorian digits is not a wheel — it is a bag of 35,056 charts that dates keep reaching into. The 9% at nine years is the only trace of structure: the nine‑cell grid showing faintly through the calendar's noise.
What it has instead is a return interval. When a chart does come back, the wait is 9 years at the median, 3 years or less a quarter of the time, and 1,008 years at the longest. For someone born between 1940 and 2010, their chart returns within a decade 47% of the time — and for 21% it does not come back at all before the year 3000.
Resolution only counts if it is the same resolution in every pair of hands. Bazi carries live disagreements — what happens to a birth between 23:00 and 23:59, and whether clock time should be corrected to the sun at the birthplace. Neither is a bug; both are unsettled in practice. Across 185,928 birth moments:
| Bazi, what the convention changes | charts that change |
|---|---|
| zi‑hour school, early vs late | 4.17% |
| … among births in the 23:00 hour itself | 100% |
| true solar time, born in Shanghai (+6 min from its clock) | 0% |
| true solar time, born in Beijing (-14 min from its clock) | 0% |
| true solar time, born in Chengdu (-64 min from its clock) | 0.2% |
| true solar time, born in Urumqi (-130 min from its clock) | 100% |
| true solar time, born in Kashgar (-176 min from its clock) | 100% |
The last rows are China running one clock across sixty degrees of longitude. A Kashgar birth certificate says Beijing time; the sun there is nearly three hours behind it. Every chart changes depending on whether the practitioner corrects for it.
Lo Shu has no such switch. Hour, timezone, longitude, day boundary and solar‑term tables are all not inputs. Two people given the same date produce the same grid, always. The only route to a different chart is a different date.
Six wheels, each with its own tooth count, each advancing at its own rate. Two of them are not free: the hour stem is cut from the day stem and the month stem from the year stem, so they turn with the wheel above rather than on their own. Shown in grey.
year pillar 60 × month pillar 12 × day pillar 60 × hour pillar 12 = 518,400 charts.
Left free, eight wheels would have given 12,960,000 — twenty-five times more, and a worse system, because nothing would be connected to anything. Gearing the stems to the wheels above trades size for coherence: your hour is bound to your day, your month to your year. The chart is a linked mechanism rather than four separate readings stacked up.
It has no rates and nothing turns. It is a written date taken apart into digits and sorted into nine boxes. The parts are slots, and how much each one can vary is the whole story.
Three of the eight barely move. The month tens digit is only ever 0 or 1; the day tens only 0 to 3; the year thousands is fixed for anyone alive. If the slots were free they would make 800,000 combinations — the calendar permits 73,049.
Eight positions, but not eight digits in the grid. A zero has no box, so only some of them land; then every reduction step and the life number are added on top. What actually reaches the nine boxes is 4 to 13 digits, 9 on average — and a single box can hold as many as 8.
Then comes the step that defines the system: order is thrown away. Those 73,049 dates collapse to 13,292 readings, because 12 March, 21 March and 3 December all drop the same digits into the same boxes. Bazi compresses nothing — every distinct moment is a distinct chart. Lo Shu compresses deliberately, and what it keeps is composition rather than sequence.
| Bazi | Lo Shu | |
|---|---|---|
| what it is | four meshed wheels | a date's digits sorted into nine boxes |
| what it needs | date, hour, place, school | a date |
| digits or parts | 4 free wheels of 6 | 4–13 digits, mean 9 |
| complete reading | 518,400 | 13,292 |
| from a date alone | 43,200 | 13,292 |
| people per reading | 15,818 | 616,912 |
| shortest recurrence | 60 years | 1 year |
| typical recurrence | 60 or 180 years | 8 years |
| two contemporaries alike | never, chart for chart | 81% of returns |
| same input, two casters | differs 4% of the time | always identical |
The row to read first is from a date alone. Bazi normally wants the hour, and the hour is worth 12× on its own — take it away and the system loses twelve-thirteenths of what it can say. Give both systems nothing but a date, and Bazi still separates 43,200 people where Lo Shu separates 13,292 — still 3.25× finer, crippled.
That is not an accident of arithmetic, it is what the two were built to do. Bazi spends its resolution on when: four wheels turning at four rates, so that the same configuration cannot come round again inside 60 years. Lo Shu throws away order on purpose — 12 March and 21 March are the same reading — and spends what it has on composition: which numbers you carry, which repeat, which are missing.
So the honest version of the old headline is this. A full Bazi chart cannot recur inside 60 years, because the year wheel has 60 teeth and nothing returns before it does — two people sharing one were born at minimum two generations apart and never meet as peers. But the reading drawn from that chart is much coarser than the chart, and two contemporaries share a Bazi reading most of the time. A Lo Shu reading can return the very next year, and 81.5% of its returns happen within a single generation.
Neither of those is a system winning. Bazi was built so that no two contemporaries cast alike — it isolates, and it pays for that with an hour most people cannot supply. Lo Shu puts you in a room with roughly 616,912 living people who carry your configuration — it groups, from a fact everybody knows. If what you want is to be told something no one else could be told, Bazi, and go and find your birth hour. If what you want is to find who else is like you, and what they did with it, Lo Shu — and that is a choice about the purpose of a reading, not about which system is more accurate.
The claim above is abstract, so here it is as two pairs of actual dates, cast by the calculator that ships with the product — not recomputed here. A repeat means what you said it means: the chart is the same, with the same weight on every number, and the life number, the derived numbers, the innate digits and the missing numbers all match too.
10 January 1900
innate1 9 1 1
derived1 2
life3
missing4 5 6 7 8
1 October 1900
innate1 9 1 1
derived1 2
life3
missing4 5 6 7 8
Every line matches. Two people born nine months apart, in the same year, in any two places on earth, are handed the same reading — and they can sit in the same room. That is not a rare accident either: 3,059 of the 3,534 readings the system can produce are reachable twice inside a single year.
1 January 1600 · Bazi year 1599
day masterXin metal
strengthvery weak
17 December 1659 · Bazi year 1659
day masterXin metal
strengthvery weak
Same four pillars, same day master, same strength — and 60 years between them, which is the shortest gap the system permits. The year wheel has 60 teeth, so a full Bazi chart cannot return sooner, and the two people can never meet as peers. The gap is measured in Bazi years rather than calendar years, because a birth between 1 January and Li Chun still belongs to the year before — counting calendars reports a false 59.
Everything above treats resolution as a good: the finer the system, the more it can say about you alone. But a number that makes you unique is useless for meeting anyone, because there is nobody to share it with. A reading has two jobs — tell you something about yourself, and give you something in common — and they pull in opposite directions.
Both traditions solved it the same way, and neither seems to have borrowed it from the other: keep one small number in public, and everything else underneath.
| system | what you say | values | people each |
|---|---|---|---|
| Lo Shu | “I am a 3” | 9 | 911,111,111 |
| Lo Shu | “a 3, born on a 7” | 81 | 101,234,568 |
| Lo Shu | “I have no 4 and no 8” | 299 | 27,424,749 |
| Lo Shu | full profile | 13,292 | 616,912 |
| Bazi | “I am a Tiger” | 12 | 683,333,333 |
| Bazi | “Fire Tiger” | 60 | 136,666,667 |
| Bazi | “I am Yang Wood” | 10 | 820,000,000 |
| Bazi | four pillars, no hour | 42,915 | 191,075 |
The shaded rows are the private ones — the layers nobody opens a conversation with. Above them sit the numbers people actually trade: a life number, an animal, a day master. Every one of them is small enough that hundreds of millions of living people carry yours.
24% and 23%. Two traditions that did not learn it from each other put almost exactly the same fraction of the system where a stranger can reach it. Whatever the right amount of yourself to wear in public is, both of them landed on roughly a quarter.
There is a second cost, and it is the one that decides which system a person can actually use. Lo Shu asks you to learn 9 symbols — the digits 1 to 9, one meaning each. Bazi asks you to learn 10 stems and 12 branches, which combine into 60 named pillars, each read against the others. For a reader raised on the sexagenary calendar that is ordinary literacy. For anyone raised on a Gregorian year it is a language to learn before the first sentence.
Which reframes the whole comparison. Bazi is the finer instrument — 3.25× finer than Lo Shu even stripped of the hour it wants. But finer instruments cost more to hold, and almost all of what Bazi resolves is private by construction: your pillars are yours, and the only part of them a stranger can meet you on is the animal. Lo Shu gives up resolution and buys reach with it. Nine numbers, one page, and a sentence anyone can finish: I am a 3, what are you?
The panel above measures how much of each system is public. It says nothing about the thing a public layer is for. A social layer is a graph: join everyone who can say the same sentence and see what shape you get. Three questions, on all 73,049 dates in the window — how often two strangers connect, whether the tribes are the same size, and whether the connection means anything.
| what you say | values | two strangers match | in a room of 30 | largest tribe |
|---|---|---|---|---|
| “I am a 3” | 9 | 11.11% | 3.22 | 11.11% |
| “born on a 7” | 9 | 11.30% | 3.28 | 13.14% |
| “I have no 4 and no 8” | 299 | 0.82% | 0.24 | 1.94% |
| “I am a Tiger” | 12 | 8.34% | 2.42 | 8.50% |
| “a Fire year” | 10 | 10.00% | 2.9 | 10.00% |
| “I am Yang Wood” | 10 | 10.00% | 2.9 | 10.00% |
On the headline layers Lo Shu connects more often — 11.11% against the animal’s 8.34%, because nine tribes are bigger than twelve. In a room of 30 strangers that is 3.22 people who share your life number and 2.42 who share your animal.
And the nine tribes are almost exactly equal: the smallest holds 8,114 dates and the largest 8,119, a spread of 0.06%. The twelve animals run from 8.00% to 8.50%, a spread of 6% — leap years and the moving spring boundary make some animals commoner than others. Nobody using Lo Shu is in a minority.
Then the result that spoils the easy story. Nobody trades one token, so the fair question is whether any of the things you could comfortably say match. Counting all three public layers on each side, Bazi is the wider net: 24.97% against Lo Shu’s 21.63%. If a social layer were only about reach, Bazi would win this.
So reach is not what separates them. This is: does a public match tell you anything about the private reading underneath? The honest way to ask is on components that are disjoint — where neither key can be worked out from the other, so a result above 1 is a real relationship rather than an artefact of one number containing another.
| a shared… | …predicts a shared… | normally | given the match | |
|---|---|---|---|---|
| life number | missing numbers | 0.82% | 2.41% | 2.95× |
| year animal | day pillar | 1.67% | 1.65% | 0.99× |
| control: year animal | birth number | 11.30% | 11.29% | 1.00× |
A shared life number makes a shared set of missing numbers 2.95× as likely. A shared animal makes a shared day pillar 0.99× as likely — which is to say, no more likely at all. The control row is there so that number can be read: when two things are genuinely unrelated this measure returns 1.00, and the Bazi row is indistinguishable from it.
That is the difference, and it is not about size. The Lo Shu life number is cut from the same cloth as the rest of the reading — the digits that set it are the digits that fill the grid, so sharing it means genuinely sharing something. The animal is a separate wheel that happens to be visible from outside. It turns on its own, and knowing where it stopped tells you nothing about the other three.
Which is the same trade one more time. Bazi’s public tokens are nearly independent of each other — mean coupling 1.34× against Lo Shu’s 1.73× — and independence is exactly what buys the wider net and empties it out. Bazi will introduce you to more people and give you less to say to them. Lo Shu introduces you to fewer, and every introduction carries a piece of the actual reading.
A birth date is the one fact almost everyone has. Ranked by how many different charts each system can make from nothing else, over 1900–2099.
| system | charts | people per chart | what it reads |
|---|---|---|---|
| Sun sign | 12 | 683,333,333 | twelve signs |
| Chinese zodiac animal | 12 | 683,333,333 | twelve animals |
| Life path only | 12 | 683,333,333 | the single headline number |
| Chinese year pillar | 60 | 136,666,667 | stem + branch, the 60-cycle |
| Nine Star Ki | 81 | 101,234,568 | year star + month star |
| Tzolk'in | 260 | 31,538,462 | 13 x 20 sacred count |
| Western numerology, full | 1,185 | 6,919,831 | life path + birthday + attitude + challenges |
| Lo Shu, full chart | 13,292 | 616,912 | grid + missing + life + derived + birth |
| Bazi, no hour | 42,915 | 191,075 | three of four pillars |
| Bazi, four pillars | 514,967 | 15,923 | needs the hour, to within two |
Only one date‑only system is finer than Lo Shu, and by 3.2× — Bazi with its fourth pillar removed. It buys that edge back with the convention problem above, and with a day pillar that is itself uncertain for anyone born in the hour before midnight. Everything else on this list is between 11 and 1,108 times coarser.
A chart alone cannot identify anyone: about 1,144,452 living people share a complete Lo Shu chart with you. But nobody is read by their chart alone — they are read inside a life. Switch the layers on and watch what happens to the number of people who share all of it.
Generated by tools/build-capacity-map.mjs from data/capacity-map.json, which tools/experiment-capacity.mjs produces in about 1.6 seconds. Charts are computed by chartFor() — the same function that built the people database, not a reimplementation.