Every Vietnamese wall calendar prints two dates on each page: the solar date in large type and the lunar date, âm lịch, in small type underneath. Tết, the full-moon festivals, death anniversaries (ngày giỗ) and many family birthdays follow the small number. Yet few people know where it comes from, and the usual explanations ("the lunar year is 354 days", "a leap month every three years") are close enough to sound right and wrong enough to produce the wrong date. This article walks through the actual rules, with dates computed by the lunar calendar converter, which implements them.
The month: from one new moon to the next
A lunar month starts on the day of the new moon (điểm sóc), the moment the moon sits between the Earth and the sun and cannot be seen. The time between two new moons averages 29.53 days, so a lunar month has either 29 days (tháng thiếu) or 30 days (tháng đủ). Which one is not a fixed pattern: it depends on when the next new moon falls. In lunar year 2026 the months run 30, 29, 30, 29, 29, 30, 29, 29, 30, 30, 30, 29 days. Two short months in a row happen, and so do three long ones.
The important detail is that the day is decided by the clock in Vietnam, UTC+7. The new moon of Tết 2026 comes at about 19:02 on 17 February Vietnam time, so 17 February 2026 is mùng 1 Tết. If a new moon falls at 23:15, that day is still day 1; at 00:15 it would be the next day.
The year: anchored to the winter solstice
Twelve lunar months make about 354 days, eleven short of a solar year. Left alone, Tết would drift through all four seasons in about 33 years. The calendar is pinned to the seasons by the sun instead:
- Month 11 is the month that contains the winter solstice (Đông chí, the sun at 270°, around 21 or 22 December).
- Count the new moons from one month 11 to the next. Usually there are 12. When there are 13, the year needs a leap month.
- The leap month is the first month after month 11 during which the sun does not enter a new 30° sign, a month without a "major term" (trung khí). It repeats the number of the month before it.
Take 2025. The months after month 11 of 2024 began on 31 December, 29 January (Tết Ất Tỵ), 28 February, 29 March, 28 April, 27 May, 25 June and 25 July. During the month that started on 25 July the sun stayed in the same 30° sign from start to finish: it reached 120° on 22 July, before the month began, and 150° only on 23 August, the first day of the next month. That month therefore had no major term and became tháng 6 nhuận, a second sixth month from 25 July to 22 August 2025. That is why 8 August 2025 was 15/6 nhuận Ất Tỵ, and why the calendar had two "Rằm tháng Sáu" that summer.
Leap months come seven times in nineteen years, but not every third year. Recent and upcoming ones, computed with the same rules: 2020 month 4, 2023 month 2, 2025 month 6, 2028 month 5, 2031 month 3, 2033 month 11.
Why Tết moves between 21 January and 20 February
Because month 11 contains the winter solstice, month 1 is normally the second new moon after it. The solstice is around 21 December and a month is 29.5 days, so the second new moon lands somewhere between about 21 January and 20 February. Computing every year from 1800 to 2199 gives exactly that window: the earliest Tết is 21 January (for example 1966 and 1985), the latest 20 February (1833 and 1920). In living memory the latest has been 19 February, which is why the common saying is "never before 21 January, never after 19 February".
Here are Tết dates you can check in the tool:
| Lunar year | Can chi | Tết |
|---|---|---|
| 2024 | Giáp Thìn | 10 February 2024 |
| 2025 | Ất Tỵ | 29 January 2025 |
| 2026 | Bính Ngọ | 17 February 2026 |
| 2027 | Đinh Mùi | 6 February 2027 |
| 2028 | Mậu Thân | 26 January 2028 |
The can chi name runs through a 60-year cycle of ten stems (Giáp, Ất, Bính…) and twelve branches (Tý, Sửu, Dần…), so 2024 Giáp Thìn comes back in 2084. The Vietnamese zodiac uses the cat for Mão where China uses the rabbit, and the water buffalo for Sửu.
Vietnam and China: one hour, sometimes one month
The Chinese calendar follows the same rules at UTC+8. An hour makes no difference unless a new moon or the solstice falls in the last hour before midnight in Vietnam, when it is already the next day in Beijing.
- 2007: the new moon came at about 23:15 on 17 February in Vietnam, 00:15 on the 18th in China. Tết Đinh Hợi was 17 February in Vietnam and 18 February in China. Calendar printers who had copied Chinese tables printed the wrong day, and the year had no "30 Tết".
- 1985: the winter solstice of 1984 fell around 23:00 on 21 December Vietnam time, after midnight in China. The new moon came on 22 December. In Vietnam the solstice was therefore inside the month that began on 23 November, which became month 11; in China it was inside the month starting 22 December. Vietnam's whole year shifted one month earlier and Tết Ất Sửu was on 21 January 1985, while China celebrated on 20 February. Vietnam then had a leap month 2, from 21 March to 19 April 1985, and the calendars agreed again.
- 1968: North Vietnam had moved to UTC+7 by a decree of 8 August 1967; the South stayed on UTC+8. The new moon was at about 23:29 on 29 January in the North, 00:29 on 30 January in the South. The two halves of the country celebrated Tết Mậu Thân a day apart.
- 2030 will repeat 2007: the new moon falls at 16:07 UTC on 2 February 2030, which is 23:07 in Vietnam and after midnight in China. Tết will be 2 February in Vietnam and 3 February in China.
Worked example: a lunar birthday
Someone born on 15 May 1990 asks when to celebrate their lunar birthday in 2026. Converting 15/5/1990 solar to lunar gives 21/4 Canh Ngọ. Converting 21/4/2026 back gives 6 June 2026; in 2027 the same lunar date is 26 May. The solar date wanders by up to a month from year to year, which is the whole point of the lunar calendar.
Common mistakes
- Using a Chinese calendar app. It is right most years and wrong on the exact days that matter, as 1985, 2007 and 2030 show. Check that a tool says it computes at UTC+7.
- Assuming a leap month every three years. It is seven in nineteen, and which month repeats depends on the sun, not on a table of "month 4 this time".
- Forgetting that leap months have no ngày giỗ of their own. A death anniversary set in a leap month is usually kept in the ordinary month of that number when a year has no such leap month. Ask the family; the calendar cannot decide that for you.
- Mixing up the lunar year and the solar year. Someone born on 20 January 2025 was born in the lunar year Giáp Thìn, not Ất Tỵ, because Tết Ất Tỵ came on 29 January.
- Trusting old printed dates blindly. Before 1967 in the North and 1975 in the South, Vietnamese calendars used UTC+8, and the 19th-century court calendar used older methods. A modern computation can differ by a day for those years.
To try any of these dates, open the lunar calendar converter. For the exact age in years, months and days, the age calculator does the solar side.