Computing the Vietnamese lunar calendar

Vietnamese calendar rules

The Vietnamese calendar is a kind of astronomical calendar. It can be calculated for any arbitrary year based on the motion of the Sun, the Earth and the Moon. To be able to compute it for any time frame you basically need to compute 2 things:

New Moon is a time the Sun, the Moon and the Earth are on the same line (ho^.i die^.n). It occurs once every about 29.5 days.

The 12 Principal Terms (also called Major Terms) are points that divide the ecliptic (ddu+o+`ng hoa`ng dda.o) into equal sectors. Four of them are also used as seasonal markers in Western calendar: March equinox (Xua^n pha^n, around 20/3), June solstice (Ha. chi', around 22/6), September equinox (Thu pha^n, around 23/9), and December solstice (Ddo^ng chi', around 22/12).

The New Moon are used to determine when the lunar months begin and end. The Principal Terms are used to determine the leap months (intercalary months, tha'ng nhua^.n) and the names of the lunar months. Because they are based on solar positions, the Vietnamese calendar is not a pure lunar one, but a lunisolar calendar (a^m du+o+ng

Once the New Moons and Major Terms are calculated, the following rules can be applied to determine the months and dates. The rules are adapted from the Explanatory Supplement to the Astronomical Almanac, P. Kenneth Seidelmann, editor:

  1. The first day of the month is the day on which the New Moon occurs.
  2. An ordinary year has twelve lunar months; an intercalary year has thirteen lunar months.
  3. The Winter Solstice always falls in month 11.
  4. In an intercalary year, a month in which there is no Principal Term is the intercalary month. It is assigned the number of the preceding month, with the further designation of intercalary. If two months of an intercalary year contain no Principal Term, only the first such month after the Winter Solstice is considered intercalary.
  5. Calculations are based on the meridian 105 East.

How to apply the rules

There are quite a few computer programs to compute New Moons and Principal Terms with high precision (see Links for some pointers). Once you have the New Moons, you know when the lunar monts start and end. The first day of the lunar month (mu`ng mo^.t) is the one containing the New Moon. However, here you need to be careful to consider the correct time zone. It is the reason why the Vietnamese and the Chinese calendars differ on many occations. For example, if you have New Moon at yyyy-02-18 16:24:45 GMT, then the first day of the Vietnamese lunar month is yyyy-02-18, because 16:24:45 GMT is 23:24:45 Hanoi time of the same day. The Chinese lunar month however begins on the following day, because the day in China begins a bit earlier, so that the New Moon (at yyyy-02-19 00:24:45 Beijing time) is contained in yyyy-02-19.

After having the start/end dates of the lunar months you can determined their names and the leap months as follows. The Winter Solstice (Ddo^ng chi') always falls in month 11 of the lunar year. So we need to compute the days of two consecutive Winter Solstices. If there are 12 lunar months between them then we are done: just number the months 11, 12, 1, 2, ... starting at the month containing the first Winter Solstice.

Matters are a bit more complicated when there are 13 lunar months between the two Winter Solstices. Then we have a leap year (na(m nhua^.n) and need to find out what the leap month is. Here is he rule for doing it: the first lunar month after the first Winter Solstice that does not contain a Principal Term is the leap month. After finding the leap month you give the months the names 11, 12, 1, ..., M, M leap, M+1, ...

Example: lunar calendar for 1984

Let us apply the above rules to determine the lunar dates of the Vietnamese calendar for the year 1994 based on the following table. (The table was obtained using the Java program listed below.)

EventGMT timeHanoi timeBeijing time
New Moon04/12/1983 12:18:4204/12/198304/12/1983
Principal Term22/12/1983 10:20:2622/12/198322/12/1983
New Moon03/01/1984 05:09:1003/01/198403/01/1984
Principal Term20/01/1984 20:59:3321/01/198421/01/1984
New Moon01/02/1984 23:43:5102/02/198402/02/1984
Principal Term19/02/1984 11:11:0219/02/198419/02/1984
New Moon02/03/1984 18:31:4503/03/198403/03/1984
Principal Term20/03/1984 10:15:3420/03/198420/03/1984
New Moon01/04/1984 12:13:0001/04/198401/04/1984
Principal Term19/04/1984 21:23:3220/04/198420/04/1984
New Moon01/05/1984 03:50:2801/05/198401/05/1984
Principal Term20/05/1984 20:37:1921/05/198421/05/1984
New Moon30/05/1984 16:52:1030/05/198431/05/1984
Principal Term21/06/1984 04:37:5321/06/198421/06/1984
New Moon29/06/1984 03:20:0429/06/198429/06/1984
Principal Term22/07/1984 15:31:5222/07/198422/07/1984
New Moon28/07/1984 11:51:5128/07/198428/07/1984
Principal Term22/08/1984 22:33:3723/08/198423/08/1984
New Moon26/08/1984 19:28:2127/08/198427/08/1984
Principal Term22/09/1984 20:07:2223/09/198423/09/1984
New Moon25/09/1984 03:16:0025/09/198425/09/1984
Principal Term23/10/1984 05:22:3423/10/198423/10/1984
New Moon24/10/1984 12:11:4824/10/198424/10/1984
Principal Term22/11/1984 02:51:4722/11/198422/11/1984
New Moon22/11/1984 22:53:2123/11/198423/11/1984
Principal Term21/12/1984 16:09:1221/12/198422/12/1984
New Moon22/12/1984 11:35:3922/12/198422/12/1984

According to the rules, month 11 of a lunar year begins on the day of the New Moon before or on the day of the Winter Solstice and ends on the day before the first New Moon after it. So, month 11 of the lunar year 1983 last from 04/12/1983 to 02/01/1984 and month 11 of the lunar year 1984 last from 23/11/1984 to 21/12/1984.

Between 03/01/1984 (begin of the first month after lunar month 11 of 1983) and 21/12/1984 (end of lunar month 11/1984) there are 12 lunar months. Therefore, 1984 is not a leap year of the Vietnamese calendar, and the month names are straightforward: month 12 from 03/01/1984 to 01/02/1984, month 1 from 02/02/1984 to 02/03/1984 etc.

Why 1985 has a leap lunar month?

The situation is different in 1985. Month 11 of the lunar year 1985 last from 12/12/1985 to 09/01/1986. Between the months 11 of 1984 (from 23/11/1984 to 21/12/1984) and 1985 there are 13 lunar months, so 1985 is a leap year. The month from 21/03/1985 to 19/04/1985 does not contain a Principal Term and is therefore the leap month.

EventGMT timeHanoi timeBeijing time
New Moon22/11/1984 22:53:2123/11/198423/11/1984
Principal Term21/12/1984 16:09:1221/12/198422/12/1984
New Moon22/12/1984 11:35:3922/12/198422/12/1984
Principal Term20/01/1985 02:48:1820/01/198520/01/1985
New Moon21/01/1985 02:15:1921/01/198521/01/1985
Principal Term18/02/1985 16:59:4718/02/198519/02/1985
New Moon19/02/1985 18:34:2120/02/198520/02/1985
Principal Term20/03/1985 16:04:1920/03/198521/03/1985
New Moon21/03/1985 11:56:1921/03/198521/03/1985
Principal Term20/04/1985 03:12:1720/04/198520/04/1985
New Moon20/04/1985 05:22:4620/04/198520/04/1985
New Moon19/05/1985 21:43:4520/05/198520/05/1985
Principal Term21/05/1985 02:26:0421/05/198521/05/1985
New Moon18/06/1985 12:02:5518/06/198518/06/1985
Principal Term21/06/1985 10:26:3821/06/198521/06/1985
New Moon18/07/1985 00:03:2618/07/198518/07/1985
Principal Term22/07/1985 21:20:3723/07/198523/07/1985
New Moon16/08/1985 10:13:2716/08/198516/08/1985
Principal Term23/08/1985 04:22:2323/08/198523/08/1985
New Moon14/09/1985 19:27:1415/09/198515/09/1985
Principal Term23/09/1985 01:56:0723/09/198523/09/1985
New Moon14/10/1985 04:37:5714/10/198514/10/1985
Principal Term23/10/1985 11:11:1923/10/198523/10/1985
New Moon12/11/1985 14:20:0812/11/198512/11/1985
Principal Term22/11/1985 08:40:3222/11/198522/11/1985
New Moon12/12/1985 00:48:4112/12/198512/12/1985
Principal Term21/12/1985 21:57:5722/12/198522/12/1985
New Moon10/01/1986 12:12:0510/01/198610/01/1986

Comparison with Chinese calendar

1985 is one of the few years where Vietnamese and Chinese calendars differ significantly: the Vietnamese New Year was 1 month earlier than the Chinese one. The reason can be detected from the above table. The Winter Solstice 1984 falls on 21/12/1984 Hanoi time, but on 22/12/1984 Beijing time, the same day as the New Moon. The month 11 of the Chinese year must contain the Winter Solstice, so it is not the month from 23/11/1984 to 21/12/1984 like in the Vietnamese calendar, but the one starting 22/12/1984. Consequently, the subsequent months (12, 1,...) also start about one month later than the corresponding months of the Vietnamese calendar. While New Year in Vietnam falls on 21/01/1985, it is on 20/02/1985 in China. The two calendars agree again after a leap month is inserted to the Vietnamese calendar (month from 21/03/1985 to 19/04/1985, as seen above). Also, in year 1984 the Chinese lunar month from 23/11/1984 to 21/12/1984 is the first lunar month after Winter Solstice 1983 that does not contain a Major Term and is therefore a leap month.

In the 21th century there are 3 years where the Lunar New Year begins at different dates in Vietnam and in China. In 2007 the Vietnamese New Year is on 17/02/2007, the Chinese one on 18/02/2007. In 2030 the dates are 02/02/2030 and 03/02/2030, and in 2053 they are 18/02/2053 and 19/02/2053.


Ho Ngoc Duc <>