Satish B. SettyArchiveAboutRSS Feed

Specification of Date Formats for Indian Calendrical Systems

STATUS: complete

Wishing you all a happy Sri Panchami! Today is Māgha-Ṡukla-Pan̄camī tithi, dedicated especially to the goddess of knowledge and learning Sarasvatī or Vidyā-Lakṣmī or the myriad feminine divinities. Generally today is when a child is initiated into educational studies. On this auspicious day, let me jot down some thoughts on how to write traditional Indian dates compactly. These date formats are proposals, improvement ideas welcome.

Without going into much detail, there are two calendrical systems in vogue:

  1. Solar calendar: A month can contain 30 or 31 days.
  2. Luni-solar calendar: A month consists of two parts of 15 days each (ṡukla-pakṣa or kṛṣṇa-pakṣa), a “day” being called tithi, which can span anything between 20 hours to 26 hours approximately.

There can be leap days and leap months in the luni-solar calendar. However, the solar calendar doesn’t have leap months, just leap days occasionally. Both these are astronomical calendars, so the geographical place of observation is necessary for completeness.

Solar dates

This is rather straight-forward. An example of this is already in use in Nepal, Bengal, Tamil Nadu, Kerala, etc.

Date format:


05-Feb–2022 corresponds to YYYY–10–22 where the year YYYY is different based on the chosen epoch.

  1. Nepali: 22-Magh–2078 Bikram samvat, could be rendered 2078–10–22. The month of Māgh is the tenth month since the Nepali new year begins on 01st of Baisakh.
  2. Assamese, Bengali: 1428–10–22 Bhaskarabda Era or Bengali era. As before, Māgh = 10.
  3. Oriya: 1429–10–23 Vilayati era. As before, Māgh = 10. The Oriyas reckon the date just a bit different, so instead of 22nd it’s 23rd.
  4. Tamil Nadu: 1943–10–23 Ṡaka era. As before, month of Thai = 10.
  5. Malayalam date: 22-Makaram–1197 Kollam era, could be rendered as 1197–10–22. The month of Makaram is the tenth month since the Keralite new year begins on 01st of Mesham.

As can be seen, there is a usually ±1 day off between Bengali group vs Tamil Nadu group.

As a side note, there are two more solar calendars promulgated by the Government of India, the Rashtriya Panchang . They are not used by 99% of Indians so they’re quite useless.

Indian National Calendar (INC)

The so-called Indian National Calendar starts its New Year on 21/22-March of the Gregorian calendar. This date is fixed. As is obvious, the new year is intentionally made to coincide with the spring equinox . The months are enumerated starting from Chaitra (01), …, Phalguna (12). The Ṡaka Era epoch is mandatory to be used (no other epoch allowed). These dates are also called “National Civil Date”.

According to this reckoning, 05-Feb–2022 corresponds to 16 Māgha 1943 Saka Era.

05-Feb–2022 = 1943–11–16 S.E.

Look carefully. Māgha is the 11th month of the year, whereas it is the 10th month for other solar calendars (see above). This confusion of naming the same month (e.g. Māgh or Māgha in this case) for different purposes is why people don’t use the calendar.

Again, 99% of Indians (Hindus, Sikhs, etc) don’t start their new year on the spring equinox. There is no historical precedence to this in India, probably with the exception of immigrant Iranian muslims. Even the Zoroastrians have their new year in August.

Evidently, the INC is a tropical (s̱āyana) calendar, introduced in 1957. It is almost the same as Iranian-Muslim solar Hijri calendar and Bangladeshi/Akbar calendar.

INC / Bangladeshi (pre–2019) Solar Hijri / Bangladeshi (post–2–19)
31 days first 5 months first 6 months
30 days next 6 months next 5 months
leap day 30/31 days in Caitra 29/30 days in last month

Some sanity prevailed and in 2004 the Government introduced a sidereal solar calendar.

All-India Nirayana Calendar (AINC)

The AINC is based on the sidereal (nirayana) calendar which is the type extensively used in India, be it the North or the South. As mentioned above, there is usually ±1 day difference among the regional solar calendars. The AINC strikes a compromise and tunes its calendar to Ujjain. Its new year begins on 14th April every year (fixed). The months are enumerated Vaiṡakha (01), … Caitra (12) – just like in the regional calendars. The Kali-yuga Era (K.E.) epoch is mandatory to be used (no other epoch allowed). These dates are also called “National Nirayana Date”.

According to this reckoning, 05-Feb–2022 corresponds to 23 Māgha 5122 Kali Era.

05-Feb–2022 = 5122–10–23 K.E.

In order to avoid confusion with INC, the Rashtriya Panchang recommends to prefix dates in the AINC with “(ni)” for nirayana. Hence,

05-Feb–2022 = 16 Magha S.E. = (ni) 23 Magha K.E.

A leap year implies 31 days in the month of Phalguna (coinciding with 29 days in February of Gregorian leap year).

Lunisolar dates

A lunisolar date must encode more data. Specifically:

  1. Number of years since a chosen epoch
  2. Month of the year (01 = Caitra … 12 = Phālguṇa)
  3. Day of the pakṣa (1 … 15)
  4. Boolean flag to denote if it is ṡukla pakṣa or kṛṣṇa pakṣa
  5. Boolean flag to denote if it is a leap day or not
  6. Boolean flag to denote if it is a leap month or not
  7. Boolean flag to denote if it is Amānta or Pūrṇimānta
  8. Boolean flag to denote if it is Sāyana (tropical) or Nirayana (sidereal)
  9. Boolean flag to denote if the new year is reckoned from Kārtīka (=mostly Gujarat) or Caitra (=rest of India)

This covers all the possible variants all over India so that the date is unique.

The simplest case is:


where P = pakṣa identifier, say S = ṡukla and K = kṛṣṇa. For example, Māgha-Ṡukla-Pan̄cami would be


Since the Ṡālivāhana Ṡaka epoch and Kali-yuga epoch are already taken away by solar calendars, let me propose to use the Vikrama Era (V.E.) for the luni-solar case. So,

2078–11-S05 V.E. = 05-Feb–2022 C.E.

A leap day or a leap month is indicated by enclosing brackets. For example,

2000-(04)-(K05) V.E.

implies adhika-āṣāḍha-māsa kṛṣṇa-pakṣa adhika-pan̄camī of Vikrama year 2000.

By default, the Amānta system (also called mukhya-māna) is assumed. This is in vogue in Maharashtra, Gujarat, Karnataka and Andhra-Telangana. This is also the default in Rashtriya Panchang of the Govt. of India. The Pūrṇimānta system (also called gauṇa-māna) is used in Uttar Pradesh, Rajasthan, Bihar and N-W India. Amānta is denoted by uppercase (mukhya = primary, upper) ‘K’ and ‘S’ and Pūrṇimānta by lowercase (gauṇa = secondary, lower) ‘k’ and ‘s’. For example,

2078–11-k05 V.E. = 23-Jan–2022 C.E.

corresponds to Pūrṇimānta’s māgha-māsa kṛṣṇa-pakṣa pan̄camī, the same day as Amānta’s puṣya-māsa kṛṣṇa-pakṣa pan̄camī (2078–10-K05). 11-k ≍ 10-K. In general, MM-S ≍ MM-s but MM-K ≍ (MM+1)-k.

Similarly, Caitrādi (=first month of the year is Caitra) is the default. To denote Kārtīkādi (=first month of the year is Kārtīkā), the year is enclosed in brackets.

(2078)–04-K05 V.E. = 18-Jul–2022 C.E.

corresponds to Kārtikādi year 2078, month of Āṣāḍha (=04), amānta kṛṣṇa-pakṣa (=K) pan̄camī. The same day corresponds to

2079–04-K05 V.E. = 18-Jul–2022 C.E.

because (2078) ≍ 2079 i.e., the month of Āṣāḍha is already 4 months past the new year 2079 which began in Caitra 2022 C.E. (=the default).

The above are sidereal lunisolar calendars because they’re universal in India. Though the tithi calculation does not depend on the chosen ayanamsa, the month calculation depends, especially the adhika-māsa calculation is ayanamsa-dependent. Instead, one can also have tropical lunisolar calendar where the month doesn’t depend on ayanamsa at all. A simple extension would be to add a “S” or “N” to denote sāyana (tropical) or nirayana (sidereal) month. For example, 23-Jan–2022 C.E. is same as:

2078-S11-K5              = sāyana-māgha amānta-kṛṣṇa pan̄camī
2078-S12-k5              = sāyana-phālguṇa pūrṇimānta-kṛṣṇa pan̄camī
2078-N10-K5 ≡ 2078–10-K5 = nirayana-pauṣa amānta-kṛṣṇa pan̄camī
2078-N11-k5 ≡ 2078–11-k5 = nirayana-māgha pūrṇimānta-kṛṣṇa pan̄camī

Omitting the ‘N’ implies sidereal date (default).

Similarly, an elided tithi (kṣaya tithi) is denoted by adding a plus sign +. It represents the next tithi of the number preceding it. For example, 01-Jun–2024 has both navamī and daṡamī tithis on the same civil day. There is ēkādaṡī at sunrise on the next day, 02-Jun–2024.

2081–02-K09+ = 01-Jun–2024
2081–02-K11  = 02-Jun–2024

K09+ means that both K09 and K10 are on the same civil day.

In summary, the luni-solar dates are of the form:


where P = K, S, k, s denotes the pakṣa (ṡukla/kṛṣṇa amānta/pūrṇimānta), and A = S, N denotes ayana mode (sāyana, nirayana) with ‘N’ being optional. The brackets () and plus sign + are optional booleans, context-dependent as explained above.

NOTE: Although not mentioned, the years YYYY in all the above examples are elapsed years, as is the tradition in Hindu calendars. For example, 2078–11-S05 V.E. means 2078 years have already elapsed (past) and we’re currently in 2079th year’s māgha-ṡukla-pan̄camī. This convention exists becuase all the Indian epochs have a year zero whereas the Gregorian-Julian calendars don’t – the year after 1 B.C is 1 A.D., not 0 A.D!

One can find the INC and AINC dates from Drik Panchang (search for “National Nirayana Date”), the Positional Astronomy Centre (PAC) Kolkata, Dieter Koch’s calendar or look up tables like these.