Unix Epoch Converter: Convert Epoch Timestamps

Convert Unix timestamps in seconds, milliseconds, or microseconds to UTC and local RFC 3339, and the reverse from civil date fields. Detection, range checks, and timezone math run in this browser. Nothing is sent over the network.

Epoch timestamp

Unit

Auto uses integer-digit length: 1–10 seconds, 11–13 milliseconds, 14–16 microseconds, 17+ nanoseconds. Override when the magnitude is ambiguous.

Civil date and time

Fields are calendar values, not a timezone-agnostic epoch. Local uses this device’s IANA zone, including DST at that instant.

Enter a Unix timestamp or a date. Conversion stays in this browser.

UTC, local time, and DST

  • The Unix epoch is 1970-01-01T00:00:00Z. POSIX seconds since the Epoch and ECMAScript time values ignore leap seconds: every day is exactly 86,400 seconds of 1,000 milliseconds.
  • An epoch number is timezone-agnostic. UTC (RFC 3339 with Z) is the same on every host. Local RFC 3339 adds this device’s offset at that instant, from IANA timezone data, so DST and historical zone changes can make two instants in the same named zone use different offsets.
  • Date.prototype.getTimezoneOffset() is minutes to add to local time to get UTC (positive when local is behind UTC). It is a function of the instant, not only of “now”.
  • JavaScript Date stores an integer millisecond time value in ±8,640,000,000,000,000 (±100,000,000 days). Outside that range the result is an invalid date (NaN). Years 0–99 are kept as year 0–99 here; they are not mapped to 1900–1999.
  • Signed 32-bit time_t overflows at 2,147,483,647 seconds (2038-01-19T03:14:07Z). This converter is not limited to 32 bits.
  • Spring-forward DST gaps have no local civil time; fall-back overlaps occur twice. Local fields follow host Date rules (earlier offset on overlap). Use UTC when the instant must be unambiguous.