To convert IST to EST, subtract 10 hours 30 minutes: 18:30 IST is 08:00 EST. From the second Sunday in March to the first Sunday in November, New York is on EDT and the gap is 9 hours 30 minutes, so 18:30 IST is 09:00 EDT. India has no daylight saving; the gap moves only when New York’s clocks do.
Through 2026
Jan 1 – Mar 8 IST → EST UTC+5:30 → UTC−5 10:30
Mar 8 – Nov 1 IST → EDT UTC+5:30 → UTC−4 9:30
Nov 1 – Dec 31 IST → EST UTC+5:30 → UTC−5 10:30
New York changes at 07:00 UTC on March 8, which is 12:30 in India, and at 06:00 UTC on November 1, 11:30 in India.
A worked conversion
The tool below starts at 18:30 in India on Thursday, January 15, 2026:
2026-01-15 18:30 Asia/Kolkata (UTC+05:30, IST)
2026-01-15 08:00 America/New_York (UTC-05:00, EST)
An Indian morning is the previous evening in New York: 09:00 IST on January 15 is 22:30 EST on January 14, or 23:30 EDT in summer.
Meeting window
The two working days barely touch. The usual slot is early morning in New York and evening in India: 08:00 to 09:30 EST is 18:30 to 20:00 IST. When New York moves to EDT, the same New York slot comes an hour earlier for India, 17:30 to 19:00 IST, so a recurring meeting set in New York time shifts on the Indian calendar twice a year.
Abbreviation traps
IST is also Israel Standard Time (UTC+2) and Irish Standard Time (UTC+1, Ireland’s summer clock), and EST is only New York’s winter name. In code, name the zones: Asia/Kolkata and America/New_York. A bare EST in the tz database is fixed at UTC−5, an hour off from New York all summer.
In code
from datetime import datetime
from zoneinfo import ZoneInfo
datetime(2026, 7, 15, 18, 30, tzinfo=ZoneInfo("Asia/Kolkata")).astimezone(ZoneInfo("America/New_York")).isoformat()
# '2026-07-15T09:00:00-04:00'
TZ=America/New_York date -d 'TZ="Asia/Kolkata" 2026-01-15 18:30' # GNU date
# Thu Jan 15 08:00:00 EST 2026
new Date('2026-01-15T13:00:00Z').toLocaleString('en-US', { timeZone: 'America/New_York', timeZoneName: 'short' })
// '1/15/2026, 8:00:00 AM EST'