The math
How the numbers are actually calculated
Every score, chart, and percentage in Astraten comes from deterministic math — and it's exactly what our AI is trained on. Here are the actual algorithms, in the open.
The foundation
One shared idea: aspects
The compatibility score, the compatibility radar, and the weekly personal metrics all reduce to the same geometry: measure the angular distance between two planets, check whether it falls within a major aspect's allowed range (its "orb"), and weight it by how exact the hit is.
separation(a, b) = min( |a − b| mod 360, 360 − |a − b| mod 360 ) → 0°–180° aspect angles: conjunction 0° · sextile 60° · square 90° · trine 120° · opposition 180° strength = 1 − |separation − aspectAngle| / orb (1.0 at exact, 0.0 at the orb's edge)
The orb is the allowed tolerance in degrees — with a 6° orb, two planets count as a trine anywhere from 114° to 126° apart. The closer to exact 120°, the stronger the hit, via a straight-line falloff.
Compatibility
The compatibility score & its five bars
The headline score splits into two lookup tables: an element-pair table (70%) and a modality-pair table (30%), both hand-calibrated against classical astrological compatibility.
score = round( elementPairScore(el1, el2) × 0.7 + modalityPairScore(mod1, mod2) × 0.3 ) element examples: Air+Fire 85 · Earth+Water 82 · Fire+Fire 80 · Fire+Water 40 modality examples: Cardinal+Mutable 80 · same modality 60 · Cardinal+Fixed 65
When both people have a full (birth-time) chart, the score adjusts with a Moon-element pairing bonus (±8) and a Venus↔Mars cross bonus (±5 each, averaged). The Chinese system mirrors this: animal relation (triangle 88, opposite 30, same 72, adjacent 62, else 55) × 70% + the five-element productive/controlling cycle (85 / 35) × 30%.
The five breakdown bars (Stability, Communication, Emotional Openness, Trust, Flexibility) are independent formulas, each drawing on its own planetary signals, clamped to 10–98 so nothing ever reads as an absolute 0 or 100.
Compatibility
The compatibility radar (synastry)
Each of the five radar axes (Romance, Passion, Values, Growth, Harmony) has its own weighted ruling planets. Every ruler in one chart is paired against every ruler in the other — both directions — and checked for an aspect within orb.
contribution = valence(aspect, planetA, planetB) × strength × avg(weightA, weightB) rawSum = Σ contribution (over every ruler×ruler pair that hits an aspect) score = round( 50 + 50 × tanh(rawSum / reference) ) ← 50 = neutral
Valence is a lookup: trine +1.0, sextile +0.6, square −0.8, opposition −0.9 (or +0.4 on a "polarizing" axis — e.g. Passion still reads an opposition as attraction). Conjunctions depend on the specific planet pair — Venus-Venus is +1.2, Saturn-Moon is −0.8.
tanh (the hyperbolic tangent) softly compresses the number into 0–100 — sensitive in the middle, asymptotic at the edges, so a 100 or a 0 is rare. The reference is fixed per axis, so A↔B always equals B↔A, and any two couples' scores are directly comparable.
Weekly forecast
This week's personal metrics
Each of the five areas (Love, Career, Energy, Money, Communication) has its own weighted transiting rulers and a set of targets in your natal chart — planets and house cusps. Every day, each ruler is checked against every target.
valence: trine +0.8 · sextile +0.5 · square −0.7 · opposition −0.9
conjunction → by the TRANSITING planet's nature (Venus +0.9, Saturn −0.7, …)
contribution = valence × strength × rulerWeight (× 0.85 if the ruler is retrograde)
score = round( 50 + 50 × tanh(rawSum × 0.95) )A retrograde ruler is dampened (×0.85); if it's Mercury and the result would be positive, it's halved again — a retrograde Mercury never reads as a bonus for the mind. 50 is neutral, so an ordinary week sits in the 40s–60s, and a genuinely strong or hard day needs a real pile-up of aspects to get there.
Zodiac Man
Elemental balance
Every one of your planets falls into one of four elements (Fire/Earth/Air/Water) by its sign. Percentages are rounded by the largest-remainder method so they sum to exactly 100 — naive rounding often lands on 99 or 101.
The 12 body zones (Aries = head … Pisces = feet) are fixed and identical for everyone. What's personal is which sign the Ascendant, Sun, Moon, Mars, and Saturn each land in — and that sign is what rules one of those 12 zones. Two different people almost never share all five at once.
Past life
The karmic fingerprint
The South Node's mean position comes from a closed-form formula — it moves slowly, about 0.053° per day, so its sign doesn't depend on the exact birth time.
northNodeLongitude = ( 125.04452° − 0.05295377° × d ) mod 360 (d = days since 2000-01-01 12:00 UTC) southNode = (northNode + 180°) mod 360 sign = floor(longitude / 30) → Aries..Pisces house = which of the 12 natal cusps the longitude falls inside (needs birth time)
From there, every subsequent fact — who you were, what remained unfinished (Saturn), what you carry (12th-house planets), what you mastered (the node's ruler), what this life asks (the North Node) — is a pure table lookup keyed to these signs and houses, and this is exactly what the AI is trained on for this reading. Multiplying several independent axes means two different charts essentially never land on the same story — while the same chart always gets the same one, retold in fresh words.
Why we train our AI this way
Every new reading follows the same rule: the numbers come from math, and that's exactly what we train our AI on — so every story it tells is grounded in a real calculation. This page grows every time we add a new reading.
See all readings