≈0.01°
Sun sign
Correct on every day except within a few hours of an ingress, where we show the exact crossing time instead of guessing.
The formulas, the stated accuracy, the date ranges and the sources. Everything needed to reproduce any figure on this site — or to prove one of them wrong.
An astrology site can be trusted on exactly one axis: whether its arithmetic is right. Everything else is interpretation, and interpretation is not something anyone can be an authority on. So instead of a paragraph about our credentials, here is the arithmetic — with its error bars.
If you find a discrepancy between a figure here and one from software you trust, we want the report. Calculation bugs are the one kind of mistake on a site like this that is genuinely fixable.
The position of the Sun along the ecliptic, from which the Sun sign and degree follow. d is days elapsed since J2000.0 (1 January 2000, 12:00 UTC).
Mean longitude
L = 280.460° + 0.9856474° × d
Mean anomaly
g = 357.528° + 0.9856003° × d
Ecliptic longitude
λ = L + 1.915° × sin(g) + 0.020° × sin(2g)
The two sine terms are the equation of centre — the correction for Earth’s orbit being an ellipse rather than a circle. They are also the reason the signs are unequal in length, which most sites do not mention.
How we get sign dates to the minute instead of publishing a fixed range.
A sign begins the moment λ crosses a multiple of 30°. Rather than look that up, we bracket the crossing to a day, then halve the interval repeatedly — evaluating λ each time — until the bracket is under a minute wide. Roughly twenty iterations.
This is why our sign boundaries are given for a specific year and printed with a time. It is also why they sometimes disagree with the dates on other sites by a day: those dates are an average, and the average is wrong in most individual years.
Running it across all twelve boundaries gives the sign lengths — Cancer around 31.45 days, Capricorn around 29.20 — and from there the share of births falling under each sign, which is not one twelfth.
Age of the Moon in days
age = (t − t₀) mod 29.530588853
t₀ = the new moon of 6 January 2000, 18:14 UTC.
Illuminated fraction
k = (1 − cos(2π × age ⁄ 29.530588853)) ⁄ 2
This is the mean synodic month, so it ignores the real variation in lunation length (which runs from about 29.27 to 29.83 days). Expect a few hours of drift against the true new moon. We state that rather than implying minute-level precision we do not have.
Local sidereal time
LST = 280.46061837° + 360.98564736629° × d + longitude
Rising degree
Asc = atan2( −cos(RAMC), sin(RAMC)·cos(ε) + tan(φ)·sin(ε) )
RAMC = LST in radians, ε = obliquity of the ecliptic, φ = geographic latitude.
The ascendant cannot be computed without a birth time and a latitude — not approximated, not defaulted to noon. Where we do not have them, we say the ascendant is unavailable instead of printing one.
The one calculation on this site that needed a real planetary model rather than a single series.
For each planet we take the Keplerian elements — semi-major axis, eccentricity, inclination, mean longitude, longitude of perihelion and of the ascending node — and advance them linearly from J2000.0. Kepler’s equation is then solved by Newton iteration to get the eccentric anomaly, which gives heliocentric rectangular coordinates.
Do that for both the planet and Earth, subtract, and the geocentric ecliptic
longitude is atan2(yp − ye, xp −
xe). A planet is retrograde exactly when that longitude is
decreasing, so a station is a sign change in its daily derivative — found by
bisection to under a minute, the same technique as the sign ingress above.
The shadow periods fall straight out of the same function. The pre-retrograde shadow opens when the planet first crosses the longitude the retrograde will end on; the post-retrograde shadow closes when it returns to the longitude it began on. Both are root-finds on a known target, which is why we can publish exact dates where other sites estimate them.
Verification. Our computed Mercury stations for 2025 and 2026 match published ephemerides to the day, with identical signs in all six periods. See the retrograde page for the output.
What we will defend, figure by figure.
≈0.01°
Correct on every day except within a few hours of an ingress, where we show the exact crossing time instead of guessing.
≈0.01°
The degree within the sign is trustworthy to two decimal places — enough for decan and critical-degree work.
±4 hours
Uses the mean synodic month, so it drifts against the true new moon by a few hours either way. Fine for a phase name, not for eclipse timing.
±3 hours
The Moon crosses a sign roughly every 2.5 days, so a few hours of error matters only near a boundary — which we flag.
≈0.5°
Dominated by your birth time, not our formula: the ascendant moves about 1° every 4 minutes, so a 15-minute uncertainty in your records is 4° of chart.
to the minute
Found by bisection on the longitude function, so it inherits the solar accuracy above — roughly a 15-minute window.
±a few hours
Verified against published ephemerides for 2025 and 2026: all Mercury station dates match to the day and the signs match exactly. The hour is not guaranteed, which is why we treat a birth date within hours of a station as borderline rather than settled.
≈0.2°
Mercury through Saturn, from Keplerian elements. Adequate for sign and degree; not for aspect work demanding arcminutes.
Where a page says a result is rare, the number behind it was produced by enumeration, not by quoting someone. The standard range is 1 January 1930 to 31 December 2029 — 36,525 dates, printed next to the figure so you can check it.
Two findings from that process are worth naming here because they contradict what is published elsewhere:
Both are reproducible in a few lines of code in any language. That is the point.
Named, including for the traditional material — so you can see where a meaning actually comes from and how old it really is.
Astronomical formulas
Standard low-precision solar and lunar series as published in the Astronomical Almanac and in Meeus, Astronomical Algorithms (2nd ed., 1998).
Planetary positions
Keplerian elements and their century rates from the JPL Solar System Dynamics table “Keplerian Elements for Approximate Positions of the Major Planets”, valid 1800–2050.
Synodic month
Mean synodic month of 29.530588853 days, measured from the new moon of 6 January 2000, 18:14 UTC.
Obliquity
IAU 1976 value of 23.4393° at J2000.0, with linear secular decrease applied.
Tarot correspondences
Golden Dawn attributions as recorded in Book T (1888) and carried into Waite’s Pictorial Key to the Tarot (1911).
Numerology tables
Pythagorean A=1…I=9 cycle, and the Chaldean table as given in Cheiro, Book of Numbers (1926) — which assigns by sound and never uses 9.
Dream prevalence
Nielsen et al., “The typical dreams of Canadian university students”, Dreaming 13(4), 2003 — the source of the chased/teeth/falling percentages.
Runes
Elder Futhark order and names from the Anglo-Saxon and Icelandic rune poems; meanings labelled as reconstructed where they are.
Gem data
Chemical formulas, crystal systems and Mohs values from standard mineralogical reference; origins from current commercial production.
Chinese calendar
Lunisolar New Year dates tabulated 1924–2033 from the traditional calendar, not approximated from a fixed date.
Destiny Matrix
Method as taught in the Russian-language schools that assembled it during the 2010s; the arithmetic is uncontested, the diagonals are not.
We do not use Swiss Ephemeris or JPL data. Those would give arcsecond precision that interpretation never uses, at the cost of the thing we care about: every formula on this page can be checked with a pocket calculator. The trade is stated openly rather than hidden behind a claim of astronomical accuracy.
We do not apply a house system beyond the ascendant and midheaven, because the schools disagree and there is no basis for choosing. We do not compute progressions or solar arcs. And we do not present a traditional meaning as a finding — if the only support for a claim is that someone wrote it down in 1888, the page says 1888.
Send the input you used, the figure we returned and the figure you expected to [email protected]. See also about the site and the disclaimer.