Two clocks in one calendar
The Tamil calendar runs on two clocks simultaneously. The solar clock tracks the Sun through the sidereal zodiac, defining months. The lunar clock tracks the Moon's phase and position, defining when to fast, celebrate, and perform rituals. The interplay between these two clocks is why Tamil dates move against the Gregorian calendar.
This is not a flaw, it is a feature. Solar months give a stable agricultural framework tied to seasons. Lunar timekeeping ties religious life to the Moon's actual phases, which have been central to Hindu practice for millennia. Most world calendars that serve both civil and religious functions have a similar duality: the Islamic calendar is purely lunar, the Chinese calendar is lunisolar, and the Gregorian calendar has its own Easter-computation problem (a lunar rule inside a solar calendar).
The solar side: months and sankranti
The 12 Tamil months, Chithirai through Panguni, are sidereal solar months. Each month begins on the day the Sun crosses the boundary into the next sidereal zodiac sign. This crossing moment is called sankranti. Because the Sun's sidereal transit takes approximately 365.256 days (very close to the Gregorian year of 365.2425 days), Tamil solar dates stay nearly locked to Gregorian dates.
Pongal is the most familiar example. It celebrates the Sun's entry into Makara (Capricorn), the Makara Sankranti. The Sun crosses this boundary on January 14 or 15 every year, with at most one day of variation across decades. Tamil New Year (Chithirai 1, the Mesha Sankranti) likewise falls on April 14 or 15 each year. Aadi Perukku (Aadi 18) falls on August 2 or 3. These are all solar-anchored.
The lunar side: tithi and nakshatra
Tithi, the Moon-Sun elongation angle
Tithi is the angular separation between the Moon and the Sun along the ecliptic, measured in steps of 12 degrees. When the Moon is exactly conjunct the Sun (0 degrees), it is Amavasai (new moon). When the Moon is 180 degrees from the Sun, it is Pournami (full moon). Each 12-degree step defines one tithi, giving 30 tithis per synodic month, 15 in the waxing half (shukla paksha) and 15 in the waning half (krishna paksha).
Nakshatra, the Moon's sidereal position
Nakshatra divides the sidereal ecliptic into 27 equal sectors of 13 degrees 20 minutes each. The Moon spends roughly one day in each nakshatra. Certain nakshatras define specific festivals: Thiruvathirai falls when the Moon is in the Thiruvathirai (Ardra) nakshatra during Margazhi, and Karthigai Deepam falls when the Moon is in Karthigai (Krittika) during Karthigai month.
Because nakshatras are based on the Moon's sidereal position (sidereal month = ~27.32 days), not its phase relative to the Sun, nakshatra-based festival dates also shift against the Gregorian calendar, but by a different pattern than tithi-based dates.
The 29.53-day drift: why the same observance falls on different dates
The synodic month, new moon to new moon, is approximately 29.53 days. No Gregorian month matches this exactly. January has 31 days, February has 28 (or 29), March has 31. The mismatch means that each successive new moon falls about 0.5 to 2.5 days earlier or later in the Gregorian month than the previous one.
Over 12 synodic months (354.37 days), the lunar calendar falls about 10.88 days short of the Gregorian year (365.25 days). This is why Deepavali, which is the Amavasai (new moon) of Aippasi month, can fall anywhere from mid-October to early November, the solar month is fixed, but the new moon within it wanders.
Worked example
Worked example, tracking Shukla Ekadasi across three months
Shukla Ekadasi (the 11th tithi in the waxing fortnight) falls on a different Gregorian date each month. Here is why.
- Synodic month length
- 29.53 days
- Amavasai (new moon) in December
- December 31
- Shukla Ekadasi in January
- January 11
- Next Amavasai
- January 29
- Shukla Ekadasi in February
- February 9
- Next Amavasai
- February 28
- Shukla Ekadasi in March
- March 11
New moon to new moon.
11 tithis (~11 days) after December 31 new moon.
December 31 + 29.53 days ≈ January 29.
11 tithis after January 29 new moon.
January 29 + 29.53 days ≈ February 28.
11 tithis after February 28 new moon.
Shukla Ekadasi falls on January 11, February 9, March 11, three different Gregorian dates for the same lunar observance. The date shifts because each lunation is 29.53 days, not a round calendar month.
These dates are illustrative. Actual tithi boundaries depend on the Moon's variable orbital speed. Use our panchangam engine for exact dates.
Solar-fixed vs lunar-moving: a comparison
| Observance | Anchor | Gregorian date (approx.) | Moves? |
|---|---|---|---|
| Pongal (Thai 1) | Solar: Sun enters Makara | Jan 14–15 | No (±1 day) |
| Tamil New Year (Chithirai 1) | Solar: Sun enters Mesha | Apr 14 | No (±1 day) |
| Aadi Perukku (Aadi 18) | Solar: 18th day of Aadi month | Aug 2–3 | No (±1 day) |
| Deepavali | Lunar: Amavasai in Aippasi | Oct–Nov | Yes (varies by weeks) |
| Ekadasi | Lunar: 11th tithi | Varies monthly | Yes (twice per month) |
| Pradosham | Lunar: 13th tithi | Varies monthly | Yes (twice per month) |
| Skanda Sashti | Lunar: Shukla Sashti in Aippasi | Oct–Nov | Yes |
| Thiruvathirai | Nakshatra: Moon in Ardra during Margazhi | Dec–Jan | Yes |
Why Deepavali moves, a concrete case
Deepavali is observed on the Amavasai (new moon day) falling in the Tamil solar month of Aippasi. Aippasi begins when the Sun enters Thula (Libra), typically around October 17–18. The month lasts about 29–30 days. Deepavali falls on whichever day the new moon occurs within that window.
In 2024, Deepavali fell on November 1. In 2025, it falls on October 20. In 2026, it will fall on November 8. That is a spread of nearly three weeks across just three years, all because the Moon's phase cycle does not synchronize with the Sun's transit through Thula.
Contrast this with Pongal. Thai month begins when the Sun enters Makara. Thai 1 is the celebration. No Moon involvement. The Sun reaches Makara on January 14 or 15, every single year. The date is effectively pinned.
How our panchangam engine handles both clocks
Our computation engine does not use pre-published almanac tables. Instead, it calculates solar and lunar positions in real time using well-established astronomical algorithms.
- Sun's position: NOAA-based solar position formulas give the apparent geocentric longitude to sub-arc-second accuracy. Subtracting the Lahiri ayanamsa converts to sidereal (nirayana) longitude. The sign boundary crossings yield sankranti moments and thus month starts.
- Moon's position: Jean Meeus' lunar algorithm (Astronomical Algorithms, 2nd ed.) computes the Moon's geocentric ecliptic longitude, accounting for the major perturbation terms. This gives both the sidereal position (for nakshatra) and the elongation from the Sun (for tithi).
- Tithi: Moon longitude minus Sun longitude, divided into 12-degree steps. This is ayanamsa-independent because it is a difference of two longitudes.
- Nakshatra: Moon's nirayana longitude (tropical longitude minus Lahiri ayanamsa), divided into 27 sectors of 13°20' each.
- Ayanamsa: Lahiri ayanamsa, the official standard of the Indian government, computed from its defining formula rather than from a lookup table.
Practical implications
If you are used to Gregorian dates, the shifting Tamil observance dates can be disorienting. Ekadasi is not always on the 11th of the month. Pradosham does not fall on the 13th. These numbers refer to the tithi count within the lunar cycle, not to the day of any solar month.
- Always check the panchangam for the current month's exact observance dates, do not assume they repeat on the same Gregorian date.
- Solar dates (Pongal, Tamil New Year, Aadi Perukku) are safe to pencil into your Gregorian calendar years in advance.
- Lunar dates (Ekadasi, Pradosham, Amavasai, Pournami, Chaturthi, Sashti) need to be checked month by month.
- Festival dates that combine both solar and lunar criteria (e.g. Deepavali = Amavasai during Aippasi) inherit the lunar drift while being constrained to the solar month's window.