Getting started & trust
How We Calculate Charts at Velvet Zodiac
A transparent look at local birth time to UTC, tropical geocentric longitudes, house geometry, unknown-time Moon aspect survival, composite midpoint synthesis, and the limits of what the tools calculate.

01
The short version: we separate astronomy from interpretation
Velvet Zodiac keeps calculation and interpretation separate. The calculation layer turns birth data into astronomical positions and chart geometry; the editorial layer turns those results into traditional astrology language for reflection. A reproducible longitude is a calculation. What that longitude means psychologically is interpretation, not an astronomical fact.
This page documents the live implementation. The full birth chart calculates tropical geocentric Sun through Pluto plus Ascendant, Midheaven, and Whole Sign, Equal House, or Placidus houses. The dedicated synastry path regenerates the full Sun-through-Pluto chart plus Rising when a time is known; an untimed person does not get a fake exact Moon degree: Moon is handled through the site’s uncertainty logic, while Rising, MC, and that person’s house frame are omitted from exact timed geometry.
02
Step 1: convert the recorded local birth time to a real UTC instant
Planetary positions need a real instant. The tool validates the entered local date and clock time, then converts that wall time to UTC through the selected IANA time zone instead of asking the user to calculate an offset.
Daylight-saving transitions are checked. A local time that never occurred during a spring-forward change is rejected rather than silently shifted. When a fall-back clock time occurs twice, the current documented convention uses the earlier occurrence so identical inputs remain reproducible.
For 1900–1969, covered zones use bundled historical transition data because older civil-time handling is not equally reliable across runtimes. If a historical zone is not covered, the site communicates the limitation rather than claiming every pre-1970 offset is verified.
03
Step 2: calculate geocentric tropical longitude with Astronomy Engine
The project uses Astronomy Engine 2.1.19. For each body, it obtains a geocentric vector with aberration correction, rotates from the J2000 equatorial frame into the true ecliptic-of-date frame, and converts the result to a normalized 0–360° longitude.
That value is tropical geocentric longitude. The ecliptic is divided into twelve 30° tropical signs beginning at Aries; no sidereal ayanamsa is applied. A sidereal service can therefore show different signs from the same birth data without either service necessarily having an arithmetic error.

04
Step 3: derive the displayed sign and degree without hiding rounding
The sign is the 30° segment containing the normalized longitude. The within-sign value is formatted as degrees and arcminutes, including a carry when rounding would otherwise display an impossible 60 arcminutes.
Formatting never becomes the source for later geometry. Aspect calculations continue to use the higher-precision numeric longitude, then format the result for display.
05
Step 4: calculate the Ascendant, Midheaven, and selected house frame
The Ascendant is derived from the birth instant and observer latitude/longitude by transforming the local horizon through equatorial and ecliptic frames and finding the eastern ecliptic intersection. It is not a sign-table lookup.
Midheaven is derived separately from local sidereal time, geographic longitude, and ecliptic obliquity; IC remains exactly 180° opposite MC. Published tropical anchors for Michael Hutchence, Björk, and Lucy Lawless are pinned in regression tests so the angle routine is not only compared with itself.
Whole Sign starts house 1 at 0° of the Ascendant’s sign. Equal House starts house 1 at the exact Ascendant and advances by 30°. Placidus uses unequal, time-based quadrant cusps anchored by Ascendant and Midheaven, is checked against frozen Swiss Ephemeris cusp anchors, and is refused inside the polar circles where this construction is undefined.
Planetary longitude does not change when house system changes, but house assignment can. The UI adds a visible caution when a placement falls within 2° of the nearest selected-system cusp. That boundary flag is a sensitivity note, not a rule that moves a planet into the next house.
06
Step 5: detect retrograde as apparent change in tropical longitude
For Mercury through Pluto, Velvet Zodiac compares tropical longitude with a later sample and marks apparent backward motion as retrograde. Fast planets use a one-hour comparison; Jupiter through Pluto use a 24-hour baseline to make the slower motion easier to resolve.
This is a natal display test, not an exact station-time ephemeris. Near a station, apparent speed approaches zero, so any sampled method deserves extra caution.
07
Unknown birth time: we omit time-sensitive outputs instead of pretending noon is exact
Synastry and Relationship Report accept a missing birth time. They use 12:00 local time only as a disclosed date anchor for slower planets, while the untimed result removes Moon from exact synastry aspect math and also omits Rising, MC, and that person’s house frame. Those retained planetary degrees are date-anchored approximations, not a timed natal chart.
Moon gets a separate civil-day uncertainty window from 00:01 to 23:59 local time. Noon may be calculated as a display reference, but it is never promoted back into the exact aspect list. The range shows what the missing clock time leaves possible.
For major Moon contacts, the report runs a survival check across the continuous start-to-end Moon longitude envelope. Stable means the same aspect remains within the focused orb across the whole window; Conditional means only part of the window supports it; Omit means no part does, so it is not promoted as a contact. If both Moons are untimed, both envelopes are evaluated together.
If the counterpart is another untimed slower planet, that planet remains the disclosed noon date anchor used by the current unknown-time layer. Stable therefore means stable across the Moon window; it does not claim that every body has been retimed across the full day.
08
Relationship report: synastry and composite stay separate until synthesis
Relationship Report calculates two distinct techniques from the same pair of inputs. Synastry keeps both natal charts intact and measures cross-chart aspects and any supported directional house overlays. Composite uses the shortest-arc midpoint between matching retained bodies and measures internal aspects in that midpoint chart.
The report shows those lenses separately before synthesis. Its summary uses the leading synastry contact, leading composite aspect, and repeated planet labels to suggest a reading order; it does not assign a compatibility score. If either time is unknown, composite Moon and Rising remain omitted so midpoint math does not quietly reintroduce guessed time-sensitive positions.
09
Davison chart: derive the midpoint moment, then scan declared time uncertainty
Velvet Zodiac’s standalone Davison tool currently names and calculates the uncorrected Davison variant rather than hiding the convention. It converts both entered local birth times to UTC, takes the exact temporal midpoint between those instants, averages the two latitudes and longitudes for the derived location, and casts a new chart for that midpoint moment and place. The tool flags antimeridian-sensitive source locations because a simple arithmetic longitude mean can be method-sensitive when the births straddle ±180°, and it keeps the selected house system visible.
If a birth time is marked approximate, the Davison tool does not collapse the uncertainty to the entered center minute. It scans every valid local civil minute inside the selected ±15, ±30, ±60, or ±120 minute range, deduplicates identical derived midpoint instants before ephemeris work, and labels sign, house, Midheaven, aspect-presence, and Composite↔Davison display classifications as Stable, Boundary-sensitive, or Withheld. The visible wheel remains the center estimate; a Stable badge applies to the named classification, not to an exact degree. A completely unknown clock time still withholds Davison instead of substituting noon.
10
What our calculation does not prove
Astronomical software can reproduce body positions under a defined coordinate model, and our code can transform those positions into tropical longitudes and chart geometry. None of that proves that a placement determines personality, relationship longevity, affection, or destiny. Those are interpretive claims.
Velvet Zodiac therefore treats interpretations as themes and questions rather than measurements of a person. Calculation integrity means reproducible inputs and methods; interpretive integrity means not borrowing astronomy’s precision to make psychological claims stronger than the evidence.
11
How to reproduce or challenge a Velvet Zodiac result
To reproduce a result, use the same local date and time, IANA zone, latitude, longitude, tropical reference, and house system. Compare UTC conversion first, then planetary longitudes, then angles and houses. Differences can come from time-zone history, tropical versus sidereal reference, coordinate choices, rounding, topocentric options, or angle implementation.
For daylight-saving boundaries or older records, verify civil time before debugging astrology. For an uncertain time, compare ranges instead of one guessed minute. A reproducible discrepancy in the documented calculation is a software bug to investigate—not something to explain away with interpretation.
Common questions
How We Calculate Charts at Velvet Zodiac FAQ
Does Velvet Zodiac use tropical or sidereal astrology?
The current calculators use tropical geocentric longitude. They do not apply a sidereal ayanamsa, so results can differ from sidereal services even when the same birth data is used.
Which house system does the Velvet Zodiac birth chart use?
The full birth-chart tool supports Whole Sign, Ascendant-based Equal House, and Placidus. It names the selected system in the result and keeps MC/IC as separate meridian angles. Placidus is calculated as an unequal time-based quadrant system and is refused rather than silently substituted at latitudes where the system is mathematically undefined.
What happens if I do not know my birth time?
In the synastry and relationship-report paths, Velvet Zodiac uses a noon anchor internally for the slower date-based planetary layer but omits the exact Moon, Rising, MC, and the untimed person's house frame. It shows the Moon's 00:01–23:59 local-date range separately and classifies possible major Moon contacts as Stable, Conditional, or Omit from that range. The integrated composite layer also omits composite Moon and Rising if either birth time is missing.
Velvet Zodiac takeaway