Toolverse

How Timezones Work: UTC, IANA, and DST Explained

7 min read

Scheduling a meeting across New York, London, and Tokyo means juggling three different clocks — and potentially three different dates. Timezone conversion errors cost businesses an estimated $2.1 billion annually in missed meetings and delayed deliverables, according to a 2023 Doodle scheduling report. Understanding how timezones work removes the guesswork.

How Timezones Are Defined

The world is divided into 24 primary timezone offsets from UTC (Coordinated Universal Time), the successor to GMT. UTC itself is maintained by the International Bureau of Weights and Measures (BIPM) using a network of over 400 atomic clocks worldwide.

Each timezone is expressed as an offset from UTC. US Eastern Time is UTC-05:00 in winter and UTC-04:00 during daylight saving time. India Standard Time is UTC+05:30 — one of several zones using a 30-minute offset. Nepal goes further with UTC+05:45, a 45-minute offset.

  • Negative offsets — west of the Prime Meridian (Americas)
  • Positive offsets — east of the Prime Meridian (Europe, Asia, Oceania)
  • Non-integer offsets — India (+5:30), Nepal (+5:45), Chatham Islands (+12:45)

The IANA Timezone Database

Software relies on the IANA Time Zone Database (also called tzdataor the Olson database) to handle timezone conversions. Maintained since 1986, it contains historical timezone data for every region — including political changes, DST rule modifications, and offset adjustments.

IANA identifiers follow the format Area/Location — for example, America/New_York or Asia/Tokyo. The database currently tracks over 590 timezone identifiers. Operating systems, programming languages, and browsers all ship with a copy of this database and update it regularly.

Daylight Saving Time Complications

Roughly 70 countries observe daylight saving time (DST), but the rules vary wildly. The US shifts clocks forward on the second Sunday in March. The EU shifts on the last Sunday in March. Australia shifts in October — their spring, not ours. And countries like Japan, China, and India do not observe DST at all.

This means the offset between two cities can change multiple times per year. London and New York are 5 hours apart most of the year, but only 4 hours apart for several weeks in March when the US shifts before the UK. Any hardcoded offset logic breaks during these transition periods.

Converting Times in JavaScript

Modern browsers include the Intl.DateTimeFormat API, which leverages the system's IANA database for accurate timezone conversions. The key parameter is timeZone:

const formatter = new Intl.DateTimeFormat('en-US', {
  timeZone: 'Asia/Tokyo',
  hour: '2-digit',
  minute: '2-digit',
  hour12: false,
});
// Returns the current time in Tokyo

This approach handles DST transitions automatically — no manual offset tables needed. For server-side JavaScript, libraries like Luxon and date-fns-tz wrap the same IANA data with additional formatting options.

Common Conversion Mistakes

  • Storing local times without timezone info — A timestamp like "2026-04-14 09:00" is ambiguous without knowing the timezone. Always store times in UTC or with an explicit offset.
  • Assuming fixed offsets — Hardcoding "EST is UTC-5" ignores daylight saving. Use IANA identifiers instead of abbreviations.
  • Confusing timezone abbreviations — "CST" could mean Central Standard Time (UTC-6), China Standard Time (UTC+8), or Cuba Standard Time (UTC-5). Abbreviations are not unique.
  • Ignoring date boundaries — When it's 11 PM in New York on Monday, it's already Tuesday in Tokyo. Conversions must account for date changes, not just hour changes.

Key Takeaways

  • Use IANA timezone identifiers (America/New_York) instead of abbreviations (EST) to avoid ambiguity.
  • Never hardcode UTC offsets — DST transitions change them multiple times per year.
  • Store timestamps in UTC and convert to local time only for display.
  • The browser's Intl API handles DST automatically using the IANA database — no external libraries required for basic conversions.

Need to check the time across multiple cities right now? Use our Timezone Converter to convert any date and time between world timezones instantly.

Try it yourself

Put what you learned into practice with our free tool.

Open Tool

Frequently Asked Questions

What is the IANA timezone database?
The IANA Time Zone Database (tzdata) is the authoritative source for timezone rules used by operating systems, browsers, and programming languages. It contains historical and current offset and DST data for over 590 timezone identifiers in Area/Location format like America/New_York.
Why do some timezones have 30 or 45 minute offsets?
India Standard Time is UTC+05:30 and Nepal Standard Time is UTC+05:45. These non-integer offsets exist because countries chose offsets that best matched their geographic longitude or split the difference between neighboring zones for political or practical reasons.
How does JavaScript handle timezone conversions?
Modern browsers include the Intl.DateTimeFormat API which uses the system's IANA database. By passing a timeZone option like 'Asia/Tokyo', the API handles DST transitions automatically without manual offset tables or external libraries.