Use Lahiri unless your users follow a school that asks for something else. Lahiri is the ayanamsa India uses for its national calendar, and it is our API's default. Pick KP only for users who practice KP (Krishnamurti) astrology. Pick Raman only for students of B. V. Raman's school.
An ayanamsa is the gap in degrees between the Western zodiac and the Vedic zodiac. The three choices differ by a fixed amount. KP is 5′49″ (5.81 arc minutes) less than Lahiri. Raman is 1°26′47″ less. An arc minute is 1/60 of a degree.
That gap looks small, but it moves planets that sit near the edge of a sign or a nakshatra (one of 27 star groups). We sent 365 births to our API, one for each day of 1990, under all three settings. Raman put at least one planet or the rising sign in a different sign for 145 of them, or 39.7%. KP did that for 10 births, or 2.7%.
Below, every number comes from our own API runs in October 2026.
What an ayanamsa measures
A Western chart counts Aries from the spring equinox, so its zodiac is called tropical. A Vedic chart counts Aries from a point fixed among the stars, so its zodiac is called sidereal. The Earth's axis wobbles slowly, so the two starting points drift apart each year.
The ayanamsa is that drift on a given date. Our API returns it in every answer, in meta.ayanamsa_value. Here is the Lahiri value at a few moments:
Date (noon UTC) | Lahiri ayanamsa |
|---|---|
Jan 1, 1900 | 22°27′38″ |
Jan 1, 2000 | 23°51′26″ |
Oct 22, 2026 | 24°13′54″ |
Jan 1, 2100 | 25°15′15″ |
From 2000 to 2100 it grows by 50.3 arc seconds a year. That is one full degree every 71.6 years.
To get a Vedic position, the API works out the Western one first, then subtracts the ayanamsa. Take John Doe, born Aug 15, 1990, at 10:30 AM in New York. A Western chart puts his Sun at 22°30′ of Leo. Subtract the Lahiri value for his birth, 23.726073°, and his Vedic Sun is at 28°46′ of Cancer. For the full story of the two zodiacs, see our Vedic vs Western guide.
How far apart Lahiri, KP and Raman are
All three follow the same yearly drift. They only start from different points. So the gap between them stays the same in every century:
Date (noon UTC) | Lahiri | KP | Raman |
|---|---|---|---|
Jan 1, 1900 | 22°27′38″ | 22°21′49″ | 21°00′51″ |
Aug 15, 1990 | 23°43′34″ | 23°37′45″ | 22°16′47″ |
Oct 22, 2026 | 24°13′54″ | 24°08′05″ | 22°47′07″ |
Jan 1, 2100 | 25°15′15″ | 25°09′27″ | 23°48′29″ |
The KP value is 0.096852° below Lahiri on every row, and Raman is 1.446301° below. A smaller ayanamsa means a larger Vedic position. So KP pushes every planet 5′49″ forward, and Raman pushes it 1°26′47″ forward.
Lahiri is also called Chitrapaksha. KP is the Krishnamurti ayanamsa, used with the KP school's own methods. Raman is B. V. Raman's ayanamsa. Our API offers the KP ayanamsa only. It does not run the rest of the KP system, such as sub-lords.
What changes in John Doe's chart
We cast John's chart three times, once with each ayanamsa. Each planet's place has three parts: its sign, its nakshatra and its pada (one quarter of a nakshatra). These are the places that changed:
Point | Lahiri | KP | Raman |
|---|---|---|---|
Rising sign (lagna) | Virgo 19°56′, Hast pada 3 | Virgo 20°01′, Hast pada 4 | Virgo 21°22′, Hast pada 4 |
Sun | Cancer 28°46′, Ashlesha pada 4 | Cancer 28°52′, Ashlesha pada 4 | Leo 0°13′, Magha pada 1 |
Mercury | Leo 25°44′, Purva Phalguni pada 4 | Leo 25°50′, Purva Phalguni pada 4 | Leo 27°11′, Uttara Phalguni pada 1 |
Jupiter | Cancer 5°41′, Pushya pada 1 | Cancer 5°47′, Pushya pada 1 | Cancer 7°08′, Pushya pada 2 |
Saturn | Sagittarius 26°07′, Purva Ashadha pada 4 | Sagittarius 26°13′, Purva Ashadha pada 4 | Sagittarius 27°34′, Uttara Ashadha pada 1 |
The Sun is the big one. Under Lahiri it sits 1°13′ short of Leo. Raman's extra 1°26′ carries it across. That also moves it from the 11th house to the 12th, since the API uses whole-sign houses counted from the rising sign. Its dignity changes from "friend" to "mulatrikona", which the API ranks just below exaltation. A user who switches settings sees a different Sun sign and a different reading.
KP changed only one thing: the rising sign moved from pada 3 to pada 4. That still matters. The pada sets the sign in the navamsa (D9) chart, so a KP user and a Lahiri user can see different D9 charts. We showed this for John in our navamsa and D10 post.
John's Moon stayed in Mrigashira under all three. So his Vimshottari dasha, the 120-year timeline of planet periods, still opens with Mars. But the dates move. His first Mars period ends on Dec 20, 1996, with Lahiri. With KP it ends on Dec 1, 1996, and with Raman on Mar 17, 1996.
How often the choice changes a chart
One chart proves little. So we ran a whole year. We sent one birth a day at 10:30 AM in New York, for every day of 1990, to POST /v1/planets. Each birth went in three times: Lahiri, KP and Raman. Then we counted the births where the KP or Raman answer differed from Lahiri:
What differs from Lahiri | KP | Raman |
|---|---|---|
Moon sign | 0 of 365 (0.0%) | 12 of 365 (3.3%) |
Sun sign | 1 (0.3%) | 19 (5.2%) |
Rising sign | 0 (0.0%) | 14 (3.8%) |
Moon nakshatra (so the first dasha planet) | 2 (0.5%) | 36 (9.9%) |
Moon nakshatra or pada | 12 (3.3%) | 148 (40.5%) |
Any planet's sign, or the rising sign | 10 (2.7%) | 145 (39.7%) |
Any planet's nakshatra, or the rising sign's | 19 (5.2%) | 269 (73.7%) |

The pattern follows the size of the gap. Raman's 1°26′ is about 5% of a 30° sign and about 11% of a 13°20′ nakshatra. The counts land close to those shares. KP's 5′49″ is too small to move most things, but with 10 points in every chart, a few still cross a line.
For a product, read the table this way. Switch from Lahiri to Raman, and about 1 user in 10 gets a new first dasha planet. About 4 in 10 see a planet or the rising sign in a new sign. Switch to KP, and none of the 365 got a new Moon sign. But the Moon's nakshatra or pada still changed for 12 of them.
What the ayanamsa moves, and what it does not
The ayanamsa shifts every position by the same amount. So anything built from a planet's sign, nakshatra or pada can change with it. That covers the birth chart, the divisional charts and the dasha dates.
In our API, one setting covers the whole chart. Send ayanamsa with the birth details, and the transits, the sade sati dates and the forecasts for that chart use the same one. Sade sati is Saturn's seven-and-a-half-year pass across the Moon sign and the signs on either side.
Some values do not move at all. The tithi, or lunar day, is the gap between the Moon and the Sun. Both shift by the same amount, so the ayanamsa cancels out.
Calls about two people need one setting for both. We sent POST /v1/matching for Jane Doe (born in Chicago) with Lahiri and John Doe with Raman. The API refused it with a 422 error: "both charts must use the same ayanamsa". The same pair with Lahiri for both answered normally.
Every answer names the setting it used in meta.ayanamsa and the value in meta.ayanamsa_value. You can print both on your chart screen. Our conventions guide shows how to set the ayanamsa and the other defaults.

Which ayanamsa should your app use?
Choose by audience. The math is the same for all three. Only the starting point differs.
Your users | Default | Offer a switch? |
|---|---|---|
A general Vedic audience in India, the US or the Gulf | Lahiri | Optional, in settings |
People who learned KP (Krishnamurti) astrology | KP | Yes, with Lahiri as the other choice |
Students of B. V. Raman's school | Raman | Yes, with Lahiri as the other choice |
Astrologers who use your app for clients | Lahiri | Yes, all three |
A few product rules help. Set one default for the whole app, and keep it per user, not per screen. Show the name of the setting next to the chart, so a user who compares apps knows why a sign differs. When a user changes the setting, recast every chart for that user, because dashas and transits follow it. For a match between two people, use one setting for both.
Do not change the default after launch without telling users. Our survey shows why. A switch from Lahiri to Raman moved a planet or the rising sign for about 4 births in 10.
How to set it in the API
Add ayanamsa to the birth details. The choices are lahiri, kp and raman. Leave it out and you get lahiri. GET /v1/meta lists the same three. The ayanamsa docs page lists every choice and what each one moves in a real chart. Here is John Doe, born Aug 15, 1990, at 10:30 AM in New York, with the Raman setting:
{
"year": 1990,
"month": 8,
"day": 15,
"hour": 10,
"minute": 30,
"latitude": 40.7128,
"longitude": -74.006,
"timezone": "America/New_York",
"ayanamsa": "raman"
}Send it to POST /v1/planets. The top of the answer, with the planet list cut to the Sun:
{
"meta": {
"ayanamsa": "raman",
"ayanamsa_value": 22.279771
},
"positions": [
{
"name": "Sun",
"sign": "Leo",
"degree_dms": "0 : 13 : 18",
"house": 12,
"nakshatra": "Magha",
"pada": 1
}
]
}With "ayanamsa": "lahiri" the same call returns 23.726073 and a Sun in Cancer.
To see every field in a chart answer, open the kundli API feature page or the API reference.

The three ayanamsas sit a fixed distance apart, and that distance never changes. What changes is how many charts show a new sign. In our test of 365 births, that was 2.7% under KP and 39.7% under Raman. Start with Lahiri, name the setting on screen, and offer the others to the users who ask for them.



