ToolDeck

Timezone Converter

Convert a date and time between timezones worldwide

UTCUTC+00:00

04/16/2026, 21:56:00

America/New_YorkUTC-04:00

04/16/2026, 17:56:00

What is Timezone Conversion?

A timezone converter translates a date and time from one time zone to another, letting you instantly see what the equivalent time is anywhere in the world. The world is divided into 24 primary time zones, each defined as a fixed offset from Coordinated Universal Time (UTC). When it is 14:00 UTC, it is 09:00 in New York (UTC-5) and 23:00 in Tokyo (UTC+9). Converting between time zones correctly requires knowing the UTC offset of both the source and target zones, and whether daylight saving time (DST) is in effect for either one.

The IANA Time Zone Database (often called the Olson database or tz database) is the standard source of timezone definitions used by operating systems, programming languages, and web browsers. It assigns a canonical identifier to each zone in the format Region/City, such as America/New_York or Asia/Tokyo. Unlike fixed abbreviations like EST or PST, IANA identifiers encode the full history of UTC offset changes and DST transitions for each region, making them the only reliable way to convert time across dates in the past or future.

This timezone converter uses IANA timezone data built into your browser's JavaScript engine via the Intl API. You select a source timezone, enter a date and time, and the tool immediately calculates the equivalent time in your target timezone, including any daylight saving adjustments. Because it runs entirely in your browser, there is no server round-trip and no data leaves your device.

Why Use This Timezone Converter?

Manual timezone math is error-prone, especially when daylight saving time is involved. A city that is UTC-5 in January may be UTC-4 in July, and the transition dates differ between countries. The United States and Europe change their clocks on different Sundays, creating a two-week window where the offset between New York and London differs from the rest of the year. This tool handles all of those transitions automatically using the same IANA database that your operating system uses.

~
Convert Instantly
Select two timezones, enter a time, and see the result immediately. No form submissions, no page reloads. The conversion updates as you type.
~
DST-Aware Results
The converter accounts for daylight saving time transitions automatically. It uses the browser's built-in IANA timezone data, so results reflect the correct offset for any date you enter, past or future.
~
Privacy-First Processing
All conversion happens locally in your browser using the Intl API. No dates, times, or timezone selections are sent to any server.
~
No Account Required
Use the converter without signing up, installing software, or granting permissions. Open the page, convert your time, and close it.

Timezone Converter Use Cases

Scheduling Across Teams
When your team spans New York, Berlin, and Singapore, finding a meeting time that works for everyone requires converting across three or more time zones. Enter a proposed time in your local timezone and see instantly whether the equivalent time in each team member's location falls within their working hours.
API Timestamp Debugging
API responses often include timestamps in UTC or a server-local timezone. Convert those timestamps to your local time to verify that events happened when expected and that time-based logic is correct.
DevOps Incident Timelines
During an incident, log entries may come from servers in different regions. Convert all timestamps to a single reference timezone (usually UTC) to build an accurate timeline of events.
QA Testing Date Logic
Applications that display dates to users in different regions need testing with specific timezone inputs. Use the converter to generate test cases for edge conditions like the DST spring-forward hour.
Data Pipeline Coordination
ETL jobs scheduled in one timezone may need to match the schedule of data sources or downstream consumers in another. Convert scheduled run times to verify that pipeline stages execute in the correct order.
Learning Timezone Concepts
Students learning about UTC offsets, the International Date Line, and daylight saving rules can experiment with different timezone pairs to see how time shifts across regions.

IANA Timezone Reference

The IANA Time Zone Database defines over 400 timezone identifiers, and is updated several times per year to reflect political changes, new DST rules, and historical corrections. The table below lists the most commonly used zones with their standard UTC offsets and DST behavior. Offsets shown are for standard time; the DST column shows the adjusted offset when daylight saving time is active for that region.

IANA IdentifierCommon NameUTC OffsetDST
UTCCoordinated Universal Time+00:00No
America/New_YorkEastern Time (US)-05:00Yes (EDT -04:00)
America/ChicagoCentral Time (US)-06:00Yes (CDT -05:00)
America/DenverMountain Time (US)-07:00Yes (MDT -06:00)
America/Los_AngelesPacific Time (US)-08:00Yes (PDT -07:00)
Europe/LondonGreenwich Mean Time+00:00Yes (BST +01:00)
Europe/BerlinCentral European Time+01:00Yes (CEST +02:00)
Europe/MoscowMoscow Time+03:00No
Asia/DubaiGulf Standard Time+04:00No
Asia/KolkataIndia Standard Time+05:30No
Asia/ShanghaiChina Standard Time+08:00No
Asia/TokyoJapan Standard Time+09:00No
Australia/SydneyAustralian Eastern Time+10:00Yes (AEDT +11:00)
Pacific/AucklandNew Zealand Standard Time+12:00Yes (NZDT +13:00)

Code Examples

Every major programming language provides timezone conversion through the IANA database. The examples below show how to convert a UTC timestamp to other timezones in JavaScript using the Intl API, Python using the zoneinfo module, Go using the time package, and the GNU date command for shell scripts.

JavaScript (Intl API)
// Convert a date from one timezone to another
const date = new Date('2026-03-15T09:00:00Z')

// Format in specific timezone
const nyTime = date.toLocaleString('en-US', { timeZone: 'America/New_York' })
// → "3/15/2026, 5:00:00 AM"

const tokyoTime = date.toLocaleString('en-US', { timeZone: 'Asia/Tokyo' })
// → "3/15/2026, 6:00:00 PM"

// Get the UTC offset for a timezone programmatically
function getUtcOffset(tz: string, date = new Date()) {
  const fmt = new Intl.DateTimeFormat('en-US', {
    timeZone: tz,
    timeZoneName: 'longOffset',
  })
  const parts = fmt.formatToParts(date)
  return parts.find(p => p.type === 'timeZoneName')?.value ?? ''
}
getUtcOffset('Asia/Kolkata') // → "GMT+05:30"
Python (zoneinfo + datetime)
from datetime import datetime
from zoneinfo import ZoneInfo

# Create a timezone-aware datetime
dt = datetime(2026, 3, 15, 9, 0, tzinfo=ZoneInfo('UTC'))

# Convert to New York time
ny = dt.astimezone(ZoneInfo('America/New_York'))
print(ny)  # → 2026-03-15 05:00:00-04:00 (EDT in March)

# Convert to Tokyo time
tokyo = dt.astimezone(ZoneInfo('Asia/Tokyo'))
print(tokyo)  # → 2026-03-15 18:00:00+09:00

# Get current time in any timezone
now_berlin = datetime.now(ZoneInfo('Europe/Berlin'))
print(now_berlin.strftime('%Y-%m-%d %H:%M %Z'))  # → 2026-03-15 10:00 CET
Go
package main

import (
	"fmt"
	"time"
)

func main() {
	utc := time.Date(2026, 3, 15, 9, 0, 0, 0, time.UTC)

	// Load timezone by IANA name
	ny, _ := time.LoadLocation("America/New_York")
	tokyo, _ := time.LoadLocation("Asia/Tokyo")

	fmt.Println(utc.In(ny))    // → 2026-03-15 05:00:00 -0400 EDT
	fmt.Println(utc.In(tokyo)) // → 2026-03-15 18:00:00 +0900 JST

	// Get the UTC offset in seconds
	_, offset := utc.In(ny).Zone()
	fmt.Printf("UTC offset: %+d hours\n", offset/3600) // → UTC offset: -4 hours
}
CLI (GNU date / TZ variable)
# Display current time in a specific timezone
TZ='Asia/Tokyo' date '+%Y-%m-%d %H:%M:%S %Z'
# → 2026-03-15 18:00:00 JST

# Convert a UTC timestamp to another timezone
TZ='America/Los_Angeles' date -d '2026-03-15T09:00:00Z' '+%Y-%m-%d %H:%M %Z'
# → 2026-03-15 02:00 PDT

# List all available IANA timezone names
timedatectl list-timezones | head -20

Frequently Asked Questions

What is the difference between UTC and GMT?
UTC (Coordinated Universal Time) and GMT (Greenwich Mean Time) represent the same time in practice: zero offset from the prime meridian. The difference is technical. UTC is defined by atomic clocks and is the global time standard used in computing. GMT is a timezone name tied to the UK. In code, always use UTC as your reference point, not GMT.
How does daylight saving time affect timezone conversion?
When a region observes DST, its UTC offset shifts by one hour (sometimes 30 or 45 minutes) for part of the year. For example, America/New_York is UTC-5 in winter (EST) and UTC-4 in summer (EDT). If you hardcode an offset instead of using an IANA timezone identifier, your conversions will be wrong for half the year. Always use the full IANA name like America/New_York, not a fixed offset.
Why should I use IANA timezone names instead of abbreviations like EST or PST?
Timezone abbreviations are ambiguous. CST can mean Central Standard Time (UTC-6), China Standard Time (UTC+8), or Cuba Standard Time (UTC-5). IANA identifiers like America/Chicago are globally unique and encode the full history of offset changes and DST rules for that region. The IANA database is maintained by the Internet Assigned Numbers Authority and updated several times per year.
What happens to a time that falls in the DST spring-forward gap?
When clocks spring forward, one hour is skipped. For example, in America/New_York, 2:00 AM jumps directly to 3:00 AM on the second Sunday of March. A time like 2:30 AM does not exist on that date in that timezone. Most programming languages handle this by shifting the time forward to 3:00 AM or throwing an error, depending on the library.
Can I convert times for historical dates accurately?
Yes, if you use IANA timezone identifiers. The IANA database includes historical offset changes going back decades. For example, China used five time zones before 1949 and switched to a single zone (UTC+8) afterward. The database records these transitions, so converting a 1945 timestamp for Asia/Shanghai will use the correct historical offset.
How do I store times in a database to avoid timezone problems?
Store all timestamps in UTC. When displaying a time to a user, convert from UTC to their local timezone at render time. This approach avoids ambiguity: a UTC timestamp has exactly one meaning regardless of where the server or user is located. PostgreSQL's TIMESTAMPTZ type and MySQL's TIMESTAMP type both store values in UTC internally.
Is there a timezone with a 30-minute or 45-minute offset?
Yes. India Standard Time (Asia/Kolkata) is UTC+5:30, Nepal Standard Time (Asia/Kathmandu) is UTC+5:45, and the Chatham Islands (Pacific/Chatham) are UTC+12:45. Iran (Asia/Tehran) uses UTC+3:30. These fractional offsets mean you cannot assume all timezone differences are whole hours when writing conversion logic.