Here is a fact that makes the whole of this page necessary.
A tithi is not a day. It is twelve degrees of the Moon's separation from the Sun, and the Moon does not cover twelve degrees at a fixed rate. Near perigee it takes under twenty hours. Near apogee, over twenty-six. A day is twenty-four.
So a festival's tithi can be running at two sunrises. It can be running at none. Something has to decide which square on the Gregorian grid the festival lands in, and that something is not obvious, not uniform, and not the same for every festival.
The tradition's answer is several answers
Most festivals take the tithi running at sunrise. That is the default, and where the tradition names nothing else, that is the rule.
But the tradition often does name something else, and when it does, the named window decides instead:
Ganesh Chaturthi is decided at madhyahna, the middle fifth of the daylight, because that is when the murti is installed.
Janmashtami at nishita, the middle muhurta of the night, because Krishna was born at midnight.
Diwali at pradosh, the twilight after sunset, because the lamps are lit at dusk.
Dussehra in aparahna, the fourth fifth of the daylight, because the Vijayadashami rites are performed in the afternoon.
Notice the pattern. The rule is not arbitrary and it is not a separate layer of doctrine bolted on top. In every case the window is simply where the observance actually happens. The calendar follows the ritual rather than the other way round.
Which means the sunrise tithi is sometimes wrong
This is the part that a date-only calendar cannot show you, and it is not a marginal effect.
Take Maha Shivratri in 2026. Chaturdashi does not begin until 17:04 on 15 February. Ask what the tithi is at sunrise that morning and the answer is Trayodashi, the day before. By the sunrise rule the festival would be the 16th.
It is the 15th. Nishita on the night of the 15th falls inside Chaturdashi, and Shivratri is decided at nishita because the jagaran runs to midnight.
Or Dussehra in 2026. Dashami begins only at 12:50 on 20 October, so again the sunrise tithi that morning is the previous one. The festival is still the 20th, because Dashami must prevail during aparahna and it does.
In 2026 at Delhi, seven of the festivals on this page fall on a day the sunrise tithi alone would get wrong. The page marks every one of them and prints the date the sunrise rule would have produced beside the date it actually is.
Which is why two calendars can disagree without either being wrong
If you have ever seen two panchangs put Janmashtami on different days and wondered which had made an error, the answer is usually neither.
They are applying different tests. Smarta observance takes the nishita rule. Vaishnava observance additionally requires Rohini nakshatra and refuses an Ashtami mixed with Saptami. In 2025 those two produced 15 August and 16 August respectively, and the Government of India's own holiday list carried both, one as restricted and one as gazetted.
The astronomy was identical in both cases. The tithi and the nakshatra ran when they ran. What differed was the question being asked of them.
Ties, and the year Diwali split
When a tithi satisfies a rule on two consecutive days, something has to break the tie. This page takes the day whose window the tithi covers more of, and it reports both figures so you can see whether it was close.
Diwali 2024 is the case worth walking through, because it was genuinely disputed and the reason is not what most of the coverage said.
Amavasya ran from 15:53 on 31 October to 18:17 on 1 November. So it covered the whole of 31 October's pradosh and only the first 39% of 1 November's. By the pradosh rule, 31 October wins and does not win narrowly.
But amavasya was the tithi at sunrise on 1 November, and not on 31 October. By the sunrise rule the answer is 1 November.
So the 2024 dispute was not a close call inside one rule. It was a disagreement about which rule applies. Publishers who applied pradosh got the 31st; those weighting the udaya tithi got the 1st. Drik Panchang's own city pages came out differently for different cities. The Government of India gazetted the 31st.
That is a much more interesting fact than "the date was disputed", and it is the kind of thing that only becomes visible once the rule is printed alongside the date.
The tithi that has no day at all
There is a third case, and it catches calculators out.
Chaitra Shukla Pratipada in 2026 begins at 06:52 on 19 March and ends at 04:52 on the 20th. Sunrise at Delhi is around 06:30 both mornings. The tithi therefore misses both sunrises entirely: it begins twenty-odd minutes after the first and ends before the second.
By the sunrise rule, no day carries it. Yet Ugadi and Gudi Padwa are kept on the 19th.
The resolution is that the observance falls on the day the tithi begins, since that is the day it is present for. The same fallback fixes Karva Chauth 2024 and several others. The page applies it and says it has done so, rather than presenting the date as though the rule had been satisfied normally.
Bhadra can move a date, not merely delay an hour
Holika Dahan has to avoid Bhadra, the Vishti karana. And Bhadra runs from the start of Purnima in every year I have checked, which means it routinely swallows the whole of the dahan's pradosh window.
Usually that only delays the bonfire. In 2024 Bhadra cleared at 23:13 and in 2025 at 23:27, both still that night, so the lighting simply happened late.
In 2026 it runs until 05:28 the following morning. There is no usable evening left on the first candidate day at all, and the observance moves to the next. One test (does Bhadra clear while it is still that night) reproduces all three years.
Amanta and purnimanta, and why the month name moves
A lunar month can be reckoned new moon to new moon (amanta, followed across the south and west) or full moon to full moon (purnimanta, followed across the north).
This matters for exactly one class of festival: those in Krishna paksha, the waning fortnight. During Shukla paksha the two reckonings agree completely and the month has one name. During Krishna paksha the purnimanta month has already moved on, so it carries the following month's name.
Janmashtami is the clearest example. A Maharashtrian knows it as Shravana Krishna Ashtami. Someone in Uttar Pradesh knows it as Bhadrapada Krishna Ashtami. Same tithi, same day, same astronomy. Only the label differs.
The page prints both names for every Krishna-paksha festival, because a reader should be able to find the festival under the name their family uses.
Why the festivals move against the Gregorian date at all
Twelve lunar months come to about 354 days. A solar year is 365. So a festival fixed by a tithi falls roughly eleven days earlier each Gregorian year, which is why Diwali wanders through late October and November rather than sitting on a fixed date the way Christmas does.
Left alone, that drift would carry every festival through all four seasons in about thirty-three years. Holi would eventually be a monsoon festival. Since the festivals are tied to seasons (harvests, the turn of the year, the onset of the rains) the calendar cannot let that happen.
It does not. Roughly seven times in nineteen years an extra month is inserted, an adhika masa. That year runs about 384 days, and instead of sliding eleven days back the festival jumps about nineteen days forward.
There is no third case. Every year is one or the other, and the two rates hold each other in place: seven jumps of nineteen against twelve slides of eleven comes to a hundred and thirty-three against a hundred and thirty-two. Near enough zero across nineteen years, which is why 235 lunar months and 19 solar years agree to within a couple of hours, and why a tithi anniversary returns to almost the same Gregorian date after nineteen years.
The tithi anniversary page shows that sequence year by year for any date you give it.
The five parts of the day, and why they are not clock hours
The windows these rules test against are worth being concrete about, because they are not what a modern reader assumes.
The daylight, sunrise to sunset, is divided into five equal parts: pratah, sangava, madhyahna, aparahna and sayahna. They stretch and shrink with the season like everything else in this calendar. At Varanasi each part runs about 165 minutes in June and about 127 in December.
So madhyahna is not noon. Drik Panchang says so directly on its Rama Navami page, warning that people assume 12 p.m. because of the Gregorian clock. It is the middle fifth of the daylight, and its midpoint is the moment the birth of Rama is marked.
Nishita is not clock midnight either. The night is divided into fifteen muhurtas and nishita is the eighth, the middle one, so it straddles the true midpoint between sunset and the next sunrise. At Varanasi it centres nearer 00:20 in December and nearer 23:55 in June, and it runs about forty minutes in summer and fifty-four in winter.
Pradosh is the one where sources genuinely differ. The reading the computational panchangs use is the first fifth of the night, beginning at sunset, around 158 minutes in November at Delhi and 133 in August. A second reading fixes it at six ghatikas, 144 minutes, whatever the season. The two coincide only when the night runs exactly twelve hours, and a festival whose tithi ends between them falls on different days under each.
What the page leaves out, and why
Ekadashi is not here. Those dates split between smarta and vaishnava observance and carry their own parana windows, and the Ekadashi tool resolves them properly with both traditions. Putting a second, worse answer on the same site would not be an improvement.
Solar and nakshatra festivals are not here. Makar Sankranti, Baisakhi, Puthandu and Vishu are fixed by the Sun's entry into a sign rather than by a tithi; Onam is fixed by the Thiruvonam nakshatra. Sankranti timings are on the Sankranti page. The rest are absent rather than approximated, because a tithi-based calculator applied to a solar festival gives a confidently wrong answer.
Regional festivals are not here. The table covers the major pan-Indian observances. A Bengali, Tamil or Malayali calendar carries many more, with their own rules, and a partial list of those would be worse than none.
The place matters more than people expect
Every window on this page is built from local sunrise and sunset. The tithi boundary is one instant worldwide, but madhyahna, aparahna, pradosh and nishita are all local, so two cities can genuinely put the same festival on different days.
Drik Panchang's own city pages did exactly that for Diwali 2024: Mumbai and Bengaluru on 31 October, Delhi and Kolkata on 1 November, computed by the same publisher with the same method. The difference was sunset.
So the city selector on this page is not decoration, and a festival date copied from a national newspaper may not be the date for where you are.
What you can check
Every row shows the tithi, both month names, the rule that decided the date, and what the sunrise rule alone would have given. Where two days both satisfied the rule, it says so and names the runner-up. Where the tithi satisfied nothing, it says that too.
Across 2024, 2025 and 2026 the page reproduces thirty-five published dates for Delhi, checked against Drik Panchang and, where they carry the festival, the Government of India's gazetted and restricted holiday lists.
None of which asks you to trust the page. It asks you to be able to see what it did.