Diwali 2027 falls on Thursday, Oct 28 in New York and on Friday, Oct 29 in New Delhi. Both dates are correct for their city. Your app needs both, and it needs to know which user gets which.

Diwali is not a rare case. We asked our API for the full Hindu calendar for 2027 in both cities. That means every festival and fasting day. Of the 23 big festivals, 9 fall on a different date. Of the 125 monthly fasting and observance days, 48 do. That includes 11 of the 25 Ekadashis, the fasts kept on the 11th day of each lunar half-month. In every one of those 57 cases, New York keeps the day one calendar day before India.

So a single printed list will be wrong for part of your users. The fix is two calls per city: GET /v1/festivals and GET /v1/vrats. Each takes the year, a latitude, a longitude and a time zone. Together they return the whole year. Each festival has a fixed id, listed on the Sections and IDs page.

Below are the full 2027 tables for New York, with the New Delhi date beside each one. Then we show the code that loads a year for any city. All dates come from our API, run on Oct 13, 2026.

Hindu calendar 2027: festival dates in New York and New Delhi

These are the 23 festivals that GET /v1/festivals returns. Most sit on a tithi, a lunar day, in a named lunar month. The 9 rows marked "No" fall on a different date.

Festival

New York

New Delhi

Same day?

Makar Sankranti

Thu, Jan 14

Fri, Jan 15

No

Vasant Panchami

Thu, Feb 11

Thu, Feb 11

Yes

Maha Shivaratri

Sat, Mar 6

Sat, Mar 6

Yes

Holika Dahan

Sun, Mar 21

Sun, Mar 21

Yes

Holi

Mon, Mar 22

Mon, Mar 22

Yes

Ram Navami

Wed, Apr 14

Thu, Apr 15

No

Hanuman Jayanti

Tue, Apr 20

Tue, Apr 20

Yes

Akshaya Tritiya

Sat, May 8

Sun, May 9

No

Guru Purnima

Sun, Jul 18

Sun, Jul 18

Yes

Raksha Bandhan

Mon, Aug 16

Tue, Aug 17

No

Krishna Janmashtami

Tue, Aug 24

Tue, Aug 24

Yes

Ganesh Chaturthi

Fri, Sep 3

Sat, Sep 4

No

Anant Chaturdashi

Tue, Sep 14

Tue, Sep 14

Yes

Sarva Pitru Amavasya

Wed, Sep 29

Wed, Sep 29

Yes

Navratri begins

Thu, Sep 30

Thu, Sep 30

Yes

Dussehra

Sat, Oct 9

Sat, Oct 9

Yes

Karva Chauth

Mon, Oct 18

Mon, Oct 18

Yes

Dhanteras

Tue, Oct 26

Wed, Oct 27

No

Diwali (Lakshmi Puja)

Thu, Oct 28

Fri, Oct 29

No

Govardhan Puja

Sat, Oct 30

Sat, Oct 30

Yes

Bhai Dooj

Sat, Oct 30

Sun, Oct 31

No

Chhath Puja (evening offering)

Thu, Nov 4

Thu, Nov 4

Yes

Prabodhini Ekadashi

Tue, Nov 9

Wed, Nov 10

No

Three of the nine fall in one five-day stretch: Dhanteras, Diwali and Bhai Dooj, from Oct 26 to Oct 30 in New York. A store that sends Diwali reminders in both countries needs a separate date for each one.

Two rows show why the dates split. Diwali needs Amavasya, the new moon day, during the early evening. In 2027, Amavasya begins at 11:18 AM on Oct 28 in New York, so that evening is covered. In New Delhi, the same moment is 8:48 PM, and the only evening it covers there is Oct 29. Some web lists give Oct 29 for New York as well. But there the new moon day ends at 9:36 AM on Oct 29, long before that evening. Makar Sankranti follows the Sun instead. It is the day the Sun enters Capricorn, if it does so before sunset. That happens at 10:40 AM on Jan 14 in New York, but at 9:10 PM in New Delhi, after sunset. So India keeps Jan 15.

Our post on why festival dates change by city explains the rule in full. Here we stay with the dates.

Ekadashi 2027 dates: all 25, in both cities

Ekadashi is the 11th tithi of each half of the lunar month. It comes twice a lunar month, and many families fast on it. GET /v1/vrats returns 25 for 2027 in each city.

Ekadashi

New York

New Delhi

Saphala

Sat, Jan 2

Sun, Jan 3

Pausha Putrada

Mon, Jan 18

Mon, Jan 18

Shattila

Mon, Feb 1

Tue, Feb 2

Jaya

Tue, Feb 16

Wed, Feb 17

Vijaya

Wed, Mar 3

Thu, Mar 4

Amalaki

Thu, Mar 18

Thu, Mar 18

Papamochani

Fri, Apr 2

Fri, Apr 2

Kamada

Fri, Apr 16

Sat, Apr 17

Varuthini

Sun, May 2

Sun, May 2

Mohini

Sun, May 16

Sun, May 16

Apara

Mon, May 31

Tue, Jun 1

Nirjala

Mon, Jun 14

Mon, Jun 14

Yogini

Wed, Jun 30

Wed, Jun 30

Devshayani

Tue, Jul 13

Wed, Jul 14

Kamika

Thu, Jul 29

Thu, Jul 29

Shravana Putrada

Thu, Aug 12

Thu, Aug 12

Aja

Fri, Aug 27

Sat, Aug 28

Parsva

Sat, Sep 11

Sat, Sep 11

Indira

Sun, Sep 26

Sun, Sep 26

Papankusha

Sun, Oct 10

Mon, Oct 11

Rama

Mon, Oct 25

Mon, Oct 25

Devutthana

Tue, Nov 9

Wed, Nov 10

Utpanna

Tue, Nov 23

Wed, Nov 24

Mokshada

Thu, Dec 9

Thu, Dec 9

Saphala

Thu, Dec 23

Thu, Dec 23

A lunar year without a leap month has 24 Ekadashis, but calendar year 2027 holds 25. Saphala Ekadashi falls twice: early in January and again in late December. A loop that expects exactly 24 will break.

We checked the New Delhi column against Drik Panchang, a widely used published calendar. Its 2027 Ekadashi page for New Delhi gives the same date for all 25.

How many 2027 dates differ between New York and India

Here is the full count, from the same two runs. "India" here means New Delhi. We also asked for the API's default place, Ujjain, on India time. It gave the same date as New Delhi for every 2027 entry.

Kind of day

In 2027

Different in New York

Festivals

23

9

Ekadashi

25

11

Pradosh (13th lunar day, an evening fast)

25

11

Darsha Amavasya (rites on the new moon day)

13

6

Purnima vrat (the full moon fast)

12

5

Amavasya (the new moon day)

13

4

Masik Shivaratri (monthly night of Shiva)

13

4

Sankashti Chaturthi (4th day after the full moon)

12

4

Purnima (the full moon day)

12

3

All

148

57

That is 57 of 148 dates, or 39%. One day appears in both lists: Prabodhini Ekadashi in the festivals and Devutthana Ekadashi in the fasts are the same day.

Bar chart of 2027 Hindu festival and fasting days: 57 of 148 fall one day earlier in New York than in New Delhi, including 9 of 23 festivals and 11 of 25 Ekadashis

The gap always ran the same way in 2027. New York was one day earlier, never later. New York's clock is 9.5 or 10.5 hours behind India's. So a lunar day that begins late in India's evening begins in New York's morning. New York's evening can use it that same day, while India waits for the next one. Do not hard-code "subtract one day", though. Some festivals use other rules, and 91 of the 148 dates did not move at all.

When traditions keep a different day

Some days split by tradition, not by city. The API flags them with sources_agree: false and gives the other date in other_tradition_date. In 2027, three days carry this flag:

Day

City

Date given

Other tradition

Krishna Janmashtami

New York and New Delhi

Tue, Aug 24

Wed, Aug 25

Jaya Ekadashi

New York

Tue, Feb 16

Wed, Feb 17

Pausha Putrada Ekadashi

New Delhi

Mon, Jan 18

Tue, Jan 19

For Janmashtami, the API notes that Vaishnava families keep the day when Ashtami, the 8th lunar day, holds sunrise. In 2027 that points to Aug 25. Show both dates and let each family follow its own.

Every entry also carries decided_by, the rule that chose the day. For New York's Diwali, it reads "the only day the tithi holds pradosh". Pradosh is the early evening window. Print that line in a details view. A priest or a careful user can check it against their own calendar.

See every call behind these tables. The Hindu calendar API page lists the festival, fasting-day and month calls, with the fields each one returns.

See the Hindu calendar API, which returns festival and fasting dates for any city

Load a whole year into your app

Two calls give you a full year for one place. This Node.js code lists New York's 2027 festivals and Ekadashis in one sorted list. Run it on your server, so your API key stays private.

// The 2027 festivals and Ekadashis for one city (Node 18 or later).
const BASE_URL = "https://apiforastrology.com/api/astrology/v1";

// The user's city: New York.
const place = {
  year: "2027",
  latitude: "40.7128",
  longitude: "-74.006",
  timezone: "America/New_York",
};

async function getYear(path, extra = {}) {
  const query = new URLSearchParams({ ...place, ...extra });
  const response = await fetch(`${BASE_URL}/${path}?${query}`, {
    headers: { Authorization: `Bearer ${process.env.ASTROLOGY_API_KEY}` },
  });
  return response.json();
}

const { festivals } = await getYear("festivals");
const { vrats } = await getYear("vrats", { kind: "ekadashi" });

// One list, sorted by date.
const days = [...festivals, ...vrats].sort((a, b) => a.date.localeCompare(b.date));

for (const day of days) {
  let line = `${day.date}  ${day.name}`;
  if (day.sources_agree === false) {
    line += `  (some families: ${day.other_tradition_date})`;
  }
  console.log(line);
}
console.log(`${festivals.length} festivals, ${vrats.length} Ekadashis`);

It printed 48 dates, then a count. Here are the first six lines and the last:

2027-01-02  Saphala Ekadashi
2027-01-14  Makar Sankranti
2027-01-18  Pausha Putrada Ekadashi
2027-02-01  Shattila Ekadashi
2027-02-11  Vasant Panchami
2027-02-16  Jaya Ekadashi  (some families: 2027-02-17)
...
23 festivals, 25 Ekadashis

Change the kind value to get other fasting days, such as kind=ekadashi,pradosh. Leave it out to get all eight kinds. Add lang=hi for Hindi names: Diwali comes back as दीपावली (लक्ष्मी पूजा), with the English name in name_en.

Four details save you bugs. First, send a time zone name such as America/New_York, not a fixed offset. Daylight saving changes New York's offset during the year, and the API uses the right one for each date. Second, leave out the place and you get India's dates for Ujjain, not your user's. Third, merge with care. Nov 9 shows up twice in New York's list, as Prabodhini Ekadashi and as Devutthana Ekadashi. Fourth, the first call for a new year and place is slow. In our run, it took about 4 seconds for festivals and 8 for fasting days.

For a month grid, GET /v1/panchang/month returns one row per day with that day's festivals and fasts. In November 2027, New York has 8 days with one or both. The API reference lists every field.

Who needs which list

A diaspora app needs the user's own city. Jane Doe in Chicago and her parents in New Delhi will see different Diwali dates, and both are right. A publisher with a US and an India edition needs one list per edition. A puja store needs its own city for kit deliveries and reminders. Our post on astrology features for puja stores covers that case.

Check one day for your city. The free panchang tool shows the tithi, sunrise and the times of the day for any place and date. It runs on the same API.

Open the free panchang tool to see today's tithi and sunrise for your own city

A Hindu calendar is not one list for the world. In 2027, 57 of 148 dates differ between New York and New Delhi, always by one day. Ask for each user's city, show the rule beside the date, and both cities get the right day.