Most astrology sites obtain planetary positions by calling somebody else's API. That works, but it means your birth details leave the site, and it means nobody there can tell you how a number was arrived at. We do it differently, and this article explains how.

The theories used

QuantitySource
PlanetsVSOP87, the semi-analytic planetary theory from the Bureau des Longitudes
MoonELP-2000/82 lunar theory
NutationIAU 1980 series, thirty largest terms
ObliquityLaskar's polynomial
Delta TEspenak-Meeus polynomials, NASA Five-Millennium Canon
AyanamsaIAU 2006 precession, nine systems including Lahiri

Why Delta T matters

This one is invisible and important. Clocks measure a uniform second; the Earth's rotation does not, and it has been gradually slowing. The difference between the time we keep and the time the sky keeps is Delta T.

Today it is about 70 seconds. In 1900 it was near zero. In 1600 it was over two minutes. Ignoring it puts every position for a historical birth slightly wrong, and the ascendant — which moves a degree every four minutes — noticeably so.

How it is verified

An automated test suite checks the engine against sources with no connection to our code — textbook worked examples and observed events.

  • Moon position, Meeus Astronomical Algorithms example 47.a — exact to six decimal places
  • Sun position, example 25.b — within 0.26 arcseconds
  • Venus, example 33.a — within 0.15 arcseconds
  • Jupiter-Saturn great conjunction, 21 December 2020 — both at 300 degrees 29 minutes
  • Total solar eclipse, 8 April 2024 — correct to the minute
  • Sunrise and sunset, London and New York — correct to the minute

The test suite has caught a real defect

During development a cross-check on harmonic amplitudes found one coefficient in the Mercury series entered wrongly. It was placing Mercury 1.66 degrees out of position — enough to move it into the wrong nakshatra and, near a boundary, the wrong sign.

It was found and fixed before the site was public. We mention it because "our calculations are accurate" is a claim anyone can make, and the useful part is what happens when they are not.

What this means for you

Your birth details never leave our servers — there is nowhere for them to go. Every position we show can be checked against any published ephemeris. And when something is wrong, there is a test to add rather than a vendor to email.