Skip to content
How it works

Pillar A — How it works

Published 2026-04-28 · Updated 2026-06-18 · By Avinash Chandan, Founder, Navamsha

How Vimshottari Dasha Is Calculated (With a Working API Example)

Vimshottari Dasha is a 120-year cyclical system in Vedic astrology that divides a person's life into planetary periods (Mahadashas) and sub-periods (Antardashas), used to time when specific life events are likely to manifest.

It is the most widely used dasha system in Parashari Jyotish — the first calculation most astrologers run after generating a birth chart. This guide walks through the math step by step, then shows how to fetch the same result from the Navamsha Dasha API at /apis/dasha on the 10,000 free calls/month tier.

What Vimshottari Dasha actually measures

Vimshottari assigns each of the nine grahas a fixed number of years. Together these add up to exactly 120 years — the traditional maximum human lifespan in this system.

GrahaMahadasha length
Ketu7 years
Venus20 years
Sun6 years
Moon10 years
Mars7 years
Rahu18 years
Jupiter16 years
Saturn19 years
Mercury17 years

These nine periods always occur in the same fixed sequence (Ketu → Venus → Sun → Moon → Mars → Rahu → Jupiter → Saturn → Mercury → back to Ketu), repeating if a person's life span exceeds 120 years.

Step 1: Find the starting point — birth Nakshatra

The calculation does not start from your birth date. It starts from the Moon's Nakshatra (lunar mansion) at the moment of birth.

Each of the 27 Nakshatras is ruled by one of the nine grahas in the same Ketu-Venus-Sun-Moon-Mars-Rahu-Jupiter-Saturn-Mercury sequence, repeated three times. Whichever graha rules your birth Nakshatra becomes your first Mahadasha lord.

Step 2: Calculate the balance of the first Mahadasha

You are not born at the exact start of a Nakshatra. The remaining portion determines how much of the first Mahadasha's full term you have left from birth.

balance_years = (degrees_remaining_in_nakshatra / 13°20′) × full_dasha_years_for_that_planet

Each Nakshatra spans exactly 13°20′ (13.333°). If the Moon is 9° into a Nakshatra ruled by Venus (20-year Mahadasha), the remaining 4°20′ represents the balance of the Venus Mahadasha still to run from the birth date.

Step 3: Lay out the full sequence

Once the balance of the first Mahadasha is known, the remaining eight Mahadashas are laid out in full length in the fixed sequence. The result is a complete 120-year timeline from birth.

Step 4: Calculate Antardashas (sub-periods)

Each Mahadasha is divided into nine Antardashas in the same fixed sequence, starting with the Mahadasha lord.

antardasha_years = (mahadasha_lord_years × antardasha_lord_years) / 120

Within a Venus Mahadasha (20 years), the Venus-Venus Antardasha lasts about 3.33 years, while Venus-Saturn lasts about 3.17 years. Antardasha transitions are where birth-time precision matters most.

Getting this from a birth chart via API

The Navamsha Dasha API performs ephemeris lookup, Nakshatra boundaries, and fraction arithmetic in one call — backed by Swiss Ephemeris and deterministic Lahiri-ayanamsa Nakshatra lookup. Responses include engine metadata so you can audit ayanamsa, formula version, and node mode.

curl — full Vimshottari tree

curl -X POST "https://api.navamsha.in/api/v1/dasha/vimshottari" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "year": 1995, "month": 8, "date": 15, "hours": 14, "minutes": 30, "seconds": 0, "latitude": 19.0760, "longitude": 72.8777, "timezone": 5.5, "settings": { "observation_point": "topocentric", "ayanamsha": "lahiri", "language": "en" } }'

Python — current Mahadasha / Antardasha

import httpx

birth = {
    "year": 1995, "month": 8, "date": 15,
    "hours": 14, "minutes": 30, "seconds": 0,
    "latitude": 19.0760, "longitude": 72.8777, "timezone": 5.5,
    "settings": {"ayanamsha": "lahiri", "observation_point": "topocentric"},
}
resp = httpx.post(
    "https://api.navamsha.in/api/v1/dasha/current",
    headers={"X-API-Key": "YOUR_API_KEY"},
    json=birth,
)
dasha = resp.json()["output"]
print(dasha["mahadasha"])
print(dasha["antardasha"])

The response includes the full Mahadasha sequence with start/end dates, the current Antardasha, and engine metadata — so AI astrologer products can ground answers in verifiable calculation rather than generated guesses. Sign up at /getting-started for 10,000 free calls per month.

Building a Dasha-aware app? See /apis/dasha for the full Dasha & Timing API, or /apis/compatibility for Dasha-aware Gun Milan matching.

FAQ

Is Vimshottari the only Dasha system in Vedic astrology?

No. It's the most widely used, but other systems exist (Yogini, Ashtottari, Kalachakra, and others), each with different total cycle lengths and rulership sequences. Vimshottari's 120-year cycle and Nakshatra-based starting point make it the default in most software and most traditional practice.

Does Vimshottari Dasha depend on which ayanamsa is used?

Yes — the ayanamsa affects the sidereal position of the Moon, which determines the birth Nakshatra and therefore the entire Dasha sequence and balance calculation. Navamsha uses Lahiri ayanamsa by default, the most common standard in contemporary Vedic astrology software.

Can the Dasha sequence restart mid-life?

The nine Mahadashas total 120 years and run in a fixed sequence from the birth-determined starting point. If a person's lifespan exceeds 120 years from their first Mahadasha's start, the sequence repeats from Ketu again.

How accurate does birth time need to be for Dasha calculations?

Birth time accuracy directly affects the Moon's exact degree within its Nakshatra, which determines the balance of the first Mahadasha — even a few minutes of difference can shift Antardasha transition dates by days or weeks. For Mahadasha-level accuracy this matters less; for precise Antardasha timing, accurate birth time matters significantly.