Unix Timestamp Converter

Free epoch converter: turn Unix timestamps (seconds or milliseconds) into readable dates in your time zone and UTC, or convert a date to an epoch timestamp.

Current Unix time 0

Timestamp → date

Date → timestamp

Epoch to date: convert a timestamp

  1. Paste the number into the Timestamp → date box. Spaces, commas and underscores are ignored, so 1,767,225,600 works, and negative or decimal values are accepted.
  2. Leave the unit on Auto-detect or choose seconds, milliseconds, microseconds or nanoseconds yourself. The detected unit is shown under the box.
  3. Read the result in your own time zone, in UTC, as ISO 8601, as an RFC 2822-style date and as a relative time such as “3 days ago”. The ISO and RFC lines have their own Copy buttons.

Now fills in the current time, and the live counter at the top shows the current epoch in seconds and milliseconds.

Date to epoch: get a timestamp from a date

  1. Pick the date and time, down to the second, in the Date → timestamp section.
  2. Say whether that time is Local time (your device’s zone) or UTC. This choice changes the answer by your UTC offset.
  3. Copy the timestamp in seconds or milliseconds, or the ISO 8601 form.

What Unix time is

Unix time, also called epoch time or POSIX time, counts the seconds elapsed since 00:00:00 UTC on 1 January 1970 (the “epoch”). Every day is treated as exactly 86,400 seconds; leap seconds are ignored. Because the count is the same everywhere on Earth at a given instant, databases, logs, APIs and file systems use it to record moments without arguing about time zones. A timestamp only gets a time zone when you turn it into a calendar date.

Seconds, milliseconds, microseconds or nanoseconds?

Different systems count in different units, and the number of digits gives it away. For present-day dates:

UnitDigitsExample for 1 Jan 2026 00:00 UTCTypical source
Seconds101767225600Unix shells, PHP, Python int(time.time()), JWT claims
Milliseconds131767225600000JavaScript Date.now(), Java, many JSON APIs
Microseconds161767225600000000Some databases and tracing tools
Nanoseconds191767225600000000000Go UnixNano(), InfluxDB, high-resolution logs

Auto-detect reads anything below 10¹¹ as seconds, below 10¹⁴ as milliseconds, below 10¹⁷ as microseconds and the rest as nanoseconds. That is right for any date between 1973 and the year 5138. The exception is a millisecond value for a date between late 1966 and early March 1973: it is small enough to look like seconds, so choose the unit by hand for dates that close to 1970. Dates are displayed to the millisecond; finer digits are accepted but not shown.

Worked examples

TimestampUTC date and timeNote
01 Jan 1970, 00:00:00The epoch itself
10000000009 Sep 2001, 01:46:40The first 10-digit timestamp
17672256001 Jan 2026, 00:00:00The tool’s placeholder
-8640031 Dec 1969, 00:00:00Negative values are before 1970
214748364719 Jan 2038, 03:14:07Largest signed 32-bit value

In the other direction: 12:00 on 1 July 2026 entered as UTC gives 1782907200. Entered as local time on a computer set to Seoul (UTC+9), the same clock reading gives 1782874800, exactly 32,400 seconds (nine hours) earlier.

Time zones and daylight saving

One timestamp is one instant, but it reads differently around the world. 1767225600 is 9:00 AM on 1 January 2026 in Seoul and 7:00 PM on 31 December 2025 in New York. If a converted date looks a few hours off, the timestamp is almost always fine and the zone of the display is what differs. Daylight saving time is applied automatically for your zone. To see the same moment in several cities side by side, use the Time Zone Converter.

Converting in code and spreadsheets

  • JavaScript: Math.floor(Date.now() / 1000) for now; new Date(1767225600 * 1000).toISOString() to convert.
  • Python: int(time.time()); datetime.fromtimestamp(1767225600, tz=timezone.utc).
  • PHP: time(); date('c', 1767225600).
  • Shell: date +%s; to convert, date -d @1767225600 on Linux or date -r 1767225600 on macOS.
  • SQL: to_timestamp(1767225600) in PostgreSQL, FROM_UNIXTIME(1767225600) in MySQL.
  • Excel or Google Sheets: =A1/86400+DATE(1970,1,1), then format the cell as a date and time. The result is in UTC.

FAQ

What is the year 2038 problem?

Software that stores Unix time in a signed 32-bit integer can count only to 2,147,483,647, reached at 03:14:07 UTC on 19 January 2038. One second later the value wraps to −2,147,483,648, which reads as 13 December 1901. Current operating systems and languages use 64-bit time, but old embedded devices, file formats and database columns declared as 32-bit integers can still be affected.

Why is my timestamp 13 digits long?

It is in milliseconds. Divide by 1,000 for seconds, or simply paste it here; auto-detect handles it.

Do Unix timestamps include leap seconds?

No. Unix time pretends every day has 86,400 seconds, so leap seconds are simply not counted; operating systems repeat or smear a second instead. For everyday conversions this makes no visible difference.

What range of dates can be converted?

Anything the browser’s date system supports, roughly 271,821 BC to AD 275,760. Values beyond that show an out-of-range message.