How Western astrology is calculated
What we compute, how we compute it, and where we stop.
The idea
Western astrology maps the sky at the minute you were born. The zodiac it uses is tropical, which means it starts at the spring equinox and cuts the circle into twelve arcs of 30°. So a sign is a stretch of sky measured from the seasons — not a picture of stars, and not quite the constellation of the same name. Three points do most of the work: the Sun is the part of you that stays the same, the Moon is your inner weather, and the rising sign is the arc of zodiac climbing over the eastern horizon at your birth minute — the face you meet the world in. People call those three the Big Three.
The Sun sign, and why the dates are only almost right
Sun-sign dates are a table, and we say out loud what a table costs. The Sun crosses each 30° line at an instant that drifts by about a day against the calendar year, so any fixed date list is roughly a day off at the edges. Most sites resolve that by picking one side and saying nothing. Bokki instead checks the day before and the day after yours: if either falls in a different sign, your birthday is inside that fuzzy band, and the page tells you so and names the neighbour — a Taurus–Gemini reading rather than a confident Taurus. The doubt is real, so we show the doubt. We can also say how big the doubt is, because we measured it. Take the boundary into Aries, which our table calls March 21, and ask the same ephemeris that gives us the Moon and the ascendant when the Sun actually reached zero degrees. Across 1950 to 2030 the answer lands anywhere inside a window about 32 hours wide, from the small hours of March 20 to mid-morning on March 21. A calendar day is 24 hours, so a 32-hour window cannot fit inside one date — and it does not. The equinox fell on March 20 in 59 of those 81 years, and in 29 of the 31 years since 2000, not on the 21st our table names; in 2026 it was March 20 at 14:45 UTC. Over all twelve boundaries and all 81 years, 972 crossings in total, the table names a different calendar day 317 times and is never wrong by more than one day. A 32-hour window touches two calendar dates, and the flag also covers two — the day before each boundary and the boundary day itself, 24 days of the year in all — which is why it works as well as it does. One honest gap — in 24 of those 972 crossings the Sun crossed the day after the table's date, which leaves part of an unflagged day on the far side of the line, and all 24 of them fall before 1980. All of that is the answer for a date alone. Once you give the tool your birth time and birthplace, it stops using the table for the Sun: it reads the Sun from the same ephemeris at the same instant as the Moon and the ascendant, names the side of the line you were born on, and adds a note only when you were born within an hour of the crossing, where daylight saving could still flip it.
The Moon sign and the ascendant are real astronomy
Neither of these comes from a table. For the Moon we ask an ephemeris — astronomy-engine, MIT-licensed and derived from JPL data — for the Moon's geocentric ecliptic longitude at your birth instant, and the sign is that longitude divided by thirty. The Moon travels about 13° a day, so without your birth hour the answer would be a guess, and we ask rather than guess. The ascendant needs the place too: we take apparent sidereal time from the same ephemeris, add your east longitude for local sidereal time, take the true obliquity of date, and solve the classical ascendant formula with your latitude. The tests check that result two independent ways — the point we compute is pushed back through the ephemeris's own rotation matrices and has to land on the eastern horizon at altitude zero, which is the definition of an ascendant, and it also has to match a published chart. The ascendant turns roughly 1° every four minutes, which is exactly why we ask for the city.
Saturn and Jupiter returns
A return is the moment a planet comes back to the longitude it held when you were born. Bokki finds it by binary search on the sign change of that difference, and the tests hold the agreement to about a hundredth of a degree, with the period landing near 29.5 years for Saturn and 11.86 for Jupiter. One honest wrinkle: while a planet is retrograde it can cross the same degree up to three times, so a return is not always a single date. Bokki reports the first exact pass, which is the usual practice, and the code says so instead of hiding it.
Tropical is not sidereal
Bokki's Vedic page runs on the same ephemeris with the Lahiri ayanāṃśa subtracted. Same sky, different zero point: tropical counts from the equinox, sidereal from the fixed stars, and the gap between them is currently around 24° — usually a whole sign. That is why your Western Sun sign and your Vedic rāśi often disagree, and why neither is a correction of the other. We keep the two engines apart in the code for the same reason.
What Bokki does not calculate
Houses and aspects. A full natal chart divides the sky into twelve houses — Placidus, whole sign, equal, and practitioners genuinely disagree about which — and measures the angles between planets. We compute neither, so we never draw a wheel and call it a chart. Daylight saving is not guessed: each birthplace carries its IANA time zone, so your birth time is read on the clock that city actually kept that day — summer time, and Seoul's UTC+8:30 of 1954–61, included — and the page prints the offset it used. The one hour we cannot settle is the hour when clocks were turned back and the same time happened twice; there the page gives both answers when they differ. Cities we do not have: the list is forty-eight places with latitude, east longitude and time zone, and if yours is not on it you get no ascendant at all instead of an invented one. And nothing here is a verdict — no ranking of you, no score attached to another person, and nothing about your health.
Closing note — 972 crossings counted, off by more than a day zero times
In short: nothing on this page comes from memory or a single fixed answer. The Sun-sign table is checked against the same ephemeris that gives the Moon sign and the ascendant — run across all twelve boundaries and 81 years, 1950 to 2030, that is 972 crossings, the table names a different calendar day 317 times, and it is never wrong by more than one day, because the cusp flag covers both days a 32-hour window can touch. The Moon sign, the ascendant, and the Saturn and Jupiter returns are not table lookups at all; they come straight from the Moon's longitude and the true obliquity of date, and the tests hold the returns to about a hundredth of a degree.
What we chose not to compute sits right next to that precision: houses, aspects, and a sidereal Sun sign. The Vedic page runs the same ephemeris but subtracts a different zero point — currently about 24° away — so a Western Sun sign and a Vedic rāśi for the same birth can disagree without either being a mistake.