concept

Ayanamsa systems (Lahiri, Raman, KP) compared

How Lahiri, Raman, and KP ayanamsa differ, why the choice shifts planetary signs and nakshatras, and how to set the right one when calling a Vedic astrology API.

Ayanamsa is the angular offset a sidereal astrology engine subtracts from a tropical planetary longitude to account for the precession of the equinoxes. Lahiri, Raman, and KP are three of the most-used ayanamsa systems, and they disagree by roughly six to seven arcminutes in 2026 — small in absolute terms, but large enough to move a planet across a sign, nakshatra, or KP sub-lord boundary. This article explains the difference, shows when it actually changes a chart, and shows how to pick and pin the right ayanamsa when calling the Vedika API.

What ayanamsa actually is

The tropical zodiac starts at the vernal equinox — the point where the Sun crosses the celestial equator each spring. Because Earth's axis wobbles over a roughly 25,800-year cycle (precession), that equinox point drifts backward against the fixed stars by about 50.3 arcseconds per year. Western astrology keeps its zodiac tied to the equinox, so 0° Aries always means the equinox. Sidereal astrology, used in Vedic and KP work, keeps its zodiac tied to the fixed stars instead.

Ayanamsa is the bridge between the two frames. To get a sidereal longitude you compute the tropical longitude and subtract the ayanamsa for that moment:

sidereal_longitude = tropical_longitude - ayanamsa(date)

Every sidereal system agrees on the mechanics. Where they disagree is the zero point: the epoch at which they declare the sidereal and tropical zodiacs to have coincided. That single anchoring decision is the entire difference between Lahiri, Raman, and KP.

The three systems, side by side

All three are sidereal and all three track the same precession rate, so they drift in parallel. They are separated by a near-constant offset of a few arcminutes that changes only very slowly over decades.

SystemOrigin and anchoringTypical use
Lahiri (Chitrapaksha)Official Indian standard adopted by the Calendar Reform Committee; anchored so the star Chitra (Spica) sits near 180° sidereal.Default for most Indian panchangs, government almanacs, and mainstream Vedic software.
RamanThe value promoted by B.V. Raman, slightly smaller than Lahiri.Practitioners and texts in the B.V. Raman tradition.
KP (Krishnamurti)A value derived by K.S. Krishnamurti for Krishnamurti Paddhati, close to but distinct from Lahiri.KP horary, sub-lord and significator analysis.

In practical 2026 terms, Raman runs a few arcminutes below Lahiri, and KP sits very close to Lahiri but not identical. The exact published figures shift with the date because precession is continuous; the engineering point is that the relative gap between them is small and the systems never cross.

When the difference actually changes a chart

A six-to-seven arcminute spread is roughly a tenth of a degree. A planet sitting comfortably in the middle of a 30° sign will not move between systems. The difference bites only near boundaries, and Vedic charts have a lot of boundaries:

The classical placement rules themselves do not change with ayanamsa — the lordship of signs and the dasha order are fixed in Brihat Parashara Hora Shastra. What changes is which sign or nakshatra a planet falls in, and therefore which rule applies. That is why two reputable engines can both be “correct” and still disagree about a borderline Moon.

Choosing an ayanamsa in your integration

There is no universally right answer; there is a right answer for your audience. Use this as a decision guide:

Whatever you pick, the durable engineering habit is to treat ayanamsa as an explicit, recorded parameter rather than a silent default. Store the ayanamsa name alongside every saved chart so a result is always reproducible and auditable.

Setting ayanamsa on the Vedika API

The main natural-language endpoint and the V2 computation endpoints both default to a sidereal Vedic chart with Lahiri. You can request a specific system explicitly. Here is a computation call against the flat V2 shape:

curl -X POST https://api.vedika.io/v2/astrology/chart \
  -H "x-api-key: vk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "datetime": "1990-08-15T14:30:00",
    "latitude": 18.5204,
    "longitude": 73.8567,
    "timezone": "Asia/Kolkata",
    "system": "vedic",
    "ayanamsa": "lahiri"
  }'

To compare how the same birth data renders under different ayanamsa, change only the ayanamsa field and diff the resulting longitudes, nakshatras, and sub-lords. For an AI-narrated reading, the natural-language endpoint accepts the structured birth details and lets the engine pick the system from context, or you can state it in the question:

// Generic LLM-style HTTP client; no SDK required
const res = await fetch("https://api.vedika.io/v1/astrology/query", {
  method: "POST",
  headers: {
    "x-api-key": "vk_live_your_key_here",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    question: "Which nakshatra is my Moon in using KP ayanamsa?",
    birthDetails: {
      datetime: "1990-08-15T14:30:00",
      latitude: 18.5204,
      longitude: 73.8567,
      timezone: "Asia/Kolkata",
    },
    speed: "fast",
  }),
});
const data = await res.json();
console.log(data);

Because all three systems are served from the same engine, you do not need to wire up separate libraries for Vedic, KP, and Western — the request shape stays constant and only the parameters change. You can prototype every variation against the free sandbox with no key before you spend a cent.

Why the underlying numbers can be trusted

An ayanamsa choice is only as good as the tropical longitude it adjusts. The longitudes here come from the XALEN Ephemeris, Vedika's own open-source astronomical engine (Apache-2.0, published on crates.io, PyPI, and npm). It carries roughly 2,200 tests and has been validated against JPL DE440 and the reference swetest tool, with no chart deviating beyond 0.1° across a five-million-chart test sweep.

That number is an astronomical precision claim — it describes how closely the computed planet positions match an independent ephemeris, not a claim about astrological interpretation. The value of high ephemeris precision for ayanamsa work is direct: when the base longitude is solid to a fraction of an arcsecond, the only meaningful difference between two charts is the ayanamsa offset itself, not numerical noise. That makes a Lahiri-vs-KP comparison a clean, reproducible diff rather than a guessing game.

Three systems, one request

Most astrology APIs specialize in one framework. The Vedika API exposes Vedic (sidereal), Western (tropical), and KP from a single request surface — part of 700+ operations across 25 domains — alongside Jaimini, Tajaka, Lal Kitab, numerology, and others. That matters for ayanamsa work specifically: you can pull a tropical Western chart (no ayanamsa), a Lahiri Vedic chart, and a KP sub-lord table for the same birth moment in three calls that differ by one field, then present all three to a user without maintaining three codebases.

Honest context on alternatives: established services such as Prokerala, AstrologyAPI.com, and RoxyAPI provide solid Vedic computation and clear documentation, and any of them can compute a Lahiri chart. Vedika's differentiators are the multi-system single-request surface, the open-source verifiable ephemeris underneath, support for 30 languages including 14 Indic ones, and a public astrology MCP server so LLM agents can call these calculations as tools.

Key facts

Bringing it together

Ayanamsa is a small number with outsized consequences at the boundaries. Treat it as an explicit parameter, pick the system that matches your audience's tradition, and record it with every chart so your results stay reproducible. Try the comparison yourself in the sandbox, check the field reference in the docs, and see plan limits on the pricing page when you are ready to move to live keys.

Build on the Vedika astrology API

700+ operations, Vedic + Western + KP, 30 languages, an open-source XALEN ephemeris, and a built-in LLM. Free sandbox — no signup.

Try the free sandbox