Ashtakavarga is the part of Jyotisha where an error is hardest to notice. The output is a grid of small integers. If one is wrong, nothing looks broken. A transit reading built on a wrong bindu is confidently wrong, and there is no visible symptom.

So the sensible question about any Ashtakavarga calculator is not what it displays. It is whether the numbers were ever checked against something outside the code that produced them.

The free kundali tool here computes five Ashtakavarga layers, and the underlying bindu tables were verified two ways: against the canonical classical checksums, and cell by cell against an independent production engine. 924 cells compared across eleven charts, 924 exact matches. The record of that check is published below.


The five layers

Layer What it gives you
Bhinnashtakavarga Each planet’s own bindu count in all twelve signs, with the row total
Sarvashtakavarga The twelve-sign total across all seven planets, with the grand total
Prastara Ashtakavarga The 8 by 12 grid behind each planet’s totals: which of the eight contributors gave the bindu, not just how many did
Sodhita (reduced) Ashtakavarga Trikona Shodhana followed by Ekadhipatya Shodhana, in that classical order
Kakshya Each sign split into eight divisions of 3 degrees 45 minutes, with the transit reading that Ashtakavarga is actually for

Alongside those, the tool has an Ashtakavarga heatmap panel and an Ashtakavarga dasha-strength panel that reads bindu support against the running periods.


Bhinnashtakavarga and Sarvashtakavarga

Each of the seven classical planets has its own ashtakavarga, built from eight reference points: the other six grahas, itself, and the Lagna. Each reference contributes a bindu to a fixed set of houses counted from where it sits. Add them up per sign and you have the planet’s Bhinnashtakavarga row.

Sum all seven rows and you have Sarvashtakavarga, the total benefic points in each sign. The classical grand total across all twelve signs is 337, and the panel prints your total against that figure so a miscalculation would be visible rather than silent. The average per sign follows from it, roughly 28, and the panel flags signs at 28 or above as strong for transits.

This is the layer every Ashtakavarga tool has. The next three are where the depth is.


Prastara: which contributor gave the bindu

A Bhinnashtakavarga cell tells you a sign has, say, five bindus for Jupiter. Prastara tells you which five of the eight contributors gave them.

That distinction is not cosmetic. It is the input the Kakshya transit reading needs, and it is what lets you see whether a sign’s strength for a planet comes from benefic contributors or malefic ones. The tool builds the full 8 by 12 grid for each of the seven planets, with the contributor rows in the classical order: Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn, Lagna.


Sodhita: the two reductions, in the right order

Reduced Ashtakavarga is a standard professional feature and a common gap in free tools. It applies two classical reductions, and the order matters.

Trikona Shodhana, the trinal reduction, works on the four elemental trines: fire (Aries, Leo, Sagittarius), earth (Taurus, Virgo, Capricorn), air (Gemini, Libra, Aquarius) and water (Cancer, Scorpio, Pisces). Within each trine, the reduction is applied against the smallest value in the group.

Ekadhipatya Shodhana, the reduction for sole lordship, runs afterwards. It only bites where one graha owns two rasis: Mars over Aries and Scorpio, Venus over Taurus and Libra, Mercury over Gemini and Virgo, Jupiter over Sagittarius and Pisces, Saturn over Capricorn and Aquarius. The Sun owns Leo alone and the Moon owns Cancer alone, so those two signs never take an ekadhipatya reduction. Occupancy is judged by the seven grahas only, since the Lagna is a reference point rather than an occupant.

The tool keeps a log of both reductions, so you can see what was taken off each sign and why, rather than being handed a second grid of numbers with no derivation.

One honest label sits on this layer. The tool also sums the seven reduced rows into a twelve-sign figure, which is a useful summary, and it says explicitly in the output that this is not the classical Sarvashtakavarga. Classical Sarva is always the sum of the unreduced figures. The two are labelled separately so they cannot be confused.


Kakshya, and the transit reading Ashtakavarga is actually for

This is the layer that turns Ashtakavarga from a table into a tool.

Each sign divides into eight kakshyas of 3 degrees 45 minutes, owned in a fixed order reading upward from 0 degrees: Saturn, Jupiter, Mars, Sun, Venus, Mercury, Moon, Lagna. Note that this is not the same as the prastara row order, which is a detail that is easy to get wrong and produces plausible-looking nonsense when you do.

The classical transit reading is then precise rather than vague. A transiting planet crossing a kakshya whose owner contributed a bindu in that sign, in the transiting planet’s own prastara, is the favourable transit. Where the owner gave no bindu, it is not.

The tool exposes this two ways: a full kakshya strip for any planet in any sign, showing all eight divisions with the bindu flag on each, and a transit reading that takes a live longitude and tells you which kakshya a planet currently occupies and whether it carries a bindu.

This is what practitioners actually use Ashtakavarga for, and it is almost never available free.


The verification, in full

Layer one: the classical checksums

The bindu tables are parsed directly out of the deployed JavaScript by a verification script, rather than retyped, so there is no transcription risk between what was checked and what ships. Per-planet totals are compared against the canonical figures from Brihat Parashara Hora Shastra.

Planet Total in the deployed tables Canonical Result
Sun 48 48 Pass
Moon 49 49 Pass
Mars 39 39 Pass
Mercury 54 54 Pass
Jupiter 56 56 Pass
Venus 52 52 Pass
Saturn 39 39 Pass
Grand total 337 337 Pass

Structural checks pass alongside these: every house number in range, no duplicates within any reference row, and all eight reference rows present for all seven planets.

Layer two: the 924-cell cross-check

Checksums are necessary and not sufficient. They would still pass if bindus were assigned to the wrong signs, which is exactly what an off-by-one in a modulo produces. So the output was compared sign by sign against VedAstro’s own Bhinnashtakavarga, a Swiss Ephemeris based production engine, across eleven charts chosen for spread, in both hemispheres.

Chart Lagna Result
Mumbai, 15 August 1990 Virgo All seven planets match
Delhi, 2 January 1975 Scorpio All seven planets match
London, 27 June 2001 Aquarius All seven planets match
New York, 9 November 1963 Capricorn All seven planets match
Ahmedabad, 31 December 1988 Gemini All seven planets match
Chennai, 21 March 1955 Pisces All seven planets match

Eleven charts, seven planets, twelve signs each. 924 cells compared. 924 exact matches. The set spans 1955 to 2004 and eight countries across both hemispheres, and includes both a pre-dawn and a near-midnight birth, so the ascendant and the Moon vary widely across it.

The southern-hemisphere charts were added deliberately, and late. The first six were all northern, which left a real gap: a planet’s sign is an ecliptic longitude and does not care which hemisphere you are standing in, but the ascendant does, and the ascendant is one of the eight reference points every bindu is counted from. Sydney, Buenos Aires, Johannesburg, Auckland and Santiago exercise that path. They match too.

Layer three: a self-test that ships with the code

The Ashtakavarga module carries its own test harness, with four of those charts embedded as fixtures. It can be run against the live site, and it exits non-zero on failure, so the check can be repeated after any change to the calculation layer rather than being a one-time exercise.


What the verification also caught

Verification is worth doing for the things it turns up that nobody was looking for.

While cross-checking, the ephemeris API returned byte-identical bindu tables for six completely different charts. The cause was a malformed request: adding a planet-name segment to an endpoint that does not take one. The endpoint returned a success status, silently discarded the location and time that had been sent, and answered for a default chart instead. The echoed input block did not even contain the location supplied.

That failure mode fails open, not closed. No error, no warning, plausible-looking numbers. Any tool making that mistake would show every visitor the same stranger’s chart while appearing to work perfectly.

So the check was widened. A script extracts every ephemeris endpoint the site actually calls and requests each one with two very different charts, flagging any whose output does not change. Fifteen endpoints tested, fourteen clean, one false positive, zero real defects. The false positive was an endpoint that takes three location and time blocks and had been called with one; retested with the site’s real signature it responded correctly and differently to each chart.

None of this proves the site is free of errors. It does mean this particular class of error has been looked for on purpose, which is a different thing from assuming it away.


Known limits

  • The Kakshya transit reading needs a current planetary longitude. Without one it reports the missing input rather than a result.
  • Ashtakavarga is computed for the seven classical planets. Rahu and Ketu do not have one, and the tool says so if asked for one.
  • The reduced Sarva figure is a summary of the reduced rows, not classical Sarvashtakavarga, and is labelled as such wherever it appears.
  • Graha Pinda, Rasi Pinda and Yoga Pinda are not implemented.
  • Gulika and Mandi are treated as the same point elsewhere in the tool, which is the most common convention, though some authorities separate them.

Run it on your chart

Open the free kundali tool, enter your birth details, and the Ashtakavarga panels compute with everything else. No account, and the whole report exports as a free PDF.

Related: the 31 dosha conditions, the 26 yoga rules, the nine dasha systems, and what the whole tool computes. The general standard we hold this work to is set out on the method page, and errors we have found in our own output are logged on the corrections page.

Frequently asked questions

↳ Is there a free Ashtakavarga calculator with Prastara and Kakshya?

Yes, on the kundali tool here. It computes Bhinnashtakavarga, Sarvashtakavarga, the full Prastara grid showing which contributor gave each bindu, Sodhita with both classical reductions, and the eight kakshyas per sign with the bindu flag on each. No account is needed and the report exports as a PDF at no cost.

↳ What is a good Sarvashtakavarga score for a sign?

The classical grand total across all twelve signs is 337, which averages to roughly 28 per sign. The panel uses 28 as the working threshold and flags signs at or above it as strong for transits. A sign well below the average is not a problem in itself; it indicates less accumulated support for planets moving through it, which is a factor to weigh rather than a verdict.

↳ How do I know the bindu numbers are correct?

They were checked two ways. First against the canonical per-planet totals from Brihat Parashara Hora Shastra: Sun 48, Moon 49, Mars 39, Mercury 54, Jupiter 56, Venus 52, Saturn 39, grand total 337, all passing, with the tables parsed straight out of the deployed code rather than retyped. Second, sign by sign against an independent Swiss Ephemeris based production engine across eleven charts spanning 1955 to 2004 and eight countries in both hemispheres: 924 cells compared, 924 exact matches.

↳ What is Kakshya and how is it used in transits?

Each sign divides into eight kakshyas of 3 degrees 45 minutes, owned in the fixed order Saturn, Jupiter, Mars, Sun, Venus, Mercury, Moon, Lagna. The classical transit rule is that a transiting planet crossing a kakshya whose owner contributed a bindu in that sign, in that planet's own prastara, is a favourable transit, and one crossing a kakshya whose owner gave no bindu is not. The tool shows the full eight-division strip with the bindu flag on each, and reads a live longitude against it.

↳ What is the difference between Sodhita and Sarvashtakavarga?

Sodhita is reduced Ashtakavarga, produced by applying Trikona Shodhana and then Ekadhipatya Shodhana to a planet's bindu row. Sarvashtakavarga is the sum of the seven unreduced rows. The tool also displays a total of the reduced rows, which is a convenient summary, and it labels that figure explicitly as not being classical Sarvashtakavarga, because the classical figure is always built from unreduced values.

↳ Do Rahu and Ketu have an Ashtakavarga?

Not in the classical scheme this tool implements. Ashtakavarga is computed for the seven classical planets, using eight reference points that comprise those seven plus the Lagna. If a reading is requested for Rahu or Ketu, the tool returns a plain reason rather than inventing a table for them.

Book a Consultation