Unix Time

Convert Unix timestamps in seconds, milliseconds or microseconds to a readable date and back, in any time zone. Pick a date, choose a format, or jump to now. Both directions update instantly, daylight saving time is applied for the selected zone, and everything runs in your browser.

About this tool

What is Unix time?

Unix time (also called epoch time or POSIX time) is the number of seconds since 00:00:00 UTC on January 1, 1970, not counting leap seconds. Because it is a single number with no time zone, it is how most operating systems, databases and APIs store moments in time. Many languages use other units: JavaScript's Date.now() returns milliseconds, and some databases and Python's datetime work with microseconds. This converter turns a timestamp into a date and time in the time zone you choose, and turns a date back into a timestamp.

How to use

  1. Type a timestamp into Unix time and pick its Unit: Seconds, Milliseconds or Microseconds. The Date time field shows the matching date.
  2. To go the other way, edit Date time directly or click the calendar icon to pick a date and time. Unix time updates as you type.
  3. Change Format to control how the date is shown and parsed. The list button next to it offers presets such as ISO 8601 with offset, US and EU styles, or date only.
  4. Choose a Timezone. You can search by zone name (for example Tokyo), country or dialing code. Switching zones keeps the same moment and shows its local time there.
  5. Click Now to load the current time.

Features

  • Timestamp to date and date to timestamp in one screen
  • Seconds, milliseconds and microseconds; switching the unit converts the value
  • Negative timestamps for dates before 1970
  • Any IANA time zone, with daylight saving time handled automatically
  • Custom date formats using Day.js tokens
  • Clear messages for non-numeric input, dates that do not match the format, and values out of range
  • Your last unit, time zone and format are kept in this browser

Examples

Unix timeUnitDate (UTC)
0Seconds1970-01-01 00:00:00
1700000000Seconds2023-11-14 22:13:20
1700000000000Milliseconds2023-11-14 22:13:20
2147483647Seconds2038-01-19 03:14:07
-86400Seconds1969-12-31 00:00:00

Format tokens

TokenMeaningExample
YYYY MM DDYear, month, day2026 10 03
HH / hh A24-hour / 12-hour hour with AM/PM21 / 09 PM
mm ss SSSMinutes, seconds, milliseconds05 09 123
Z or XXXUTC offset of the selected zone+09:00
[T] or 'T'Literal textT

Changing the format only changes how the same moment is written; it never changes the timestamp.

Getting the current timestamp in code

FAQ

Is my timestamp in seconds or milliseconds?

Count the digits. A present-day timestamp has 10 digits in seconds, 13 in milliseconds and 16 in microseconds. If the date comes out in 1970 or tens of thousands of years in the future, the unit is probably wrong.

Does a Unix timestamp depend on the time zone?

No. The same moment has the same Unix time everywhere. The time zone only affects how the date and time are displayed, which is why changing Timezone leaves Unix time unchanged.

What is the Year 2038 problem?

Systems that store Unix time as a signed 32-bit integer can only count up to 2147483647, which is 2038-01-19 03:14:07 UTC. After that the value overflows. Systems that use 64-bit integers are not affected.

Are leap seconds included?

No. Unix time treats every day as exactly 86,400 seconds, so leap seconds are not counted.